Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Download

GAP 4.8.9 installation with standard packages -- copy to your CoCalc project to get it

563662 views
1
2
7 Induced constructions
3
4
Before describing general functions for computing induced structures, we
5
consider coproducts of crossed modules which provide induced crossed modules
6
in certain cases.
7
8
9
7.1 Coproducts of crossed modules
10
11
Need to add here a reference (or two) for coproducts.
12
13
7.1-1 CoproductXMod
14
15
CoproductXMod( X1, X2 )  operation
16
17
This function calculates the coproduct crossed module of crossed modules
18
mathcal X_1 = (∂_1 : S_1 -> R) and mathcal X_2 = (∂_2 : S_2 -> R) which have
19
a common range R. The source S_2 of mathcal X_2 acts on S_1 via ∂_2 and the
20
action of mathcal X_1, so we can form a precrossed module (∂' : S_1 ⋉ S_2 ->
21
R) where ∂'(s_1,s_2) = (∂_1 s_1)(∂_2 s_2). The action of this precrossed
22
module is the diagonal action (s_1,s_2)^r = (s_1^r,s_2^r). Factoring out by
23
the Peiffer subgroup, we obtain the coproduct crossed module mathcal X_1 ∘
24
mathcal X_2.
25
26
In the example the structure descriptions of the precrossed module, the
27
Peiffer subgroup, and the resulting coproduct are printed out when
28
InfoLevel(InfoXMod} is at least 1. The coproduct comes supplied with
29
attribute CoproductInfo, which includes the embedding morphisms of the two
30
factors.
31
32
 Example 
33

34
gap> q8 := Group( (1,2,3,4)(5,8,7,6), (1,5,3,7)(2,6,4,8) );;
35
gap> X8 := XModByAutomorphismGroup( q8 );;
36
gap> s4 := Range( X8 );; 
37
gap> SetName( q8, "q8" ); SetName( s4, "s4" ); 
38
gap> k4 := NormalSubgroups( s4 )[3];; SetName( k4, "k4" );
39
gap> Z8 := XModByNormalSubgroup( s4, k4 );;
40
gap> SetName( X8, "X8" ); SetName( Z8, "Z8" ); 
41
gap> SetInfoLevel( InfoXMod, 1 ); 
42
gap> XZ8 := CoproductXMod( X8, Z8 );
43
#I prexmod is [ "C2 x C2 x Q8", "S4" ]
44
#I peiffer subgroup is C2
45
#I the coproduct is [ "C2 x C2 x C2 x C2", "S4" ]
46
[Group( [ f1, f2, f3, f4 ] )->s4]
47
gap> SetName( XZ8, "XZ8" ); 
48
gap> info := CoproductInfo( XZ8 );
49
rec( embeddings := [ [X8 => XZ8], [Z8 => XZ8] ], xmods := [ X8, Z8 ] )
50

51

52
53
54
7.2 Induced crossed modules
55
56
7.2-1 InducedXMod
57
58
InducedXMod( args )  function
59
InducedCat1( args )  function
60
IsInducedXMod( xmod )  property
61
MorphismOfInducedXMod( xmod )  attribute
62
63
A morphism of crossed modules (σ, ρ) : mathcal X_1 -> mathcal X_2 factors
64
uniquely through an induced crossed module ρ_∗ mathcal X_1 = (δ : ρ_∗ S_1 ->
65
R_2). Similarly, a morphism of cat1-groups factors through an induced
66
cat1-group. Calculation of induced crossed modules of mathcal X also
67
provides an algebraic means of determining the homotopy 2-type of homotopy
68
pushouts of the classifying space of mathcal X. For more background from
69
algebraic topology see references in [BH78], [BW95], [BW96]. Induced crossed
70
modules and induced cat1-groups also provide the building blocks for
71
constructing pushouts in the categories XMod and Cat1.
72
73
Data for the cases of algebraic interest is provided by a conjugation
74
crossed module mathcal X = (∂ : S -> R) and a homomorphism ι from R to a
75
third group Q. (It is hoped to implement more general cases in due course.)
76
The output from the calculation is a crossed module ι_∗mathcal X = (δ : ι_∗S
77
-> Q) together with a morphism of crossed modules mathcal X -> ι_∗mathcal X.
78
When ι is a surjection with kernel K then ι_∗S = [S,K] (see [BH78]). When ι
79
is an inclusion the induced crossed module may be calculated using a copower
80
construction [BW95] or, in the case when R is normal in Q, as a coproduct of
81
crossed modules ([BW96], but not yet implemented). When ι is neither a
82
surjection nor an inclusion, ι is factored as the composite of the
83
surjection onto the image and the inclusion of the image in Q, and then the
84
composite induced crossed module is constructed. These constructions use
85
Tietze transformation routines in the library file tietze.gi.
86
87
As a first, surjective example, we take for mathcal X the normal inclusion
88
crossed module of a4 in s4, and for ι the surjection from s4 to s3 with
89
kernel k4. The induced crossed module is isomorphic to X3.
90
91
 Example 
