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
5 Derivations and Sections
3
4
5
5.1 Whitehead Multiplication
6
7
5.1-1 IsDerivation
8
9
IsDerivation( map )  property
10
IsSection( map )  property
11
IsUp2DimensionalMapping( map )  property
12
13
The Whitehead monoid Der(mathcalX) of mathcalX was defined in [Whi48] to be
14
the monoid of all derivations from R to S, that is the set of all maps χ : R
15
-> S, with Whitehead multiplication ⋆ (on the right) satisfying:
16
17
18
{\bf Der\ 1}: \chi(qr) ~=~ (\chi q)^{r} \; (\chi r), \qquad {\bf Der\ 2}:
19
(\chi_1 \star \chi_2)(r) ~=~ (\chi_2 r)(\chi_1 r)(\chi_2 \partial \chi_1 r).
20
21

22
23
The zero map is the identity for this composition. Invertible elements in
24
the monoid are called regular. The Whitehead group of mathcalX is the group
25
of regular derivations in Der(mathcalX ). In the next chapter the actor of
26
mathcalX is defined as a crossed module whose source and range are
27
permutation representations of the Whitehead group and the automorphism
28
group of mathcalX.
29
30
The construction for cat1-groups equivalent to the derivation of a crossed
31
module is the section. The monoid of sections of mathcalC = (e;t,h : G -> R)
32
is the set of group homomorphisms ξ : R -> G, with Whitehead multiplication
33
⋆ (on the right) satisfying:
34
35
36
{\bf Sect\ 1}: t \circ \xi ~=~ {\rm id}_R, \quad {\bf Sect\ 2}: (\xi_1 \star
37
\xi_2)(r) ~=~ (\xi_1 r)(e h \xi_1 r)^{-1}(\xi_2 h \xi_1 r) ~=~ (\xi_2 h
38
\xi_1 r)(e h \xi_1 r)^{-1}(\xi_1 r).
39
40

41
42
The embedding e is the identity for this composition, and h(ξ_1 ⋆ ξ_2) = (h
43
ξ_1)(h ξ_2). A section is regular when h ξ is an automorphism, and the group
44
of regular sections is isomorphic to the Whitehead group.
45
46
If ϵ denotes the inclusion of S = ker t in G then ∂ = h ϵ : S -> R and
47
48
49
\xi r ~=~ (e r)(e \chi r), \quad\mbox{which equals}\quad (r, \chi r) ~\in~ R
50
\ltimes S,
51
52

53
54
determines a section ξ of mathcalC in terms of the corresponding derivation
55
χ of mathcalX, and conversely.
56
57
5.1-2 DerivationByImages
58
59
DerivationByImages( X0, ims )  operation
60
61
Derivations are stored like group homomorphisms by specifying the images of
62
a generating set. Images of the remaining elements may then be obtained
63
using axiom Der 1. The function IsDerivation is automatically called to
64
check that this procedure is well-defined.
65
66
In the following example a cat1-group C3 and the associated crossed module
67
X3 are constructed, where X3 is isomorphic to the inclusion of the normal
68
cyclic group c3 in the symmetric group s3.
69
70
 Example 
71

72
gap> g18 := Group( (1,2,3), (4,5,6), (2,3)(5,6) );;
73
gap> SetName( g18, "g18" );
74
gap> gen18 := GeneratorsOfGroup( g18 );;
75
gap> g1 := gen18[1];; g2 := gen18[2];; g3 := gen18[3];;
76
gap> s3 := Subgroup( g18, gen18{[2..3]} );;
77
gap> SetName( s3, "s3" );;
78
gap> t := GroupHomomorphismByImages( g18, s3, gen18, [g2,g2,g3] );;
79
gap> h := GroupHomomorphismByImages( g18, s3, gen18, [(),g2,g3] );;
80
gap> e := GroupHomomorphismByImages( s3, g18, [g2,g3], [g2,g3] );;
81
gap> C3 := Cat1( t, h, e );
82
[g18=>s3]
83
gap> SetName( Kernel(t), "c3" );;
84
gap> X3 := XModOfCat1( C3 );;
85
gap> Display( X3 );
86
Crossed module [c3->s3] :- 
87
: Source group has generators:
88
 [ (1,2,3)(4,6,5) ]
89
: Range group has generators:
90
 [ (4,5,6), (2,3)(5,6) ]
91
: Boundary homomorphism maps source generators to:
92
 [ (4,6,5) ]
