CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

| Download

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

Views: 418346
1
<!-- ------------------------------------------------------------------- -->
2
<!-- -->
3
<!-- gp2ind.xml XMod documentation Chris Wensley -->
4
<!-- & Murat Alp -->
5
<!-- Copyright (C) 2001-2017, Chris Wensley et al, -->
6
<!-- School of Computer Science, Bangor University, U.K. -->
7
<!-- -->
8
<!-- ------------------------------------------------------------------- -->
9
10
<?xml version="1.0" encoding="UTF-8"?>
11
12
<Chapter Label="chap-gp2ind">
13
<Heading>Induced constructions</Heading>
14
15
Before describing general functions for computing induced structures,
16
we consider coproducts of crossed modules which provide induced
17
crossed modules in certain cases.
18
19
20
<Section><Heading>Coproducts of crossed modules</Heading>
21
22
Need to add here a reference (or two) for coproducts.
23
24
<ManSection>
25
<Oper Name="CoproductXMod"
26
Arg="X1, X2" />
27
<Description>
28
This function calculates the coproduct crossed module of
29
crossed modules <M>{\mathcal X}_1 = (\partial_1 : S_1 \to R)</M>
30
and <M>{\mathcal X}_2 = (\partial_2 : S_2 \to R)</M>
31
which have a common range <M>R</M>.
32
The source <M>S_2</M> of <M>{\mathcal X}_2</M> acts on <M>S_1</M>
33
via <M>\partial_2</M> and the action of <M>{\mathcal X}_1</M>,
34
so we can form a precrossed module
35
<M>(\partial' : S_1 \ltimes S_2 \to R)</M>
36
where <M>\partial'(s_1,s_2) = (\partial_1 s_1)(\partial_2 s_2)</M>.
37
The action of this precrossed module is the diagonal action
38
<M>(s_1,s_2)^r = (s_1^r,s_2^r)</M>.
39
Factoring out by the Peiffer subgroup, we obtain the coproduct
40
crossed module <M>{\mathcal X}_1 \circ {\mathcal X}_2</M>.
41
<P/>
42
In the example the structure descriptions of the precrossed module,
43
the Peiffer subgroup, and the resulting coproduct are printed out
44
when <C>InfoLevel(InfoXMod}</C> is at least <M>1</M>.
45
The coproduct comes supplied with attribute <C>CoproductInfo</C>,
46
which includes the embedding morphisms of the two factors.
47
</Description>
48
</ManSection>
49
<P/>
50
<Example>
51
<![CDATA[
52
gap> q8 := Group( (1,2,3,4)(5,8,7,6), (1,5,3,7)(2,6,4,8) );;
53
gap> X8 := XModByAutomorphismGroup( q8 );;
54
gap> s4 := Range( X8 );;
55
gap> SetName( q8, "q8" ); SetName( s4, "s4" );
56
gap> k4 := NormalSubgroups( s4 )[3];; SetName( k4, "k4" );
57
gap> Z8 := XModByNormalSubgroup( s4, k4 );;
58
gap> SetName( X8, "X8" ); SetName( Z8, "Z8" );
59
gap> SetInfoLevel( InfoXMod, 1 );
60
gap> XZ8 := CoproductXMod( X8, Z8 );
61
#I prexmod is [ "C2 x C2 x Q8", "S4" ]
62
#I peiffer subgroup is C2
63
#I the coproduct is [ "C2 x C2 x C2 x C2", "S4" ]
64
[Group( [ f1, f2, f3, f4 ] )->s4]
65
gap> SetName( XZ8, "XZ8" );
66
gap> info := CoproductInfo( XZ8 );
67
rec( embeddings := [ [X8 => XZ8], [Z8 => XZ8] ], xmods := [ X8, Z8 ] )
68
]]>
69
</Example>
70
71
</Section>
72
73
74
<Section><Heading>Induced crossed modules</Heading>
75
<Index>induced crossed module</Index>
76
77
<ManSection>
78
<Func Name="InducedXMod"
79
Arg="args" />
80
<Func Name="InducedCat1"
81
Arg="args" />
82
<Prop Name="IsInducedXMod"
83
Arg="xmod" />
84
<Attr Name="MorphismOfInducedXMod"
85
Arg="xmod" />
86
<Description>
87
A morphism of crossed modules
88
<M>(\sigma, \rho) : {\mathcal X}_1 \to {\mathcal X}_2</M>
89
factors uniquely through an induced crossed module
90
<M>\rho_{\ast} {\mathcal X}_1 = (\delta : \rho_{\ast} S_1 \to R_2)</M>.
91
Similarly, a morphism of cat1-groups factors through an induced cat1-group.
92
Calculation of induced crossed modules of <M>{\mathcal X}</M> also
93
provides an algebraic means of determining the homotopy <M>2</M>-type
94
of homotopy pushouts of the classifying space of <M>{\mathcal X}</M>.
95
For more background from algebraic topology see references in
96
<Cite Key="BH1" />, <Cite Key="BW1" />, <Cite Key="BW2" />.
97
Induced crossed modules and induced cat1-groups also provide the
98
building blocks for constructing pushouts in the categories
99
<E>XMod</E> and <E>Cat1</E>.
100
<P/>
101
Data for the cases of algebraic interest is provided by a conjugation
102
crossed module <M>{\mathcal X} = (\partial : S \to R)</M>
103
and a homomorphism <M>\iota</M> from <M>R</M> to a third group <M>Q</M>.
104
(It is hoped to implement more general cases in due course.)
105
The output from the calculation is a crossed module
106
<M>\iota_{\ast}{\mathcal X} = (\delta : \iota_{\ast}S \to Q)</M>
107
together with a morphism of crossed modules
108
<M>{\mathcal X} \to \iota_{\ast}{\mathcal X}</M>.
109
When <M>\iota</M> is a surjection with kernel <M>K</M> then
110
<M>\iota_{\ast}S = [S,K]</M> (see <Cite Key="BH1" />).
111
When <M>\iota</M> is an inclusion the induced crossed module may be
112
calculated using a copower construction <Cite Key="BW1" /> or,
113
in the case when <M>R</M> is normal in <M>Q</M>,
114
as a coproduct of crossed modules
115
(<Cite Key="BW2" />, but not yet implemented).
116
When <M>\iota</M> is neither a surjection nor an inclusion, <M>\iota</M>
117
is factored as the composite of the surjection onto the image
118
and the inclusion of the image in <M>Q</M>, and then the composite induced
119
crossed module is constructed.
120
These constructions use Tietze transformation routines in
121
the library file <C>tietze.gi</C>.
122
<P/>
123
As a first, surjective example, we take for <M>{\mathcal X}</M>
124
the normal inclusion crossed module of <C>a4</C> in <C>s4</C>,
125
and for <M>\iota</M> the surjection from <C>s4</C> to <C>s3</C>
126
with kernel <C>k4</C>.
127
The induced crossed module is isomorphic to <C>X3</C>.
128
</Description>
129
</ManSection>
130
<P/>
131
<Example>
132
<![CDATA[
133
gap> s4gens := GeneratorsOfGroup( s4 );
134
[ (1,2), (2,3), (3,4) ]
135
gap> a4gens := GeneratorsOfGroup( a4 );
136
[ (1,2,3), (2,3,4) ]
137
gap> s3b := Group( (5,6),(6,7) );; SetName( s3b, "s3b" );
138
gap> epi := GroupHomomorphismByImages( s4, s3b, s4gens, [(5,6),(6,7),(5,6)] );;
139
gap> X4 := XModByNormalSubgroup( s4, a4 );;
140
gap> indX4 := SurjectiveInducedXMod( X4, epi );
141
[a4/ker->s3b]
142
gap> Display( indX4 );
143
144
Crossed module [a4/ker->s3b] :-
145
: Source group a4/ker has generators:
146
[ (1,3,2), (1,2,3) ]
147
: Range group s3b has generators:
148
[ (5,6), (6,7) ]
149
: Boundary homomorphism maps source generators to:
150
[ (5,6,7), (5,7,6) ]
151
: Action homomorphism maps range generators to automorphisms:
152
(5,6) --> { source gens --> [ (1,2,3), (1,3,2) ] }
153
(6,7) --> { source gens --> [ (1,2,3), (1,3,2) ] }
154
These 2 automorphisms generate the group of automorphisms.
155
156
gap> morX4 := MorphismOfInducedXMod( indX4 );
157
[[a4->s4] => [a4/ker->s3b]]
158
]]>
159
</Example>
160
161
For a second, injective example we take for <M>{\mathcal X}</M>
162
a conjugation crossed module.
163
<P/>
164
<Example>
165
<![CDATA[
166
gap> d8 := Subgroup( d16, [ b1^2, b2 ] ); SetName( d8, "d8" );
167
Group([ (11,13,15,17)(12,14,16,18), (12,18)(13,17)(14,16) ])
168
gap> c4 := Subgroup( d8, [ b1^2 ] ); SetName( c4, "c4" );
169
Group([ (11,13,15,17)(12,14,16,18) ])
170
gap> Y16 := XModByNormalSubgroup( d16, d8 );
171
[d8->d16]
172
gap> Y8 := SubXMod( Y16, c4, d8 );
173
[c4->d8]
174
gap> inc8 := InclusionMorphism2DimensionalDomains( Y16, Y8 );
175
[[c4->d8] => [d8->d16]]
176
gap> incd8 := RangeHom( inc8 );;
177
gap> indY8 := InducedXMod( Y8, incd8 );
178
#I induced group has Size: 16
179
#I factor 2 is abelian with invariants: [ 4, 4 ]
180
i*([c4->d8])
181
gap> morY8 := MorphismOfInducedXMod( indY8 );
182
[[c4->d8] => i*([c4->d8])]
183
]]>
184
</Example>
185
186
For a third example we take the identity mapping on <C>s3c</C> as boundary,
187
and the inclusion of <C>s3c</C> in <C>s4</C> as <M>\iota</M>.
188
The induced group is a general linear group <C>GL(2,3)</C>.
189
<P/>
190
<Example>
191
<![CDATA[
192
gap> s3c := Subgroup( s4, [ (2,3), (3,4) ] );;
193
gap> SetName( s3c, "s3c" );
194
gap> indXs3c := InducedXMod( s4, s3c, s3c );
195
#I induced group has Size: 48
196
i*([s3c->s3c])
197
gap> StructureDescription( indXs3c );
198
[ "GL(2,3)", "S4" ]
199
]]>
200
</Example>
201
202
<ManSection>
203
<Oper Name="AllInducedXMods"
204
Arg="Q" />
205
<Description>
206
This function calculates all the induced crossed modules
207
<C>InducedXMod( Q, P, M )</C>,
208
where <C>P</C> runs over all conjugacy classes of subgroups of <C>Q</C>
209
and <C>M</C> runs over all non-trivial subgroups of <C>P</C>.
210
</Description>
211
</ManSection>
212
213
</Section>
214
215
</Chapter>
216
217