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
<Chapter Label="Mathematical Background and Terminology">
2
<Heading>Mathematical Background and Terminology</Heading>
3
4
In this chapter we will give a brief description of the mathematical
5
notions used in the algorithms implemented in the ANU <C>pq</C> program
6
that are made accessible from &GAP; through this package. For proofs
7
and details we will point to relevant places in the published
8
literature. Also we will try to give some explanation of terminology
9
that may help to use the <Q>low-level</Q> interactive functions described
10
in Section&nbsp;<Ref Sect="Low-level Interactive ANUPQ functions based on menu items of the pq program" Style="Text"/>. However, users who intend to use these functions
11
are strongly advised to acquire a thorough understanding of the
12
algorithms from the quoted literature. There is little or no checking
13
done in these functions and naive use may result in incorrect results.
14
<P/>
15
16
<Section Label="Basic-notions">
17
<Heading>Basic notions</Heading>
18
19
<Subsection><Heading>pc Presentations and Consistency</Heading>
20
For details, see e.g.&nbsp;<Cite Key="NNN98"/>.
21
<P/>
22
23
Every finite <M>p</M>-group <M>G</M> has a presentation of the form:
24
<Display>
25
\{a_1,\dots,a_n \mid a_i^p = v_{ii}, 1 \le i \le n,
26
[a_k, a_j] = v_{jk}, 1 \le j &lt; k \le n \}.
27
</Display>
28
where <M>v_{jk}</M> is a word in the elements <M>a_{k+1},\dots,a_n</M> for
29
<M>1 \le j \leq k \le n</M>.
30
<P/>
31
32
<Index>power-commutator presentation</Index><Index>pc presentation</Index><Index>pcp</Index>
33
<Index>pc generators</Index><Index>collection</Index>
34
This is called a <E>power-commutator</E> presentation (or <E>pc presentation</E>
35
or <E>pcp</E>) of <M>G</M>, generators from such a presentation will be referred
36
to as <E>pc generators</E>. In terms of such pc generators every element of
37
<M>G</M> can be written in a <Q>normal form</Q> <M>a_1^{e_1}\dots a_n^{e_n}</M>
38
with <M>0 \le e_i &lt; p</M>. Moreover any given product of the generators
39
can be brought into such a normal form using the defining relations in
40
the above presentation as rewrite rules. Any such process is called
41
<E>collection</E>. For the discussion of various collection methods see
42
<Cite Key="LGS90"/> and <Cite Key="VL90a"/>.
43
<P/>
44
45
<Index>consistent</Index><Index>confluent rewriting system</Index><Index>confluent</Index>
46
Every <M>p</M>-group of order <M>p^n</M> has such a pcp on <M>n</M> generators and
47
conversely every such presentation defines a <M>p</M>-group. However a
48
<M>p</M>-group defined by a pcp on <M>n</M> generators can be of smaller order
49
<M>p^m</M> with <M>m&lt;n</M>. A pcp on <M>n</M> generators that does in fact define a
50
<M>p</M>-group of order <M>p^n</M> is called <E>consistent</E> in this manual, in
51
line with most of the literature on the algorithms occurring here. A
52
consistent pcp determines a <E>confluent rewriting system</E>
53
(see&nbsp;<Ref BookName="ref" Func="IsConfluent" Style="Text"/> of the &GAP; Reference Manual) for the group
54
it defines and for this reason often (in particular in the &GAP;
55
Reference Manual) such a pcp presentation is also called <E>confluent</E>.
56
<P/>
57
58
Consistency of a pcp is tantamount to the fact that for any given word
59
in the generators any two collections will yield the same normal form.
60
<P/>
61
62
<Index>consistency conditions</Index>
63
Consistency of a pcp can be checked by a finite set of <E>consistency
64
conditions</E>, demanding that collection of the left hand side and of
65
the right hand side of certain equations, starting with subproducts
66
indicated by bracketing, will result in the same normal form. There
67
are 3 types of such equations (that will be referred to in the
68
manual):
69
<Display>
70
\begin{array}{rclrl}
71
(a^n)a &amp;=&amp; a(a^n) &amp;&amp;{\rm (Type 1)} \\
72
(b^n)a &amp;=&amp; b^{(n-1)}(ba), b(a^n) = (ba)a^{(n-1)} &amp;&amp;{\rm (Type 2)} \\
73
c(ba) &amp;=&amp; (cb)a &amp;&amp;{\rm (Type 3)} \\
74
\end{array}
75
</Display>
76
See <Cite Key="VL84"/> for a description of a sufficient set of consistency
77
conditions in the context of the <M>p</M>-quotient algorithm.
78
</Subsection>
79
80
<Subsection><Heading>Exponent-<M>p</M> Central Series and Weighted pc Presentations</Heading>
81
For details, see <Cite Key="NNN98"/>.
82
<P/>
83
84
<Index>exponent-p central series</Index><!-- @exponent-<M>p</M> central series -->
85
The (<E>descending</E> or <E>lower</E>) (<E>exponent-</E>)<E><M>p</M>-central series</E> of an
86
arbitrary group <M>G</M> is defined by
87
<Display>
88
P_0(G) := G, P_i(G) := [G, P_{i-1}(G)] P_{i-1}(G)^p.
89
</Display>
90
For a <M>p</M>-group <M>G</M> this series terminates with the trivial group. <M>G</M>
91
<Index>class</Index><Index>p-class</Index><!-- @<M>p</M>-class -->
92
has <E><M>p</M>-class</E> <M>c</M> if <M>c</M> is the smallest integer such that <M>P_c(G)</M>
93
is the trivial group. In this manual, as well as in much of the
94
literature about the <C>pq</C>- and related algorithms, the <M>p</M>-class is
95
often referred to simply by <E>class</E>.
96
<P/>
97
98
Let the <M>p</M>-group <M>G</M> have a consistent pcp as above. Then the
99
subgroups
100
<Display>
101
\langle1\rangle &lt; {\langle}a_n\rangle &lt; {\langle}a_n, a_{n-1}\rangle
102
&lt; \dots &lt; {\langle}a_n,\dots,a_i\rangle &lt; \dots &lt; G
103
</Display>
104
form a central series of <M>G</M>. If this refines the <M>p</M>-central series,
105
<Index>weight function</Index>
106
we can define the <E>weight function</E> <M>w</M> for the pc generators by
107
<M>w(a_i) = k</M>, if <M>a_i</M> is contained in <M>P_{k-1}(G)</M> but not in
108
<M>P_k(G)</M>.
109
<P/>
110
111
<Index>weighted pcp</Index>
112
The pair of such a weight function and a pcp allowing it, is called a
113
<E>weighted pcp</E>.
114
</Subsection>
115
116
<Subsection><Heading><M>p</M>-Cover, <M>p</M>-Multiplicator</Heading>
117
For details, see <Cite Key="NNN98"/>.
118
<P/>
119
120
<Index>p-covering group</Index><!-- @<M>p</M>-covering group --><Index>p-cover</Index><!-- @<M>p</M>-cover -->
121
<Index>p-multiplicator</Index><!-- @<M>p</M>-multiplicator -->
122
<Index>p-multiplicator rank</Index><!-- @<M>p</M>-multiplicator rank -->
123
<Index>multiplicator rank</Index>
124
Let <M>d</M> be the minimal number of generators of the <M>p</M>-group <M>G</M> of
125
<M>p</M>-class <M>c</M>. Then <M>G</M> is isomorphic to a factor group <M>F/R</M> of a
126
free group <M>F</M> of rank <M>d</M>. We denote <M>[F, R] R^p</M> by <M>R^*</M>. It can
127
be proved (see e.g.&nbsp;<Cite Key="OBr90"/>) that the isomorphism type of <M>G^*
128
:= F/R^*</M> depends only on <M>G</M>. <M>G^*</M> is called the <E><M>p</M>-covering
129
group</E> or <E><M>p</M>-cover</E> of <M>G</M>, and <M>R/R^*</M> the <E><M>p</M>-multiplicator</E> of
130
<M>G</M>. The <M>p</M>-multiplicator is, of course, an elementary abelian
131
<M>p</M>-group; its minimal number of generators is called the
132
<E>(<M>p</M>-)multiplicator rank</E>.
133
</Subsection>
134
135
<Subsection><Heading>Descendants, Capable, Terminal, Nucleus</Heading>
136
For details, see <Cite Key="New77"/> and <Cite Key="OBr90"/>.
137
<P/>
138
139
<Index>descendant</Index><Index>immediate descendant</Index><Index>nucleus</Index>
140
<Index>capable</Index><Index>terminal</Index>
141
Let again <M>G</M> be a <M>p</M>-group of <M>p</M>-class <M>c</M> and <M>d</M> the minimal
142
number of generators of <M>G</M>. A <M>p</M>-group <M>H</M> is a <E>descendant</E> of <M>G</M>
143
if the minimal number of generators of <M>H</M> is <M>d</M> and <M>H/P_c(H)</M> is
144
isomorphic to <M>G</M>. A descendant <M>H</M> of <M>G</M> is an <E>immediate
145
descendant</E> if it has <M>p</M>-class <M>c+1</M>. <M>G</M> is called <E>capable</E> if it
146
has immediate descendants; otherwise it is <E>terminal</E>.
147
<P/>
148
149
Let <M>G^* = F/R^*</M> again be the <M>p</M>-cover of <M>G</M>. Then the group
150
<M>P_c(G^*)</M> is called the <E>nucleus</E> of <M>G</M>. Note that <M>P_c(G^*)</M> is
151
contained in the <M>p</M>-multiplicator <M>R/R^*</M>.
152
<P/>
153
154
<Index>nucleus</Index><Index>allowable subgroup</Index>
155
It is proved (e.g.&nbsp;in <Cite Key="OBr90"/>) that the immediate descendants of
156
<M>G</M> are obtained as factor groups of the <M>p</M>-cover by (proper)
157
supplements of the nucleus in the (elementary abelian)
158
<M>p</M>-multiplicator. These are also called <E>allowable</E>.
159
<P/>
160
161
<Index>extended automorphism</Index><Index>permutations</Index>
162
It is further proved there that every automorphism <M>\alpha</M> of <M>F/R</M>
163
extends to an automorphism <M>\alpha^*</M> of the <M>p</M>-cover <M>F/R^*</M> and
164
that the restriction of <M>\alpha^*</M> to the multiplicator <M>R/R^*</M> is
165
uniquely determined by <M>\alpha</M>. Each <E>extended automorphism</E>
166
<M>\alpha^*</M> induces a permutation of the allowable subgroups. Thus the
167
extended automorphisms determine a group <M>P</M> of <E>permutations</E> on the
168
set <M>A</M> of allowable subgroups (The group <M>P</M> of permutations will
169
appear in the description of some interactive functions). Choosing a
170
representative <M>S</M> from each orbit of <M>P</M> on <M>A</M>, the set of factor
171
groups <M>F/S</M> contains each (isomorphism type of) immediate descendant
172
of <M>G</M> exactly once. For each immediate descendant, the procedure of
173
computing the <M>p</M>-cover, extending the automorphisms and computing the
174
orbits on allowable subgroups can be repeated. Iteration of this
175
procedure can in principle be used to determine all descendants of a
176
<M>p</M>-group.
177
</Subsection>
178
179
<Subsection><Heading>Laws</Heading>
180
<Index>law</Index><Index>identical relation</Index><Index>exponent law</Index>
181
<Index>metabelian law</Index><Index>Engel identity</Index><!-- @Engel identity -->
182
Let <M>l(x_1, \dots, x_n)</M> be a word in the free generators <M>x_1, \dots,
183
x_n</M> of a free group of rank <M>n</M>. Then <M>l(x_1, \dots, x_n) = 1</M> is
184
called a <E>law</E> or <E>identical relation</E> in a group <M>G</M> if <M>l(g_1,
185
\dots, g_n) = 1</M> for any choice of elements <M>g_1, \dots, g_n</M> in <M>G</M>.
186
In particular, <M>x^e = 1</M> is called an <E>exponent law</E>, <M>[[x,y],[u,v]] =
187
1</M> the <E>metabelian law</E>, and <M>[\dots [[x_1,x_2],x_2],\dots, x_2] = 1</M>
188
an <E>Engel identity</E>.
189
</Subsection>
190
191
</Section>
192
193
194
<Section Label="The p-quotient Algorithm">
195
<Heading>The p-quotient Algorithm</Heading>
196
197
For details, see <Cite Key="HN80"/>, <Cite Key="NO96"/> and <Cite Key="VL84"/>. Other
198
descriptions of the algorithm are given in <Cite Key="Sims94"/>.
199
<P/>
200
201
The <C>pq</C> algorithm successively determines the factor groups of the
202
groups of the <M>p</M>-central series of a finitely presented (fp) group
203
<M>G</M>. If a bound <M>b</M> for the <M>p</M>-class is given, the algorithm will
204
determine those factor groups up to at most <M>p</M>-class <M>b</M>. If the
205
<M>p</M>-central series terminates with a subgroup <M>P_k(G)</M> with <M>k &lt; b</M>,
206
the algorithm will stop with that group. If no such bound is given, it
207
will try to find the biggest such factor group.
208
<P/>
209
210
<M>G/P_1(G)</M> is the largest elementary abelian <M>p</M>-factor group of <M>G</M>
211
and this can be found from the relation matrix of <M>G</M> using matrix
212
diagonalisation modulo <M>p</M>. So it suffices to explain how
213
<M>G/P_{i+1}(G)</M> is found from <M>G</M> and <M>G/P_i(G)</M> for some <M>i \ge 1</M>.
214
<P/>
215
216
This is done, in principle, in two steps: first the <M>p</M>-cover
217
of <M>G_i := G/P_i(G)</M> is determined (which depends only on
218
<M>G_i</M>, not on <M>G</M>) and then <M>G/P_{i+1}(G)</M> as a factor group of this
219
<M>p</M>-cover.
220
221
<Subsection><Heading>Finding the <M>p</M>-cover</Heading>
222
A very detailed description of the first step is given in <Cite Key="NNN98"/>,
223
from which we just extract some passages in order to point to some
224
terms occurring in this manual.
225
<P/>
226
227
<Index>labelled pcp</Index><Index>definition<Subkey>of generator</Subkey></Index>
228
Let <M>H</M> be a <M>p</M>-group and <M>p^{d(b)}</M> be the order of <M>H/P_b(H)</M>. So
229
<M>d := d(1)</M> is the minimal number of generators of <M>H</M>. A weighted pcp
230
of <M>H</M> will be called <E>labelled</E> if for each generator <M>a_k</M>, <M>k > d</M>
231
one relation, having this generator as its right hand side, is marked
232
as <E>definition</E> of this generator.
233
<P/>
234
235
As described in <Cite Key="NNN98"/>, a weighted labelled pcp of a <M>p</M>-group
236
can be obtained stepping down its <M>p</M>-central series.
237
<P/>
238
239
So let us assume that a weighted labelled pcp of <M>G_i</M> is given. A
240
straightforward way of of writing down a (not necessarily consistent)
241
pcp for its <M>p</M>-cover is to add generators, one for each relation
242
which is not a definition, and modify the right hand side of each such
243
relation by multiplying it on the right by one of the new generators
244
-- a different generator for each such relation. Further relations are
245
then added to make the new generators central and of order <M>p</M>. This
246
procedure is called <E>adding tails</E>. A more formal description of it is
247
again given in <Cite Key="NNN98"/>.
248
<P/>
249
250
<Index>tails</Index>
251
It is important to realise that the <Q>new</Q> generators will generate
252
an elementary abelian group, that is, in additive notation, a vector
253
space over the field of <M>p</M> elements. As said, the pcp of the
254
<M>p</M>-cover obtained in this way need not be consistent. Since the pcp
255
of <M>G_i</M> was consistent, applying the consistency conditions to the
256
pcp of the <M>p</M>-cover, in case the presentation obtained for <M>p</M>-cover
257
is not consistent, will produce a set of equations between the new
258
generators, that, written additively, are linear equations over the
259
field of <M>p</M> elements and can hence be used to remove redundant
260
generators until a consistent pcp is obtained.
261
<P/>
262
263
In reality, to follow this straightforward procedure would be
264
forbiddingly inefficient except for very small examples. There are
265
many ways of a priori reducing the number of <Q>new generators</Q> to be
266
introduced, using e.g.&nbsp;the weights attached to the generators, and the
267
main part of <Cite Key="NNN98"/> is devoted to a detailed discussion with
268
proofs of these possibilities.
269
</Subsection>
270
271
<Subsection><Heading>Imposing the Relations of the fp Group</Heading>
272
In order to obtain <M>G/P_{i+1}(G)</M> from the pcp of the <M>p</M>-cover of
273
<M>G_i = G/P_i(G)</M>, the defining relations from the original
274
presentation of <M>G</M> must be imposed. Since <M>G_i</M> is a homomorphic
275
image of <M>G</M>, these relations again yield relations between the <Q>new
276
generators</Q> in the presentation of the <M>p</M>-cover of <M>G_i</M>.
277
</Subsection>
278
279
<Subsection><Heading>Imposing Laws</Heading>
280
While we have so far only considered the computation of the factor
281
groups of a given fp group by the groups of its descending <M>p</M>-central
282
series, the <M>p</M>-quotient algorithm allows a very important variant of
283
this idea: laws can be prescribed that should be fulfilled by the
284
<M>p</M>-factor groups computed by the algorithm. The key observation here
285
is the fact that at each step down the descending <M>p</M>-central series
286
it suffices to impose these laws only for a finite number of words.
287
Again for efficiency of the method it is crucial to keep the number of
288
such words small, and much of <Cite Key="NO96"/> and the literature quoted in
289
this paper is devoted to this problem.
290
<P/>
291
292
<Index>exponent check</Index>
293
In this form, starting with a free group and imposing an exponent law
294
(also referred to as an <E>exponent check</E>) the <C>pq</C> program has, in
295
fact, found its most noted application in the determination of
296
(restricted) Burnside groups (as reported in e.g.&nbsp;<Cite Key="HN80"/>,
297
<Cite Key="NO96"/> and <Cite Key="VL90b"/>).
298
<P/>
299
300
Via a &GAP; program using the <Q>local</Q> interactive functions of the
301
<C>pq</C> program made available through this interface also arbitrary laws
302
can be imposed via the option <C>Identities</C>
303
(see&nbsp;<Ref Label="option Identities" Style="Text"/>).
304
</Subsection>
305
306
</Section>
307
308
309
<Section Label="The p-group generation Algorithm, Standard Presentation, Isomorphism Testing">
310
<Heading>The p-group generation Algorithm, Standard Presentation,
311
Isomorphism Testing</Heading>
312
313
For details, see <Cite Key="New77"/> and <Cite Key="OBr90"/>.
314
<P/>
315
316
<Index>p-group generation</Index><!-- @<M>p</M>-group generation --><Index>orbits</Index>
317
The <M>p</M>-group generation algorithm determines the immediate
318
descendants of a given <M>p</M>-group <M>G</M> up to isomorphism. From what has
319
been explained in Section&nbsp;<Ref Sect="Basic-notions" Style="Text"/>, it is clear that this
320
amounts to the construction of the <M>p</M>-cover, the extension of the
321
automorphisms of <M>G</M> to the <M>p</M>-cover and the determination of
322
representatives of the orbits of the action of these automorphisms on
323
the set of supplements of the nucleus in the <M>p</M>-multiplicator.
324
<P/>
325
326
The main practical problem here is the determination of these
327
representatives. <Cite Key="OBr90"/> describes methods for this and the <C>pq</C>
328
program allows choices according to whether space or time limitations
329
must be met.
330
<P/>
331
332
As well as the descendants of <M>G</M>, the <C>pq</C> program determines their
333
automorphism groups from that of <M>G</M> (see&nbsp;<Cite Key="OBr95"/>), which is
334
important for an iteration of the process; this has been used by
335
Eamonn O'Brien, e.g.&nbsp;in the classification of the <M>2</M>-groups that are
336
now also part of the <E>Small Groups</E> library available through &GAP;.
337
<P/>
338
339
<Index>standard presentation</Index><Index>echelonised matrix</Index>
340
<Index>label of standard matrix</Index>
341
A variant of the <M>p</M>-group generation algorithm is also used to define
342
a <E>standard presentation</E> of a given <M>p</M>-group. This is done by
343
constructing an isomorphic copy of the given group through a chain of
344
descendants and at each step making a choice of a particular
345
representative for the respective orbit of capable groups. In a fairly
346
delicate process, subgroups of the <M>p</M>-multiplicator are represented
347
by <E>echelonised matrices</E> and a first among the <E>labels for standard
348
matrices</E> is chosen (this is described in detail in <Cite Key="OBr94"/>).
349
<P/>
350
351
<Index>isomorphism testing</Index><Index>compaction</Index>
352
Finally, the standard presentation provides a way of testing if two
353
given <M>p</M>-groups are isomorphic: the standard presentations of the
354
groups are computed, for practical purposes <E>compacted</E> and the
355
results compared for being identical, i.e.&nbsp;the groups are isomorphic
356
if and only if their standard presentations are identical.
357
358
</Section>
359
</Chapter>
360
361
362