93
: Action homomorphism maps range generators to automorphisms:
94
 (4,5,6) --> { source gens --> [ (1,2,3)(4,6,5) ] }
95
 (2,3)(5,6) --> { source gens --> [ (1,3,2)(4,5,6) ] }
96
 These 2 automorphisms generate the group of automorphisms.
97
: associated cat1-group is [g18=>s3]
98

99
gap> imchi := [ (1,2,3)(4,6,5), (1,2,3)(4,6,5) ];;
100
gap> chi := DerivationByImages( X3, imchi );
101
DerivationByImages( s3, c3, [ (4,5,6), (2,3)(5,6) ],
102
[ (1,2,3)(4,6,5), (1,2,3)(4,6,5) ] )
103

104

105
106
5.1-3 SectionByImages
107
108
SectionByImages( C, ims )  operation
109
SectionByDerivation( chi )  operation
110
DerivationBySection( xi )  operation
111
112
Sections are group homomorphisms, so do not need a special representation.
113
Operations SectionByDerivation and DerivationBySection convert derivations
114
to sections, and vice-versa, calling Cat1OfXMod and XModOfCat1
115
automatically.
116
117
Two strategies for calculating derivations and sections are implemented, see
118
[AW00]. The default method for AllDerivations is to search for all possible
119
sets of images using a backtracking procedure, and when all the derivations
120
are found it is not known which are regular. In early versions of this
121
package, the default method for AllSections( <C> ) was to compute all
122
endomorphisms on the range group R of C as possibilities for the composite h
123
ξ. A backtrack method then found possible images for such a section. In the
124
current version the derivations of the associated crossed module are
125
calculated, and these are all converted to sections using
126
SectionByDerivation.
127
128
 Example 
129

130
gap> xi := SectionByDerivation( chi );
131
SectionByImages( s3, g18, [ (4,5,6), (2,3)(5,6) ], [ (1,2,3), (1,2)(4,6) ] )
132

133

134
135
136
5.2 Whitehead Groups and Monoids
137
138
5.2-1 RegularDerivations
139
140
RegularDerivations( X0 )  attribute
141
AllDerivations( X0 )  attribute
142
RegularSections( C0 )  attribute
143
AllSections( C0 )  attribute
144
ImagesList( obj )  attribute
145
ImagesTable( obj )  attribute
146
147
There are two functions to determine the elements of the Whitehead group and
148
the Whitehead monoid of a crossed module, namely RegularDerivations and
149
AllDerivations. (The functions RegularSections and AllSections perform
150
corresponding tasks for a cat1-group.)
151
152
Using our example X3 we find that there are just nine derivations. (In fact,
153
six of them regular, as we shall see in the next section. The associated
154
group is isomorphic to the symmetric group s3.)
155
156
 Example 
157

158
gap> all3 := AllDerivations( X3 );;
159
gap> imall3 := ImagesList( all3 );; 
160
gap> PrintListOneItemPerLine( imall3 );
161
[ [ (), () ],
162
 [ (), (1,3,2)(4,5,6) ],
163
 [ (), (1,2,3)(4,6,5) ],
164
 [ (1,3,2)(4,5,6), () ],
165
 [ (1,3,2)(4,5,6), (1,3,2)(4,5,6) ],
166
 [ (1,3,2)(4,5,6), (1,2,3)(4,6,5) ],
167
 [ (1,2,3)(4,6,5), () ],
168
 [ (1,2,3)(4,6,5), (1,3,2)(4,5,6) ],
169
 [ (1,2,3)(4,6,5), (1,2,3)(4,6,5) ]
170
 ]
171
gap> KnownAttributesOfObject( all3 );
172
[ "Object2d", "ImagesList", "AllOrRegular", "ImagesTable" ]
173
gap> PrintListOneItemPerLine( ImagesTable( all3 ) );
174
[ [ 1, 1, 1, 1, 1, 1 ],
175
 [ 1, 1, 1, 3, 3, 3 ],
176
 [ 1, 1, 1, 2, 2, 2 ],
177
 [ 1, 3, 2, 1, 3, 2 ],
178
 [ 1, 3, 2, 3, 2, 1 ],
179
 [ 1, 3, 2, 2, 1, 3 ],
180
 [ 1, 2, 3, 1, 2, 3 ],
181
 [ 1, 2, 3, 3, 1, 2 ],
182
 [ 1, 2, 3, 2, 3, 1 ]
183
 ]
184

