<!-- ------------------------------------------------------------------- --> <!-- --> <!-- gp2act.xml XMod documentation Chris Wensley --> <!-- & Murat Alp --> <!-- Copyright (C) 1996-2024, Chris Wensley et al, --> <!-- --> <!-- ------------------------------------------------------------------- -->
<?xmlversion="1.0"encoding="UTF-8"?>
<Chapter Label="chap-gp2act">
<Heading>Actors of 2d-groups</Heading>
<Section><Heading>Actor of a crossed module</Heading>
<Index>actor</Index>
The <E>actor</E> of <M>\calX</M> is a crossed module
<M>\Act(\calX) =
(\Delta : \calW(\calX) \to \Aut(\calX))</M>
which was shown by Lue and Norrie, in <Cite Key="N2" />
and <Cite Key="N1" /> to give the automorphism object
of a crossed module <M>\calX</M>.
In this implementation, the source of the actor is a permutation
representation <M>W</M> of the Whitehead group of regular derivations,
and the range of the actor is a permutation representation <M>A</M>
of the automorphism group <M>\Aut(\calX)</M> of <M>\calX</M>.
<ManSection>
<Attr Name="AutomorphismPermGroup"
Arg="2d-gp" />
<Attr Name="GeneratingAutomorphisms"
Arg="2d-gp" />
<Oper Name="PermAutomorphismAs2dGroupMorphism"
Arg="2d-gp perm" />
<Description>
The automorphisms <M>( \sigma, \rho )</M> of <M>\calX</M> form a group
<M>\Aut(\calX)</M> of crossed module isomorphisms.
The function <Ref Attr="AutomorphismPermGroup"/> finds a set of
<Ref Attr="GeneratingAutomorphisms"/> for <M>\Aut(\calX)</M>,
and then constructs a permutation representation of this group,
which is used as the range of the actor crossed module of <M>\calX</M>.
The individual automorphisms can be constructed from the permutation group
using the function <Ref Oper="PermAutomorphismAs2dGroupMorphism"/>.
The example below uses the crossed module <Code>X3=[c3->s3]</Code>
constructed in section <Ref Sect="DerivationByImages" />.
</Description>
</ManSection>
<P/>
<Example>
<![CDATA[
gap> APX3 := AutomorphismPermGroup( X3 );
Group([ (5,7,6), (1,2)(3,4)(6,7) ])
gap> Size( APX3 );
6
gap> genX3 := GeneratingAutomorphisms( X3 );
[ [[c3->s3] => [c3->s3]], [[c3->s3] => [c3->s3]] ]
gap> e6 := Elements( APX3 )[6];
(1,2)(3,4)(5,7)
gap> m6 := PermAutomorphismAs2dGroupMorphism( X3, e6 );;
gap> Display( m6 );
Morphism of crossed modules :-
: Source = [c3->s3] with generating sets:
[ (1,2,3)(4,6,5) ]
[ (4,5,6), (2,3)(5,6) ]
: Range = Source
: Source Homomorphism maps source generators to:
[ (1,3,2)(4,5,6) ]
: Range Homomorphism maps range generators to:
[ (4,6,5), (2,3)(4,5) ]
]]>
</Example>
The automorphisms <M>( \gamma, \rho )</M> of a cat<M>^1</M>-group
<M>\calC</M> form a group <M>\Aut(\calC)</M> of cat<M>^1</M>-group
isomorphisms.
The function <Ref Attr="AutomorphismPermGroup"/> constructs a permutation
representation of this group, which is used as the range of the
actor crossed module of <M>\calC</M>.
The individual automorphisms can be constructed from the permutation group
using the function <Ref Oper="PermAutomorphismAs2dGroupMorphism"/>.
The example below uses the cat<M>^1</M>-group <Code>C3</Code>
constructed in section <Ref Oper="DerivationByImages" />.
<P/>
<Example>
<![CDATA[
gap> APC3 := AutomorphismPermGroup( C3 );
Group([ (1,3,2)(4,6,5)(7,9,8)(12,13,14), (2,3)(4,7)(5,9)(6,8)(10,11)(13,14) ])
gap> IdGroup( APC3 );
[ 6, 1 ]
gap> a := GeneratorsOfGroup( APC3 )[1];;
gap> m := PermAutomorphismAs2dGroupMorphism( C3, a );
[[g18 => s3] => [g18 => s3]]
]]>
</Example>
<ManSection>
<Attr Name="WhiteheadXMod"
Arg="xmod" />
<Attr Name="LueXMod"
Arg="xmod" />
<Attr Name="NorrieXMod"
Arg="xmod" />
<Attr Name="ActorXMod"
Arg="xmod" />
<Description>
An automorphism <M>( \sigma, \rho )</M> of <M>\calX</M>
acts on the Whitehead monoid by
<M>\chi^{(\sigma,\rho)} = \sigma \circ \chi \circ \rho^{-1}</M>,
and this determines the action for the actor.
In fact the four groups <M>S, W, R, A</M>, the homomorphisms between them,
and the various actions,
give five crossed modules forming a <E>crossed square</E>
(see <Ref Func="ActorCrossedSquare" />).
<Index>crossed square</Index>
<List>
<Item>
<M>\calW(\calX) = (\eta : S \to W),~</M>
the Whitehead crossed module of <M>\calX</M>, at the top,
</Item>
<Item>
<M>\calX = (\partial : S \to R),~</M>
the initial crossed module, on the left,
</Item>
<Item>
<M>\Act(\calX) = ( \Delta : W \to A),~</M>
the actor crossed module of <M>\calX</M>, on the right,
</Item>
<Item>
<M>\calN(X) = (\alpha : R \to A),~</M>
the Norrie crossed module of <M>\calX</M>, on the bottom, and
</Item>
<Item>
<M>\calL(\calX)
= (\Delta\circ\eta = \alpha\circ\partial : S \to A),~</M>
the Lue crossed module of <M>\calX</M>,
along the top-left to bottom-right diagonal.
</Item>
</List>
</Description>
</ManSection>
<P/>
<Example>
<![CDATA[
gap> WGX3 := WhiteheadPermGroup( X3 );
Group([ (1,2,3), (1,2) ])
gap> APX3 := AutomorphismPermGroup( X3 );
Group([ (5,7,6), (1,2)(3,4)(6,7) ])
gap> WX3 := WhiteheadXMod( X3 );;
gap> Display( WX3 );
Crossed module Whitehead[c3->s3] :-
: Source group has generators:
[ (1,2,3)(4,6,5) ]
: Range group has generators:
[ (1,2,3), (1,2) ]
: Boundary homomorphism maps source generators to:
[ (1,2,3) ]
: Action homomorphism maps range generators to automorphisms:
(1,2,3) --> { source gens --> [ (1,2,3)(4,6,5) ] }
(1,2) --> { source gens --> [ (1,3,2)(4,5,6) ] }
These 2 automorphisms generate the group of automorphisms.
gap> LX3 := LueXMod( X3 );;
gap> Display( LX3 );
Crossed module Lue[c3->s3] :-
: Source group has generators:
[ (1,2,3)(4,6,5) ]
: Range group has generators:
[ (5,7,6), (1,2)(3,4)(6,7) ]
: Boundary homomorphism maps source generators to:
[ (5,7,6) ]
: Action homomorphism maps range generators to automorphisms:
(5,7,6) --> { source gens --> [ (1,2,3)(4,6,5) ] }
(1,2)(3,4)(6,7) --> { source gens --> [ (1,3,2)(4,5,6) ] }
These 2 automorphisms generate the group of automorphisms.
gap> NX3 := NorrieXMod( X3 );;
gap> Display( NX3 );
Crossed module Norrie[c3->s3] :-
: Source group has generators:
[ (4,5,6), (2,3)(5,6) ]
: Range group has generators:
[ (5,7,6), (1,2)(3,4)(6,7) ]
: Boundary homomorphism maps source generators to:
[ (5,6,7), (1,2)(3,4)(6,7) ]
: Action homomorphism maps range generators to automorphisms:
(5,7,6) --> { source gens --> [ (4,5,6), (2,3)(4,5) ] }
(1,2)(3,4)(6,7) --> { source gens --> [ (4,6,5), (2,3)(5,6) ] }
These 2 automorphisms generate the group of automorphisms.
gap> AX3 := ActorXMod( X3 );;
gap> Display( AX3);
Crossed module Actor[c3->s3] :-
: Source group has generators:
[ (1,2,3), (1,2) ]
: Range group has generators:
[ (5,7,6), (1,2)(3,4)(6,7) ]
: Boundary homomorphism maps source generators to:
[ (5,7,6), (1,2)(3,4)(6,7) ]
: Action homomorphism maps range generators to automorphisms:
(5,7,6) --> { source gens --> [ (1,2,3), (2,3) ] }
(1,2)(3,4)(6,7) --> { source gens --> [ (1,3,2), (1,2) ] }
These 2 automorphisms generate the group of automorphisms.
]]>
</Example>
The main methods for these operations are written for
permutation crossed modules.
For other crossed modules an isomorphism to a permutation crossed module
is found first, and then the main method is applied to the image.
In the example the crossed module <C>XAq8</C>
is the automorphism crossed module of the quaternion group.
<Example>
<![CDATA[
gap> q8 := Group( (1,2,3,4)(5,8,7,6), (1,5,3,7)(2,6,4,8) );;
gap> SetName( q8, "q8" );
gap> XAq8 := XModByAutomorphismGroup( q8 );;
gap> StructureDescription( WhiteheadXMod( XAq8 ) );
[ "Q8", "C2 x C2 x C2" ]
gap> StructureDescription( LueXMod( XAq8 ) );
[ "Q8", "S4" ]
gap> StructureDescription( NorrieXMod( XAq8 ) );
[ "S4", "S4" ]
gap> StructureDescription( ActorXMod( XAq8 ) );
[ "C2 x C2 x C2", "S4" ]
]]>
</Example>
<ManSection>
<Attr Name="XModCentre"
Arg="xmod" />
<Attr Name="InnerActorXMod"
Arg="xmod" />
<Attr Name="InnerMorphism"
Arg="xmod" />
<Description>
Pairs of boundaries or identity mappings
provide six morphisms of crossed modules.
In particular, the boundaries of <M>\calW(\calX)</M>
and <M>\calN(\calX)</M>
form the <E>inner morphism</E> of <M>\calX</M>,
mapping source elements to principal derivations
and range elements to inner automorphisms.
The image of <M>\calX</M> under this morphism is the
<E>inner actor</E> of <M>\calX</M>,
while the kernel is the <E>centre</E> of <M>\calX</M>.
In the example which follows, the inner morphism of
<Code>X3=(c3->s3)</Code>, from Chapter <Ref Chap="chap-gp2up" />,
is an inclusion of crossed modules.
<P/>
Note that we appear to have defined <E>two</E> sorts of <E>centre</E>
for a crossed module: <Ref Attr="XModCentre"/> here,
and <Ref Func="CentreXMod" /> in the chapter on isoclinism.
We suspect that these two definitions give the same answer,
but this remains to be resolved.
</Description>
</ManSection>
<P/>
<Example>
<![CDATA[
gap> IMX3 := InnerMorphism( X3 );;
gap> Display( IMX3 );
Morphism of crossed modules :-
: Source = [c3->s3] with generating sets:
[ (1,2,3)(4,6,5) ]
[ (4,5,6), (2,3)(5,6) ]
: Range = Actor[c3->s3] with generating sets:
[ (1,2,3), (1,2) ]
[ (5,7,6), (1,2)(3,4)(6,7) ]
: Source Homomorphism maps source generators to:
[ (1,2,3) ]
: Range Homomorphism maps range generators to:
[ (5,6,7), (1,2)(3,4)(6,7) ]
gap> IsInjective( IMX3 );
true
gap> ZX3 := XModCentre( X3 );
[Group( () )->Group( () )]
gap> IAX3 := InnerActorXMod( X3 );;
gap> Display( IAX3 );
Crossed module InnerActor[c3->s3] :-
: Source group has generators:
[ (1,2,3) ]
: Range group has generators:
[ (5,6,7), (1,2)(3,4)(6,7) ]
: Boundary homomorphism maps source generators to:
[ (5,7,6) ]
: Action homomorphism maps range generators to automorphisms:
(5,6,7) --> { source gens --> [ (1,2,3) ] }
(1,2)(3,4)(6,7) --> { source gens --> [ (1,3,2) ] }
These 2 automorphisms generate the group of automorphisms.
]]>
</Example>
</Section>
<Section><Heading>Actor of a cat<M>^1</M>-group</Heading>
<ManSection>
<Attr Name="ActorCat1Group"
Arg="cat1" />
<Func Name="InnerActorCat1Group"
Arg="cat1" />
<Description>
The actor of a cat<M>^1</M>-group <M>C</M> is obtained by converting
<M>C</M> to a crossed module; forming the actor of that crossed module;
and then converting that actor into a cat<M>^1</M>-group.
<P/>
A similar procedure is followed for the inner actor.
</Description>
</ManSection>
<P/>
<Example>
<![CDATA[
gap> C3;
[g18 => s3]
gap> AC3 := ActorCat1Group( C3 );
cat1(Actor[c3->s3])
gap> Display( AC3 );
Cat1-group cat1(Actor[c3->s3]) :-
: Source group has generators:
[ ( 9,10), ( 8, 9,10), ( 5, 7, 6)( 8, 9,10), (1,2)(3,4)(6,7)(8,9) ]
: Range group has generators:
[ (5,7,6), (1,2)(3,4)(6,7) ]
: tail homomorphism maps source generators to:
[ (), (), (5,7,6), (1,2)(3,4)(6,7) ]
: head homomorphism maps source generators to:
[ (1,2)(3,4)(5,6), (5,7,6), (5,7,6), (1,2)(3,4)(6,7) ]
: range embedding maps range generators to:
[ ( 5, 7, 6)( 8, 9,10), (1,2)(3,4)(6,7)(8,9) ]
: kernel has generators:
[ ( 9,10), ( 8, 9,10) ]
: boundary homomorphism maps generators of kernel to:
[ (1,2)(3,4)(5,6), (5,7,6) ]
: kernel embedding maps generators of kernel to:
[ ( 9,10), ( 8, 9,10) ]
: associated crossed module is Actor[c3->s3]
gap> StructureDescription( AC3 );
[ "S3 x S3", "S3" ]
gap> IAC3 := InnerActorCat1Group( C3 );
cat1(InnerActor[c3->s3])
gap> StructureDescription( IAC3 );
[ "(C3 x C3) : C2", "S3" ]
]]>
</Example>
<ManSection>
<Func Name="Actor"
Arg="args" />
<Func Name="InnerActor"
Arg="args" />
<Description>
The global functions <C>Actor</C> and <C>InnerActor</C>
will call operations <C>ActorXMod</C> and <C>InnerActorXMod</C>
or <C>ActorCat1Group</C> and <C>InnerActorCat1Group</C>
as appropriate.
</Description>
</ManSection>
<P/>
<Example>
<![CDATA[
gap> c4q := Subgroup( q8, [ (1,2,3,4)(5,8,7,6) ] );;
gap> SetName( c4q, "c4q" );
gap> Xc4q := XModByNormalSubgroup( q8, c4q );;
gap> AXc4q := Actor( Xc4q );
Actor[c4q->q8]
gap> StructureDescription( AXc4q );
[ "D8", "D8" ]
gap> IAXc4q := InnerActor( Xc4q );
InnerActor[c4q->q8]
gap> StructureDescription( IAXc4q );
[ "C2", "C2 x C2" ]
]]>
</Example>
</Section>
</Chapter>
¤ Dauer der Verarbeitung: 0.11 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.