Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Bib Ind

### 7 Induced constructions

Before describing general functions for computing induced structures, we consider coproducts of crossed modules which provide induced crossed modules in certain cases.

#### 7.1 Coproducts of crossed modules

Need to add here a reference (or two) for coproducts.

##### 7.1-1 CoproductXMod
 ‣ CoproductXMod( X1, X2 ) ( operation )
 ‣ CoproductInfo( X0 ) ( attribute )

This function calculates the coproduct crossed module of two or more crossed modules which have a common range $$R$$. The standard method applies to $$\calX_1 = (\partial_1 : S_1 \to R)$$ and $$\calX_2 = (\partial_2 : S_2 \to R)$$. See below for the case of three or more crossed modules.

The source $$S_2$$ of $$\calX_2$$ acts on $$S_1$$ via $$\partial_2$$ and the action of $$\calX_1$$, so we can form a precrossed module $$(\partial' : S_1 \ltimes S_2 \to R)$$ where $$\partial'(s_1,s_2) = (\partial_1 s_1)(\partial_2 s_2)$$. The action of this precrossed module is the diagonal action $$(s_1,s_2)^r = (s_1^r,s_2^r)$$. Factoring out by the Peiffer subgroup, we obtain the coproduct crossed module $$\calX_1 \circ \calX_2$$.

In the example the structure descriptions of the precrossed module, the Peiffer subgroup, and the resulting coproduct are printed out when InfoLevel(InfoXMod) is at least $$1$$. The coproduct comes supplied with attribute CoproductInfo, which includes the embedding morphisms of the two factors.


gap> q8 := Group( (1,2,3,4)(5,8,7,6), (1,5,3,7)(2,6,4,8) );;
gap> XAq8 := XModByAutomorphismGroup( q8 );;
gap> s4b := Range( XAq8 );;
gap> SetName( q8, "q8" );  SetName( s4b, "s4b" );
gap> a := q8.1;;  b := q8.2;;
gap> alpha := GroupHomomorphismByImages( q8, q8, [a,b], [a^-1,b] );;
gap> beta := GroupHomomorphismByImages( q8, q8, [a,b], [a,b^-1] );;
gap> k4b := Subgroup( s4b, [ alpha, beta ] );;  SetName( k4b, "k4b" );
gap> Z8 := XModByNormalSubgroup( s4b, k4b );;
gap> SetName( XAq8, "XAq8" );  SetName( Z8, "Z8" );
gap> SetInfoLevel( InfoXMod, 1 );
gap> XZ8 := CoproductXMod( XAq8, Z8 );
#I  prexmod is [ [ 32, 47 ], [ 24, 12 ] ]
#I  peiffer subgroup is C2, [ 2, 1 ]
#I  the coproduct is [ "C2 x C2 x C2 x C2", "S4" ], [ [ 16, 14 ], [ 24, 12 ] ]
[Group( [ f1, f2, f3, f4 ] )->s4b]
gap> SetName( XZ8, "XZ8" );
gap> info := CoproductInfo( XZ8 );
rec( embeddings := [ [XAq8 => XZ8], [Z8 => XZ8] ], xmods := [ XAq8, Z8 ] )
gap> SetInfoLevel( InfoXMod, 0 );



Given a list of more than two crossed modules with a common range $$R$$, then an iterated coproduct is formed:

$\bigcirc~\left[ \calX_1,\calX_2,\ldots,\calX_n\right] ~=~ \calX_1 \circ (\calX_2 \circ ( \ldots (\calX_{n-1} \circ \calX_n) \ldots ) ).$

The embeddings field of the CoproductInfo of the resulting crossed module $$\calY$$ contains the $$n$$ morphisms $$\epsilon_i : \calX_i \to \calY (1 \leqslant i \leqslant n)$$.


gap> Y := CoproductXMod( [ XAq8, XAq8, Z8, Z8 ] );
[Group( [ f1, f2, f3, f4, f5, f6, f7, f8 ] )->s4b]
gap> StructureDescription( Y );
[ "C2 x C2 x C2 x C2 x C2 x C2 x C2 x C2", "S4" ]
gap> CoproductInfo( Y );
rec(
embeddings :=
[ [XAq8 => [Group( [ f1, f2, f3, f4, f5, f6, f7, f8 ] ) -> s4b]],
[XAq8 => [Group( [ f1, f2, f3, f4, f5, f6, f7, f8 ] ) -> s4b]],
[Z8 => [Group( [ f1, f2, f3, f4, f5, f6, f7, f8 ] ) -> s4b]],
[Z8 => [Group( [ f1, f2, f3, f4, f5, f6, f7, f8 ] ) -> s4b]] ],
xmods := [ XAq8, XAq8, Z8, Z8 ] )



#### 7.2 Induced crossed modules

##### 7.2-1 InducedXMod
 ‣ InducedXMod( args ) ( function )
 ‣ IsInducedXMod( xmod ) ( property )
 ‣ InducedXModBySurjection( xmod, hom ) ( operation )
 ‣ InducedXModByCopower( xmod, hom, list ) ( operation )
 ‣ MorphismOfInducedXMod( xmod ) ( attribute )

A morphism of crossed modules $$(\sigma, \rho) : \calX_1 \to \calX_2$$ factors uniquely through an induced crossed module $$\rho_{\ast} \calX_1 = (\delta : \rho_{\ast} S_1 \to R_2)$$. Similarly, a morphism of cat1-groups factors through an induced cat1-group. Calculation of induced crossed modules of $$\calX$$ also provides an algebraic means of determining the homotopy $$2$$-type of homotopy pushouts of the classifying space of $$\calX$$. For more background from algebraic topology see references in [BH78], [BW95], [BW96]. Induced crossed modules and induced cat1-groups also provide the building blocks for constructing pushouts in the categories XMod and Cat1.

Data for the cases of algebraic interest is provided by a crossed module $$\calX = (\partial : S \to R)$$ and a homomorphism $$\iota : R \to Q$$. The output from the calculation is a crossed module $$\iota_{\ast}\calX = (\delta : \iota_{\ast}S \to Q)$$ together with a morphism of crossed modules $$\calX \to \iota_{\ast}\calX$$. When $$\iota$$ is a surjection with kernel $$K$$ then $$\iota_{\ast}S = S/[K,S]$$ where $$[K,S]$$ is the subgroup of $$S$$ generated by elements of the form $$s^{-1}s^k, s \in S, k \in K$$ (see [BH78], Prop.9). (For many years, up until June 2018, this manual has stated the result to be $$[K,S]$$, though the correct quotient had been calculated.) When $$\iota$$ is an inclusion the induced crossed module may be calculated using a copower construction [BW95] or, in the case when $$R$$ is normal in $$Q$$, as a coproduct of crossed modules ([BW96], but not yet implemented). When $$\iota$$ is neither a surjection nor an inclusion, $$\iota$$ is factored as the composite of the surjection onto the image and the inclusion of the image in $$Q$$, and then the composite induced crossed module is constructed. These constructions use Tietze transformation routines in the library file tietze.gi.

As a first, surjective example, we take for $$\calX$$ the normal inclusion crossed module of a4 in s4, and for $$\iota$$ the surjection from s4 to s3 with kernel k4. The induced crossed module is isomorphic to X3 = [c3->s3].


gap> s4gens := GeneratorsOfGroup( s4 );
[ (1,2), (2,3), (3,4) ]
gap> a4gens := GeneratorsOfGroup( a4 );
[ (1,2,3), (2,3,4) ]
gap> s3b := Group( (5,6),(6,7) );;  SetName( s3b, "s3b" );
gap> epi := GroupHomomorphismByImages( s4, s3b, s4gens, [(5,6),(6,7),(5,6)] );;
gap> X4 := XModByNormalSubgroup( s4, a4 );;
gap> indX4 := InducedXModBySurjection( X4, epi );
[a4/ker->s3b]
gap> Display( indX4 );

Crossed module [a4/ker->s3b] :-
: Source group a4/ker has generators:
[ (1,3,2), (1,2,3) ]
: Range group s3b has generators:
[ (5,6), (6,7) ]
: Boundary homomorphism maps source generators to:
[ (5,6,7), (5,7,6) ]
: Action homomorphism maps range generators to automorphisms:
(5,6) --> { source gens --> [ (1,2,3), (1,3,2) ] }
(6,7) --> { source gens --> [ (1,2,3), (1,3,2) ] }
These 2 automorphisms generate the group of automorphisms.

gap> morX4 := MorphismOfInducedXMod( indX4 );
[[a4->s4] => [a4/ker->s3b]]



For a second, injective example we take for $$\calX$$ the automorphism crossed module XAq8 of CoproductXMod (7.1-1), and for $$\iota$$ an inclusion of s4b in s5. The resulting source group is SL(2,5).


gap> iso4 := IsomorphismGroups( s4b, s4 );;
gap> s5 := Group( (1,2,3,4,5), (4,5) );;
gap> SetName( s5, "s5" );
gap> inc45 := InclusionMappingGroups( s5, s4 );;
gap> iota45 := iso4 * inc45;;
gap> indXAq8 := InducedXMod( XAq8, iota45 );
i*(XAq8)
gap> Size2d( indXAq8 );
[ 120, 120 ]
gap> StructureDescription( indXAq8 );
[ "SL(2,5)", "S5" ]



For a third example we use the version InducedXMod(Q,R,S) of this global function, with $$Q \geqslant R \unrhd S$$. We take the identity mapping on s3c as boundary, and the inclusion of s3c in s4 as $$\iota$$. The induced group is a general linear group GL(2,3).


gap> s3c := Subgroup( s4, [ (2,3), (3,4) ] );;
gap> SetName( s3c, "s3c" );
gap> indXs3c := InducedXMod( s4, s3c, s3c );
i*([s3c->s3c])
gap> StructureDescription( indXs3c );
[ "GL(2,3)", "S4" ]



##### 7.2-2 AllInducedXMods
 ‣ AllInducedXMods( Q ) ( operation )

This function calculates all the induced crossed modules InducedXMod(Q,R,S), where R runs over all conjugacy classes of subgroups of Q and S runs over all non-trivial normal subgroups of R.


gap> all := AllInducedXMods( q8 );;
gap> ids := List( all, x -> IdGroup(x) );;
gap> Sort( ids );
gap> ids;
[ [ [ 1, 1 ], [ 8, 4 ] ], [ [ 1, 1 ], [ 8, 4 ] ], [ [ 1, 1 ], [ 8, 4 ] ],
[ [ 1, 1 ], [ 8, 4 ] ], [ [ 4, 2 ], [ 8, 4 ] ], [ [ 4, 2 ], [ 8, 4 ] ],
[ [ 4, 2 ], [ 8, 4 ] ], [ [ 16, 2 ], [ 8, 4 ] ], [ [ 16, 2 ], [ 8, 4 ] ],
[ [ 16, 2 ], [ 8, 4 ] ], [ [ 16, 14 ], [ 8, 4 ] ] ]



#### 7.3 Induced cat$$^1$$-groups

##### 7.3-1 InducedCat1Group
 ‣ InducedCat1Group( args ) ( function )
 ‣ InducedCat1GroupByFreeProduct( grp, hom ) ( property )

This area awaits development.

Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Bib Ind

generated by GAPDoc2HTML