185

186
187
5.2-2 CompositeDerivation
188
189
CompositeDerivation( chi1, chi2 )  operation
190
UpImagePositions( chi )  attribute
191
UpGeneratorImages( chi )  attribute
192
CompositeSection( xi1, xi2 )  operation
193
194
The Whitehead product χ_1 ⋆ χ_2 is implemented as
195
CompositeDerivation(<chi1>,<chi2>). The composite of two sections is just
196
the composite of homomorphisms.
197
198
 Example 
199

200
gap> reg3 := RegularDerivations( X3 );;
201
gap> imder3 := ImagesList( reg3 );; Length( imder3 );
202
6
203
gap> chi4 := DerivationByImages( X3, imder3[4] );
204
DerivationByImages( s3, c3, [ (4,5,6), (2,3)(5,6) ], [ (1,3,2)(4,5,6), () ] )
205
gap> chi5 := DerivationByImages( X3, imder3[5] );
206
DerivationByImages( s3, c3, [ (4,5,6), (2,3)(5,6) ], 
207
[ (1,3,2)(4,5,6), (1,3,2)(4,5,6) ] )
208
gap> im4 := UpImagePositions( chi4 );
209
[ 1, 3, 2, 1, 3, 2 ]
210
gap> im5 := UpImagePositions( chi5 );
211
[ 1, 3, 2, 3, 2, 1 ]
212
gap> chi45 := chi4 * chi5;
213
DerivationByImages( s3, c3, [ (4,5,6), (2,3)(5,6) ], [ (), (1,3,2)(4,5,6) ] )
214
gap> im45 := UpImagePositions( chi45 );
215
[ 1, 1, 1, 3, 3, 3 ]
216
gap> Position( imder3, UpGeneratorImages( chi45 ) );
217
2
218

219

220
221
5.2-3 WhiteheadGroupTable
222
223
WhiteheadGroupTable( X0 )  attribute
224
WhiteheadMonoidTable( X0 )  attribute
225
WhiteheadPermGroup( X0 )  attribute
226
WhiteheadTransMonoid( X0 )  attribute
227
228
Multiplication tables for the Whitehead group or monoid enable the
229
construction of permutation or transformation representations.
230
231
 Example 
232

233
gap> wgt3 := WhiteheadGroupTable( X3 );; 
234
gap> PrintListOneItemPerLine( wgt3 );
235
[ [ 1, 2, 3, 4, 5, 6 ],
236
 [ 2, 3, 1, 5, 6, 4 ],
237
 [ 3, 1, 2, 6, 4, 5 ],
238
 [ 4, 6, 5, 1, 3, 2 ],
239
 [ 5, 4, 6, 2, 1, 3 ],
240
 [ 6, 5, 4, 3, 2, 1 ]
241
 ]
242
gap> wpg3 := WhiteheadPermGroup( X3 );
243
Group([ (1,2,3)(4,5,6), (1,4)(2,6)(3,5) ])
244
gap> wmt3 := WhiteheadMonoidTable( X3 );; 
245
gap> PrintListOneItemPerLine( wmt3 );
246
[ [ 1, 2, 3, 4, 5, 6, 7, 8, 9 ],
247
 [ 2, 3, 1, 5, 6, 4, 8, 9, 7 ],
248
 [ 3, 1, 2, 6, 4, 5, 9, 7, 8 ],
249
 [ 4, 6, 5, 1, 3, 2, 7, 9, 8 ],
250
 [ 5, 4, 6, 2, 1, 3, 8, 7, 9 ],
251
 [ 6, 5, 4, 3, 2, 1, 9, 8, 7 ],
252
 [ 7, 7, 7, 7, 7, 7, 7, 7, 7 ],
253
 [ 8, 8, 8, 8, 8, 8, 8, 8, 8 ],
254
 [ 9, 9, 9, 9, 9, 9, 9, 9, 9 ]
255
 ]
256
gap> wtm3 := WhiteheadTransMonoid( X3 );
257
<transformation monoid on 9 pts with 3 generators>
258
gap> GeneratorsOfMonoid( wtm3 ); 
259
[ Transformation( [ 2, 3, 1, 5, 6, 4, 8, 9, 7 ] ), 
260
 Transformation( [ 4, 6, 5, 1, 3, 2, 7, 9, 8 ] ), 
261
 Transformation( [ 7, 7, 7, 7, 7, 7, 7, 7, 7 ] ) ]
262

263

264
265
266