92

93
gap> s4gens := GeneratorsOfGroup( s4 );
94
[ (1,2), (2,3), (3,4) ]
95
gap> a4gens := GeneratorsOfGroup( a4 );
96
[ (1,2,3), (2,3,4) ]
97
gap> s3b := Group( (5,6),(6,7) );; SetName( s3b, "s3b" );
98
gap> epi := GroupHomomorphismByImages( s4, s3b, s4gens, [(5,6),(6,7),(5,6)] );;
99
gap> X4 := XModByNormalSubgroup( s4, a4 );;
100
gap> indX4 := SurjectiveInducedXMod( X4, epi );
101
[a4/ker->s3b]
102
gap> Display( indX4 );
103

104
Crossed module [a4/ker->s3b] :- 
105
: Source group a4/ker has generators:
106
 [ (1,3,2), (1,2,3) ]
107
: Range group s3b has generators:
108
 [ (5,6), (6,7) ]
109
: Boundary homomorphism maps source generators to:
110
 [ (5,6,7), (5,7,6) ]
111
: Action homomorphism maps range generators to automorphisms:
112
 (5,6) --> { source gens --> [ (1,2,3), (1,3,2) ] }
113
 (6,7) --> { source gens --> [ (1,2,3), (1,3,2) ] }
114
 These 2 automorphisms generate the group of automorphisms.
115

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

119

120
121
For a second, injective example we take for mathcal X a conjugation crossed
122
module.
123
124
 Example 
125

126
gap> d8 := Subgroup( d16, [ b1^2, b2 ] ); SetName( d8, "d8" ); 
127
Group([ (11,13,15,17)(12,14,16,18), (12,18)(13,17)(14,16) ])
128
gap> c4 := Subgroup( d8, [ b1^2 ] ); SetName( c4, "c4" ); 
129
Group([ (11,13,15,17)(12,14,16,18) ])
130
gap> Y16 := XModByNormalSubgroup( d16, d8 ); 
131
[d8->d16]
132
gap> Y8 := SubXMod( Y16, c4, d8 ); 
133
[c4->d8]
134
gap> inc8 := InclusionMorphism2DimensionalDomains( Y16, Y8 ); 
135
[[c4->d8] => [d8->d16]]
136
gap> incd8 := RangeHom( inc8 );;
137
gap> indY8 := InducedXMod( Y8, incd8 );
138
#I induced group has Size: 16
139
#I factor 2 is abelian with invariants: [ 4, 4 ]
140
i*([c4->d8])
141
gap> morY8 := MorphismOfInducedXMod( indY8 );
142
[[c4->d8] => i*([c4->d8])]
143

144

145
146
For a third example we take the identity mapping on s3c as boundary, and the
147
inclusion of s3c in s4 as ι. The induced group is a general linear group
148
GL(2,3).
149
150
 Example 
151

152
gap> s3c := Subgroup( s4, [ (2,3), (3,4) ] );; 
153
gap> SetName( s3c, "s3c" );
154
gap> indXs3c := InducedXMod( s4, s3c, s3c );
155
#I induced group has Size: 48
156
i*([s3c->s3c])
157
gap> StructureDescription( indXs3c );
158
[ "GL(2,3)", "S4" ]
159

160

161
162
7.2-2 AllInducedXMods
163
164
AllInducedXMods( Q )  operation
165
166
This function calculates all the induced crossed modules InducedXMod( Q, P,
167
M ), where P runs over all conjugacy classes of subgroups of Q and M runs
168
over all non-trivial subgroups of P.
169
170
171