Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
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
Project: cocalc-sagemath-dev-slelievre
Views: 418346<Chapter Label="Mathematical Background and Terminology">1<Heading>Mathematical Background and Terminology</Heading>23In this chapter we will give a brief description of the mathematical4notions used in the algorithms implemented in the ANU <C>pq</C> program5that are made accessible from &GAP; through this package. For proofs6and details we will point to relevant places in the published7literature. Also we will try to give some explanation of terminology8that may help to use the <Q>low-level</Q> interactive functions described9in Section <Ref Sect="Low-level Interactive ANUPQ functions based on menu items of the pq program" Style="Text"/>. However, users who intend to use these functions10are strongly advised to acquire a thorough understanding of the11algorithms from the quoted literature. There is little or no checking12done in these functions and naive use may result in incorrect results.13<P/>1415<Section Label="Basic-notions">16<Heading>Basic notions</Heading>1718<Subsection><Heading>pc Presentations and Consistency</Heading>19For details, see e.g. <Cite Key="NNN98"/>.20<P/>2122Every finite <M>p</M>-group <M>G</M> has a presentation of the form:23<Display>24\{a_1,\dots,a_n \mid a_i^p = v_{ii}, 1 \le i \le n,25[a_k, a_j] = v_{jk}, 1 \le j < k \le n \}.26</Display>27where <M>v_{jk}</M> is a word in the elements <M>a_{k+1},\dots,a_n</M> for28<M>1 \le j \leq k \le n</M>.29<P/>3031<Index>power-commutator presentation</Index><Index>pc presentation</Index><Index>pcp</Index>32<Index>pc generators</Index><Index>collection</Index>33This is called a <E>power-commutator</E> presentation (or <E>pc presentation</E>34or <E>pcp</E>) of <M>G</M>, generators from such a presentation will be referred35to as <E>pc generators</E>. In terms of such pc generators every element of36<M>G</M> can be written in a <Q>normal form</Q> <M>a_1^{e_1}\dots a_n^{e_n}</M>37with <M>0 \le e_i < p</M>. Moreover any given product of the generators38can be brought into such a normal form using the defining relations in39the above presentation as rewrite rules. Any such process is called40<E>collection</E>. For the discussion of various collection methods see41<Cite Key="LGS90"/> and <Cite Key="VL90a"/>.42<P/>4344<Index>consistent</Index><Index>confluent rewriting system</Index><Index>confluent</Index>45Every <M>p</M>-group of order <M>p^n</M> has such a pcp on <M>n</M> generators and46conversely every such presentation defines a <M>p</M>-group. However a47<M>p</M>-group defined by a pcp on <M>n</M> generators can be of smaller order48<M>p^m</M> with <M>m<n</M>. A pcp on <M>n</M> generators that does in fact define a49<M>p</M>-group of order <M>p^n</M> is called <E>consistent</E> in this manual, in50line with most of the literature on the algorithms occurring here. A51consistent pcp determines a <E>confluent rewriting system</E>52(see <Ref BookName="ref" Func="IsConfluent" Style="Text"/> of the &GAP; Reference Manual) for the group53it defines and for this reason often (in particular in the &GAP;54Reference Manual) such a pcp presentation is also called <E>confluent</E>.55<P/>5657Consistency of a pcp is tantamount to the fact that for any given word58in the generators any two collections will yield the same normal form.59<P/>6061<Index>consistency conditions</Index>62Consistency of a pcp can be checked by a finite set of <E>consistency63conditions</E>, demanding that collection of the left hand side and of64the right hand side of certain equations, starting with subproducts65indicated by bracketing, will result in the same normal form. There66are 3 types of such equations (that will be referred to in the67manual):68<Display>69\begin{array}{rclrl}70(a^n)a &=& a(a^n) &&{\rm (Type 1)} \\71(b^n)a &=& b^{(n-1)}(ba), b(a^n) = (ba)a^{(n-1)} &&{\rm (Type 2)} \\72c(ba) &=& (cb)a &&{\rm (Type 3)} \\73\end{array}74</Display>75See <Cite Key="VL84"/> for a description of a sufficient set of consistency76conditions in the context of the <M>p</M>-quotient algorithm.77</Subsection>7879<Subsection><Heading>Exponent-<M>p</M> Central Series and Weighted pc Presentations</Heading>80For details, see <Cite Key="NNN98"/>.81<P/>8283<Index>exponent-p central series</Index><!-- @exponent-<M>p</M> central series -->84The (<E>descending</E> or <E>lower</E>) (<E>exponent-</E>)<E><M>p</M>-central series</E> of an85arbitrary group <M>G</M> is defined by86<Display>87P_0(G) := G, P_i(G) := [G, P_{i-1}(G)] P_{i-1}(G)^p.88</Display>89For a <M>p</M>-group <M>G</M> this series terminates with the trivial group. <M>G</M>90<Index>class</Index><Index>p-class</Index><!-- @<M>p</M>-class -->91has <E><M>p</M>-class</E> <M>c</M> if <M>c</M> is the smallest integer such that <M>P_c(G)</M>92is the trivial group. In this manual, as well as in much of the93literature about the <C>pq</C>- and related algorithms, the <M>p</M>-class is94often referred to simply by <E>class</E>.95<P/>9697Let the <M>p</M>-group <M>G</M> have a consistent pcp as above. Then the98subgroups99<Display>100\langle1\rangle < {\langle}a_n\rangle < {\langle}a_n, a_{n-1}\rangle101< \dots < {\langle}a_n,\dots,a_i\rangle < \dots < G102</Display>103form a central series of <M>G</M>. If this refines the <M>p</M>-central series,104<Index>weight function</Index>105we can define the <E>weight function</E> <M>w</M> for the pc generators by106<M>w(a_i) = k</M>, if <M>a_i</M> is contained in <M>P_{k-1}(G)</M> but not in107<M>P_k(G)</M>.108<P/>109110<Index>weighted pcp</Index>111The pair of such a weight function and a pcp allowing it, is called a112<E>weighted pcp</E>.113</Subsection>114115<Subsection><Heading><M>p</M>-Cover, <M>p</M>-Multiplicator</Heading>116For details, see <Cite Key="NNN98"/>.117<P/>118119<Index>p-covering group</Index><!-- @<M>p</M>-covering group --><Index>p-cover</Index><!-- @<M>p</M>-cover -->120<Index>p-multiplicator</Index><!-- @<M>p</M>-multiplicator -->121<Index>p-multiplicator rank</Index><!-- @<M>p</M>-multiplicator rank -->122<Index>multiplicator rank</Index>123Let <M>d</M> be the minimal number of generators of the <M>p</M>-group <M>G</M> of124<M>p</M>-class <M>c</M>. Then <M>G</M> is isomorphic to a factor group <M>F/R</M> of a125free group <M>F</M> of rank <M>d</M>. We denote <M>[F, R] R^p</M> by <M>R^*</M>. It can126be proved (see e.g. <Cite Key="OBr90"/>) that the isomorphism type of <M>G^*127:= F/R^*</M> depends only on <M>G</M>. <M>G^*</M> is called the <E><M>p</M>-covering128group</E> or <E><M>p</M>-cover</E> of <M>G</M>, and <M>R/R^*</M> the <E><M>p</M>-multiplicator</E> of129<M>G</M>. The <M>p</M>-multiplicator is, of course, an elementary abelian130<M>p</M>-group; its minimal number of generators is called the131<E>(<M>p</M>-)multiplicator rank</E>.132</Subsection>133134<Subsection><Heading>Descendants, Capable, Terminal, Nucleus</Heading>135For details, see <Cite Key="New77"/> and <Cite Key="OBr90"/>.136<P/>137138<Index>descendant</Index><Index>immediate descendant</Index><Index>nucleus</Index>139<Index>capable</Index><Index>terminal</Index>140Let again <M>G</M> be a <M>p</M>-group of <M>p</M>-class <M>c</M> and <M>d</M> the minimal141number of generators of <M>G</M>. A <M>p</M>-group <M>H</M> is a <E>descendant</E> of <M>G</M>142if the minimal number of generators of <M>H</M> is <M>d</M> and <M>H/P_c(H)</M> is143isomorphic to <M>G</M>. A descendant <M>H</M> of <M>G</M> is an <E>immediate144descendant</E> if it has <M>p</M>-class <M>c+1</M>. <M>G</M> is called <E>capable</E> if it145has immediate descendants; otherwise it is <E>terminal</E>.146<P/>147148Let <M>G^* = F/R^*</M> again be the <M>p</M>-cover of <M>G</M>. Then the group149<M>P_c(G^*)</M> is called the <E>nucleus</E> of <M>G</M>. Note that <M>P_c(G^*)</M> is150contained in the <M>p</M>-multiplicator <M>R/R^*</M>.151<P/>152153<Index>nucleus</Index><Index>allowable subgroup</Index>154It is proved (e.g. in <Cite Key="OBr90"/>) that the immediate descendants of155<M>G</M> are obtained as factor groups of the <M>p</M>-cover by (proper)156supplements of the nucleus in the (elementary abelian)157<M>p</M>-multiplicator. These are also called <E>allowable</E>.158<P/>159160<Index>extended automorphism</Index><Index>permutations</Index>161It is further proved there that every automorphism <M>\alpha</M> of <M>F/R</M>162extends to an automorphism <M>\alpha^*</M> of the <M>p</M>-cover <M>F/R^*</M> and163that the restriction of <M>\alpha^*</M> to the multiplicator <M>R/R^*</M> is164uniquely determined by <M>\alpha</M>. Each <E>extended automorphism</E>165<M>\alpha^*</M> induces a permutation of the allowable subgroups. Thus the166extended automorphisms determine a group <M>P</M> of <E>permutations</E> on the167set <M>A</M> of allowable subgroups (The group <M>P</M> of permutations will168appear in the description of some interactive functions). Choosing a169representative <M>S</M> from each orbit of <M>P</M> on <M>A</M>, the set of factor170groups <M>F/S</M> contains each (isomorphism type of) immediate descendant171of <M>G</M> exactly once. For each immediate descendant, the procedure of172computing the <M>p</M>-cover, extending the automorphisms and computing the173orbits on allowable subgroups can be repeated. Iteration of this174procedure can in principle be used to determine all descendants of a175<M>p</M>-group.176</Subsection>177178<Subsection><Heading>Laws</Heading>179<Index>law</Index><Index>identical relation</Index><Index>exponent law</Index>180<Index>metabelian law</Index><Index>Engel identity</Index><!-- @Engel identity -->181Let <M>l(x_1, \dots, x_n)</M> be a word in the free generators <M>x_1, \dots,182x_n</M> of a free group of rank <M>n</M>. Then <M>l(x_1, \dots, x_n) = 1</M> is183called a <E>law</E> or <E>identical relation</E> in a group <M>G</M> if <M>l(g_1,184\dots, g_n) = 1</M> for any choice of elements <M>g_1, \dots, g_n</M> in <M>G</M>.185In particular, <M>x^e = 1</M> is called an <E>exponent law</E>, <M>[[x,y],[u,v]] =1861</M> the <E>metabelian law</E>, and <M>[\dots [[x_1,x_2],x_2],\dots, x_2] = 1</M>187an <E>Engel identity</E>.188</Subsection>189190</Section>191192193<Section Label="The p-quotient Algorithm">194<Heading>The p-quotient Algorithm</Heading>195196For details, see <Cite Key="HN80"/>, <Cite Key="NO96"/> and <Cite Key="VL84"/>. Other197descriptions of the algorithm are given in <Cite Key="Sims94"/>.198<P/>199200The <C>pq</C> algorithm successively determines the factor groups of the201groups of the <M>p</M>-central series of a finitely presented (fp) group202<M>G</M>. If a bound <M>b</M> for the <M>p</M>-class is given, the algorithm will203determine those factor groups up to at most <M>p</M>-class <M>b</M>. If the204<M>p</M>-central series terminates with a subgroup <M>P_k(G)</M> with <M>k < b</M>,205the algorithm will stop with that group. If no such bound is given, it206will try to find the biggest such factor group.207<P/>208209<M>G/P_1(G)</M> is the largest elementary abelian <M>p</M>-factor group of <M>G</M>210and this can be found from the relation matrix of <M>G</M> using matrix211diagonalisation modulo <M>p</M>. So it suffices to explain how212<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>.213<P/>214215This is done, in principle, in two steps: first the <M>p</M>-cover216of <M>G_i := G/P_i(G)</M> is determined (which depends only on217<M>G_i</M>, not on <M>G</M>) and then <M>G/P_{i+1}(G)</M> as a factor group of this218<M>p</M>-cover.219220<Subsection><Heading>Finding the <M>p</M>-cover</Heading>221A very detailed description of the first step is given in <Cite Key="NNN98"/>,222from which we just extract some passages in order to point to some223terms occurring in this manual.224<P/>225226<Index>labelled pcp</Index><Index>definition<Subkey>of generator</Subkey></Index>227Let <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>. So228<M>d := d(1)</M> is the minimal number of generators of <M>H</M>. A weighted pcp229of <M>H</M> will be called <E>labelled</E> if for each generator <M>a_k</M>, <M>k > d</M>230one relation, having this generator as its right hand side, is marked231as <E>definition</E> of this generator.232<P/>233234As described in <Cite Key="NNN98"/>, a weighted labelled pcp of a <M>p</M>-group235can be obtained stepping down its <M>p</M>-central series.236<P/>237238So let us assume that a weighted labelled pcp of <M>G_i</M> is given. A239straightforward way of of writing down a (not necessarily consistent)240pcp for its <M>p</M>-cover is to add generators, one for each relation241which is not a definition, and modify the right hand side of each such242relation by multiplying it on the right by one of the new generators243-- a different generator for each such relation. Further relations are244then added to make the new generators central and of order <M>p</M>. This245procedure is called <E>adding tails</E>. A more formal description of it is246again given in <Cite Key="NNN98"/>.247<P/>248249<Index>tails</Index>250It is important to realise that the <Q>new</Q> generators will generate251an elementary abelian group, that is, in additive notation, a vector252space over the field of <M>p</M> elements. As said, the pcp of the253<M>p</M>-cover obtained in this way need not be consistent. Since the pcp254of <M>G_i</M> was consistent, applying the consistency conditions to the255pcp of the <M>p</M>-cover, in case the presentation obtained for <M>p</M>-cover256is not consistent, will produce a set of equations between the new257generators, that, written additively, are linear equations over the258field of <M>p</M> elements and can hence be used to remove redundant259generators until a consistent pcp is obtained.260<P/>261262In reality, to follow this straightforward procedure would be263forbiddingly inefficient except for very small examples. There are264many ways of a priori reducing the number of <Q>new generators</Q> to be265introduced, using e.g. the weights attached to the generators, and the266main part of <Cite Key="NNN98"/> is devoted to a detailed discussion with267proofs of these possibilities.268</Subsection>269270<Subsection><Heading>Imposing the Relations of the fp Group</Heading>271In order to obtain <M>G/P_{i+1}(G)</M> from the pcp of the <M>p</M>-cover of272<M>G_i = G/P_i(G)</M>, the defining relations from the original273presentation of <M>G</M> must be imposed. Since <M>G_i</M> is a homomorphic274image of <M>G</M>, these relations again yield relations between the <Q>new275generators</Q> in the presentation of the <M>p</M>-cover of <M>G_i</M>.276</Subsection>277278<Subsection><Heading>Imposing Laws</Heading>279While we have so far only considered the computation of the factor280groups of a given fp group by the groups of its descending <M>p</M>-central281series, the <M>p</M>-quotient algorithm allows a very important variant of282this idea: laws can be prescribed that should be fulfilled by the283<M>p</M>-factor groups computed by the algorithm. The key observation here284is the fact that at each step down the descending <M>p</M>-central series285it suffices to impose these laws only for a finite number of words.286Again for efficiency of the method it is crucial to keep the number of287such words small, and much of <Cite Key="NO96"/> and the literature quoted in288this paper is devoted to this problem.289<P/>290291<Index>exponent check</Index>292In this form, starting with a free group and imposing an exponent law293(also referred to as an <E>exponent check</E>) the <C>pq</C> program has, in294fact, found its most noted application in the determination of295(restricted) Burnside groups (as reported in e.g. <Cite Key="HN80"/>,296<Cite Key="NO96"/> and <Cite Key="VL90b"/>).297<P/>298299Via a &GAP; program using the <Q>local</Q> interactive functions of the300<C>pq</C> program made available through this interface also arbitrary laws301can be imposed via the option <C>Identities</C>302(see <Ref Label="option Identities" Style="Text"/>).303</Subsection>304305</Section>306307308<Section Label="The p-group generation Algorithm, Standard Presentation, Isomorphism Testing">309<Heading>The p-group generation Algorithm, Standard Presentation,310Isomorphism Testing</Heading>311312For details, see <Cite Key="New77"/> and <Cite Key="OBr90"/>.313<P/>314315<Index>p-group generation</Index><!-- @<M>p</M>-group generation --><Index>orbits</Index>316The <M>p</M>-group generation algorithm determines the immediate317descendants of a given <M>p</M>-group <M>G</M> up to isomorphism. From what has318been explained in Section <Ref Sect="Basic-notions" Style="Text"/>, it is clear that this319amounts to the construction of the <M>p</M>-cover, the extension of the320automorphisms of <M>G</M> to the <M>p</M>-cover and the determination of321representatives of the orbits of the action of these automorphisms on322the set of supplements of the nucleus in the <M>p</M>-multiplicator.323<P/>324325The main practical problem here is the determination of these326representatives. <Cite Key="OBr90"/> describes methods for this and the <C>pq</C>327program allows choices according to whether space or time limitations328must be met.329<P/>330331As well as the descendants of <M>G</M>, the <C>pq</C> program determines their332automorphism groups from that of <M>G</M> (see <Cite Key="OBr95"/>), which is333important for an iteration of the process; this has been used by334Eamonn O'Brien, e.g. in the classification of the <M>2</M>-groups that are335now also part of the <E>Small Groups</E> library available through &GAP;.336<P/>337338<Index>standard presentation</Index><Index>echelonised matrix</Index>339<Index>label of standard matrix</Index>340A variant of the <M>p</M>-group generation algorithm is also used to define341a <E>standard presentation</E> of a given <M>p</M>-group. This is done by342constructing an isomorphic copy of the given group through a chain of343descendants and at each step making a choice of a particular344representative for the respective orbit of capable groups. In a fairly345delicate process, subgroups of the <M>p</M>-multiplicator are represented346by <E>echelonised matrices</E> and a first among the <E>labels for standard347matrices</E> is chosen (this is described in detail in <Cite Key="OBr94"/>).348<P/>349350<Index>isomorphism testing</Index><Index>compaction</Index>351Finally, the standard presentation provides a way of testing if two352given <M>p</M>-groups are isomorphic: the standard presentations of the353groups are computed, for practical purposes <E>compacted</E> and the354results compared for being identical, i.e. the groups are isomorphic355if and only if their standard presentations are identical.356357</Section>358</Chapter>359360361362