Quotient Groups

A powerful technique for investigating an fp-group is to study some of its quotients. For example, the action of a group G on the cosets of a subgroup H (where the index of H in G is finite) as described in the section on subgroups is an epimorphism of G onto a permutation group of degree [G:H]. In this section further methods for constructing various types of quotient group are described. Specifically, machinery is provided for constructing abelian quotients, p-quotients, nilpotent quotients, soluble quotients and PSL(2, q)/PGL(2, q) quotients.

Contents

Abelian Quotient

Computing the quotient of an fp-group G by its derived group is usually the first step in analyzing an fp-group. The ability to do this to finite-index subgroups of G is a key step when trying to prove that a group is infinite. The intrinsics in this section compute information about the abelian quotient of an fp-group G.

Intrinsics:

AbelianQuotient (G) : The maximal abelian quotient G/Gprime of the fp-group G is returned as a group in category GrpAb (cf. chapter ABELIAN GROUPS). The natural epimorphism π:G -> G/Gprime is returned as second value.

HasFiniteAbelianQuotient (G) : Return true if the maximal abelian quotient of the fp-group G is finite.

ElementaryAbelianQuotient (G, p) : The maximal p-elementary abelian quotient Q is returned as a group G in category GrpAb (cf. chapter ABELIAN GROUPS). The natural epimorphism π:G -> Q is returned as second value.

AbelianQuotientInvariants (G) : Let G be an fp-group or a subgroup of finite index of an fp-group. The elementary divisors of the derived quotient group G/G' are returned as a sequence of integers.

AbelianQuotientInvariants (G, n) : Let G be an fp-group, n a small integer and N the normal subgroup of G generated by the derived group G' together with all n-th powers of elements of G. The elementary divisors of the quotient group G/N, are returned as a sequence of integers.

AbelianQuotientPrimes (G) : Return a sequence of primes containing all prime divisors in the order of G/G', if this is finite. Note that there may be primes in the return sequence which do not divide this order. If [ 0 ] is returned then G/G' is infinite. If [] is returned, then G is perfect.

HasComputableAbelianQuotient (G) : Given an fp-group G, this intrinsic tests whether the abelian quotient of G can be computed. If so, it returns the value true, the abelian quotient A of G and the natural epimorphism π:G -> A. If the abelian quotient of G cannot be computed, the value false is returned.

HasInfiniteComputableAbelianQuotient (G) : Given an fp-group G, this function tests whether the abelian quotient of G can be computed and is infinite. If so, it returns the value true, the abelian quotient A of G and the natural epimorphism π:G -> A. If the abelian quotient of G cannot be computed or if it is finite, the value false is returned.

Notes:

(i)
A number of variations on the above intrinsics may be found in chapter FINITELY PRESENTED GROUPS.

(ii)
The above intrinsics require either a presentation for G, or the coset table for G inside some supergroup of G which has a presentation. If such a coset table cannot be computed, an error will result.

(iii)
Some functions may require the computation of a coset table. Experienced users can control the behaviour of an implicit coset enumeration by setting global parameters which can be changed using the function SetGlobalTCParameters.

(iv)
Intrinsics with names of the form AbelianQuotientName can be abbreviated to AQName, where name is Quotient, Primes or Invariants.

(v)
Considerable effort has been put into computing the Smith Normal Form for large integer matrices that can arise when executing these intrinsics. An important application where such large matrices arise is when the input is the integer matrix resulting from the abelianisation of the presentation of a subgroup H which has been constructed by rewriting the presentation of its parent group. If the index is large (even 50 or 100) then the presentation of H may be huge.

(vi)
The intrinsic HasInfiniteComputableAbelianQuotient first checks the modular abelian invariants for a set of small primes. If for one of these primes the modular abelian quotient is trivial, then A must be finite and the function returns without actually computing the abelian quotient. This heuristic may save time if only infinite quotients are of interest.

Example GrpFPInt_F27 (H77E28)

The Fibonacci group F(7) has the following 2-generator presentation: <a, b | a2b - 2a - 1b - 2(a - 1b - 1)2, abab2abab - 1(ab2)2>. The goal is to determine the structure of this group.
> F<a, b> := FreeGroup(2);
> F7<a, b> := quo< F |  a^2*b^-2*a^-1*b^-2*(a^-1*b^-1)^2,
>        a*b*a*b^2*a*b*a*b^-1*(a*b^2)^2 >;
> F7;
Finitely presented group F7 on 2 generators
Relations
       a^2 * b^-2 * a^-1 * b^-2 * a^-1 * b^-1 * a^-1 * b^-1 =Id(F7)
       a * b * a * b^2 * a * b * a * b^-1 * a * b^2 * a * b^2 = Id()7
The first step is to determine the structure of the maximal abelian quotient of F(7).
> AbelianQuotientInvariants(F7);
[ 29 ]
The maximal abelian quotient of F(7) is cyclic of order 29. At this point there is no obvious way to proceed, so an attempt is made to determine the index of some subgroups.
> Index( F7, sub< F7 | a > );
1
This demonstrates that F(7) is generated by a and so must be cyclic. This fact coupled with the knowledge that its abelian quotient has order 29 proves that the group is cyclic of order 29.

Example GrpFPInt_modular-abelian-quotient (H77E29)

The group G = (8, 7 | 2, 3) is defined by the presentation < a, b | a8, b7, (ab)2, (ab - 1)3 >. The goal here is to determine the abelian quotient invariants of the (rather famous) subgroup H of G, generated by the words a2 and ab - 1:
> G<a, b> := FPGroup<a, b| a^8, b^7, (a * b)^2, (a * b^-1)^3>;
> H<x, y> := sub< G | a^2, a * b^-1 >;
The fastest way to determine the order of the maximal 2-elementary abelian quotient of H is to use the modular version of AbelianQuotientInvariants:
> #AbelianQuotientInvariants(H, 2);
1
So the maximal 2-elementary abelian quotient of H has order 21.

p-Quotient

Let F be a finitely presented group, p a prime and c a positive integer. A p-quotient algorithm constructs a consistent power-conjugate presentation for the largest p-quotient of F having lower exponent-p class at most c. The p-quotient algorithm used by Magma is part of the ANU p-Quotient program. For details of the algorithm, see [NO96]. The result is returned as a group of type GrpPC (cf. chapter FINITE SOLUBLE GROUPS).

Intrinsics:

pQuotient (G, p, c) : Given an fp-group G, a prime p and a positive integer c, construct a pc-presentation for the largest p-quotient Q of G having lower exponent-p class at most c. If c is given as 0 then the limit 127 is placed on the class. The intrinsic also returns the natural homomorphism π from G to Q, a sequence S describing the definitions of the pc-generators of Q and a flag indicating whether Q is the maximal p-quotient of G.

Notes:

(i)
If the fp-group is a finite p-group then the p-quotient function can be used to construct a pc-presentation for the group.

(ii)
If the parameter Metabelian is set to true then a consistent pc-presentation is constructed for the largest metabelian p-quotient of G having lower exponent-p class at most c.

(iii)
Assume that the p-quotient Q has order pn, Frattini rank d, and that its generators are a1, ..., an. Then the power-conjugate presentation constructed has the following additional structure. The set {a1, ..., ad} is a generating set for G. For each ak in {ad + 1, ..., an}, there is at least one relation whose right hand side is ak. One of these relations is taken as the definition of ak.

(iv)
The intrinsic has the following parameters in addition to Metabelian:

-
Exponent enables an exponent law, xm = 1, to be imposed on the quotient being computed. It is set to a positive integer value m.

-
Print enables the user to obtain verbose output during the running of the intrinsic. Legal values are the integers 1, 2, and 3.

-
Workspace allows the user to specify the size of workspace that will be assigned to the p-quotient job.

(v)
A process version of the p-quotient algorithm is provided. This enables the user to create a restartable computation which gives the user complete control over its execution. For a description see chapter FINITELY PRESENTED GROUPS.

(vi)
The k-th term of the return value sequence S is a sequence of two integers, describing the definition of the k-th pc-generator Q.k of Q as follows:-

-
If S[k] = [0, r], then Q.k is defined via the image of G.r under π.

-
If S[k] = [r, 0], then Q.k is defined via the power relation for Q.r.

-
If S[k] = [r, s], then Q.k is defined via the conjugate relation involving ((Q.r))Q.s.

Example GrpFPInt_pQuotient1 (H77E30)

In this example the largest 2-quotient of class 6 for a two-generator, two-relator group is constructed.
> F<a,b> := FreeGroup(2);
> G := quo< F | (b, a, a) = 1, (a * b * a)^4 = 1 >;
> Q, fQ := pQuotient(G, 2, 6);
> Order(Q);
524288
> fQ;
Mapping from: GrpFP: G to GrpPC: Q

Example GrpFPInt_pQuotient2 (H77E31)

The largest 3-quotient of class 6 for a two-generator group of exponent 9 will be constructed.
> F<a,b> := FreeGroup(2);
> G := quo< F | a^3 = b^3 = 1 >;
> q := pQuotient(G, 3, 6: Print := 1, Exponent := 9);
Lower exponent-3 central series for G
Group: G to lower exponent-3 central class 1 has order 3^2
Group: G to lower exponent-3 central class 2 has order 3^3
Group: G to lower exponent-3 central class 3 has order 3^5
Group: G to lower exponent-3 central class 4 has order 3^7
Group: G to lower exponent-3 central class 5 has order 3^9
Group: G to lower exponent-3 central class 6 has order 3^11

Example GrpFPInt_pQuotient3 (H77E32)

The parameter Metabelian: will be used to construct a metabelian 5-quotient of the group < a, b | a625 = b625 = 1, (b, a, b) = 1, (b, a, a, a, a) = (b, a)5>.
> F<a, b> := FreeGroup(2);
> G := quo< F | a^625 = b^625 = 1, (b, a, b) = 1,
>           (b, a, a, a, a) = (b, a)^5 >;
> q := pQuotient(G, 5, 20: Print := 1, Metabelian := true);
Lower exponent-5 central series for G
Group: G to lower exponent-5 central class 1 has order 5^2
Group: G to lower exponent-5 central class 2 has order 5^5
Group: G to lower exponent-5 central class 3 has order 5^8
Group: G to lower exponent-5 central class 4 has order 5^11
Group: G to lower exponent-5 central class 5 has order 5^12
Group: G to lower exponent-5 central class 6 has order 5^13
Group: G to lower exponent-5 central class 7 has order 5^14
Group: G to lower exponent-5 central class 8 has order 5^15
Group: G to lower exponent-5 central class 9 has order 5^16
Group: G to lower exponent-5 central class 10 has order 5^17
Group: G to lower exponent-5 central class 11 has order 5^18
Group: G to lower exponent-5 central class 12 has order 5^19
Group: G to lower exponent-5 central class 13 has order 5^20
Group completed. Lower exponent-5 central class = 13, order = 5^20

Nilpotent Quotient

A nilpotent quotient algorithm constructs, from a finite presentation of a group, a polycyclic presentation for a nilpotent quotient of the finitely presented group. The nilpotent quotient algorithm used by Magma is the ANU Nilpotent Quotient program, as described in [Nic96]. The version included in Magma is Version 2.2 of January 2007.

The lower central series G0, G1, ... of a group G can be defined inductively as G0 = G, Gi = [G_(i - 1), G]. The group G is said to have nilpotency class c if c is the smallest non-zero integer such that Gc = 1. If N is a normal subgroup of G and G/N is nilpotent, then N contains Gi for some non-negative integer i. G has infinite nilpotent quotients if and only if G/G1 (the maximal abelian quotient of G) is infinite and a prime p divides a finite factor of a nilpotent quotient if and only if p divides a cyclic factor of G/G1.

Intrinsics:

NilpotentQuotient (G, c) : The class c nilpotent quotient of G is computed as a group in category GrpGPC, and is returned together with the epimorphism π from G onto this quotient. When c is set to zero, the function attempts to compute the maximal nilpotent quotient of G.

Notes:

(i)
There are a number of parameters associated with this intrinsic and descriptions of these can be found in chapter FINITELY PRESENTED GROUPS.

(ii)
The verbose identifier for this intrinsic is NilpotentQuotient which takes a small positive integer n in the range [0..3]. Setting n to be 0 turns printing off and this is the default value.

Example GrpFPInt_NilpotentQuotient0 (H77E33)

Here is a finitely presented group. The abelian quotient is infinite so the class 2 nilpotent quotient is computed.
> G := Group<x,y,z|(x*y*z^-1)^2, (x^-1*y^2*z)^2, (x*y^-2*x^-1)^2 >;
> AbelianQuotient(G);
Abelian Group isomorphic to Z/2 + Z/2 + Z
Defined on 3 generators
Relations:
  2*$.1 = 0
  2*$.2 = 0
> N := NilpotentQuotient(G,2); N;
GrpGPC : N of infinite order on 6 PC-generators
PC-Relations:
  N.1^2 = N.3^2 * N.5,
  N.2^2 = N.4 * N.6,
  N.4^2 = Id(N),
  N.5^2 = Id(N),
  N.6^2 = Id(N),
  N.2^N.1 = N.2 * N.4,
  N.3^N.1 = N.3 * N.5,
  N.3^N.2 = N.3 * N.6

Example GrpFPInt_NilpotentQuotient1 (H77E34)

The free nilpotent group of rank r and class e is defined as F / γe + 1(F), where F is a free group of rank r and γe + 1(F) denotes the (e + 1) st term of the lower central series of F. The intrinsic NilpotentQuotient will be used to construct the free nilpotent group N of rank 2 and class 3 as quotient of the free group F of rank 2 and the natural epimorphism from F onto N.
> F<a,b> := FreeGroup(2);
> N<[x]>, pi := NilpotentQuotient(F, 3);
> N;
GrpGPC : N of infinite order on 5 PC-generators
PC-Relations:
    x[2]^x[1] = x[2] * x[3],
    x[2]^(x[1]^-1) = x[2] * x[3]^-1 * x[4],
    x[3]^x[1] = x[3] * x[4],
    x[3]^(x[1]^-1) = x[3] * x[4]^-1,
    x[3]^x[2] = x[3] * x[5],
    x[3]^(x[2]^-1) = x[3] * x[5]^-1
Finally the nilpotency class of the quotient sill be confirmed:
> NilpotencyClass(N);
3

Example GrpFPInt_NilpotentQuotient2 (H77E35)

The Baumslag--Solitar groups BS(p, q) = < a, b | abpa - 1 = bq > form a fascinating class of 1-relator groups. The nilpotent quotient of class 4 for q = 4, will be computed and the preimages of its generators identified.
> G<a,b> := FPGroup<a,b|a*b*a^-1=b^4>;
> N,f := NilpotentQuotient(G,4);
> N;
GrpGPC : N of infinite order on 5 PC-generators
PC-Relations:
  N.2^3 = N.3^2 * N.4^2 * N.5,
  N.3^3 = N.4^2 * N.5^2,
  N.4^3 = N.5^2,
  N.5^3 = Id(N),
  N.2^N.1 = N.2 * N.3,
  N.2^(N.1^-1) = N.2 * N.3^2 * N.4^2 * N.5,
  N.3^N.1 = N.3 * N.4,
  N.3^(N.1^-1) = N.3 * N.4^2 * N.5^2,
  N.4^N.1 = N.4 * N.5,
  N.4^(N.1^-1) = N.4 * N.5^2
> for i := 1 to Ngens(N) do N.i @@ f; end for;
 a
 b
 (b, a)
 (b, a, a)
 (b, a, a, a)

Soluble Quotient

A soluble quotient algorithm computes a consistent power-conjugate presentation (pc-presentation) of the largest finite soluble quotient of an fp-group, subject to certain algorithmic and user supplied restrictions. In this section a description of a basic version of the algorithm available within Magma in given. For more information the user is referred to chapter FINITELY PRESENTED GROUPS.

Intrinsics:

SolvableQuotient/SolubleQuotient (G) : Given an fp-group G, the largest finite soluble quotient Q is returned. The epimorphism φ : G -> Q is also returned.

SolvableQuotient/SolubleQuotient (G, n) : Given an fp-group G and a positive integer n, a soluble quotient Q of order n is returned. The φ : G -> Q is also returned. When the order of Q is known in advance, this version can avoid work in proving that the final quotient is maximal.

SolvableQuotient/SolubleQuotient (G, P) : Given an fp-group G and a sequence P containing primes this intrinsic calculates the largest soluble quotient whose order has prime divisors only in P. The epimorphism φ : G -> Q is also returned. This version is included since finding the possible primes at each step can be very expensive.

Notes:

(i)
A user wishing to get the most out of SolubleQuotient should note that there is a complex interface to it and the user should read the full description of this intrinsic, its variations and the parameters available, in chapter FINITELY PRESENTED GROUPS.

(ii)
In the case of SolubleQuotient (G, n), if n>0 is not the order of the maximal finite soluble quotient, then it may happen that no group of order n can be found, since an epimorphic image of size n may not be exhibited by the chosen series.

Example GrpFPInt_SolubleQuotient1 (H77E36)

The soluble quotient of the group < a, b | a2, b4, ab - 1ab(abab - 1)5ab2ab - 2 > will be computed.
> G<a,b> := FPGroup< a, b | a^2, b^4,
>                     a*b^-1*a*b*(a*b*a*b^-1)^5*a*b^2*a*b^-2 >;
> Q := SolubleQuotient(G);
> Q;
GrpPC : Q of order 1920 = 2^7 * 3 * 5
PC-Relations:
    Q.1^2 = Q.4,
    Q.2^2 = Id(Q),
    Q.3^2 = Q.6,
    Q.4^2 = Id(Q),
    Q.5^2 = Q.7,
    Q.6^2 = Id(Q),
    Q.7^2 = Id(Q),
    Q.8^3 = Id(Q),
    Q.9^5 = Id(Q),
    Q.2^Q.1 = Q.2 * Q.3,
    Q.3^Q.1 = Q.3 * Q.5,
    Q.3^Q.2 = Q.3 * Q.6,
    Q.4^Q.2 = Q.4 * Q.5 * Q.6 * Q.7,
    Q.4^Q.3 = Q.4 * Q.6 * Q.7,
    Q.5^Q.1 = Q.5 * Q.6,
    Q.5^Q.2 = Q.5 * Q.7,
    Q.5^Q.4 = Q.5 * Q.7,
    Q.6^Q.1 = Q.6 * Q.7,
    Q.8^Q.1 = Q.8^2,
    Q.8^Q.2 = Q.8^2,
    Q.9^Q.1 = Q.9^3,
    Q.9^Q.2 = Q.9^4,
    Q.9^Q.4 = Q.9^4

Example GrpFPInt_SolubleQuotient2 (H77E37)

Consider the group G defined by the presentation < x, y | x3, y8, [x, y4], x - 1yx - 1y - 1xyxy - 1, (xy - 2)2(x - 1y - 2)2(xy2)2(x - 1y2)2, (x - 1y - 2)6(x - 1y2)6 >.
> G<x, y> := FPGroup< x, y | x^3, y^8, (x,y^4), x^-1*y*x^-1*y^-1*x*y*x*y^-1,
>   (x*y^-2)^2*(x^-1*y^-2)^2*(x*y^2)^2*(x^-1*y^2)^2, (x^-1*y^-2)^6*(x^-1*y^2)^6 >;
The soluble quotient algorithm will be applied to G and its order computed.
> time Q := SolubleQuotient(G);
Time: 4.620
> Order(Q);
165888
Note that 165888 = 211 .34. Knowing the primes in advance makes the computation faster:
> time Q := SolubleQuotient(G, {2, 3});
Time: 1.900
Assuming that G is finite the Todd--Coxeter procedure will used to find its order:
> Order(G);
165888
Hence the group G is finite, soluble and isomorphic to Q. Since Q is defined by a pc-presentation anything can be computed for it and so it can be used to obtain information about G.
> #ConjugacyClasses(Q);
272
So G has 272 conjugacy classes of elements.

Simple Group Quotients

The previous four methods for finding epimorphisms of an fp-group G only apply when G has a non-trivial abelian quotient, that is, when G is not perfect. This and the next subsection present methods for the case in which G is perfect. The first method searches through a list of non-abelian simple groups to find simple quotients of G as permutation groups. It is similar to the algorithm used to find homomorphisms of an fp-group onto a permutation group. Currently (2019) the list of target simple groups consists of all non-abelian simple groups having order less than 1010. Such a list is dominated by PSL(2, q)'s with q odd. In the current implementation these PSL(2, q)'s are treated as an infinite family rather than stored individually, and so continue beyond the above limit.

Intrinsics:

SimpleQuotients (G, deg1, deg2, ord1, ord2) :

SimpleQuotients (G, ord1, ord2) :

The homomorphism algorithm is used to find epimorphisms from G onto non-abelian simple groups in a fixed list. The arguments deg1 and deg2 are respectively lower and upper bounds for the degree of the image group. If the degree arguments are not present then bounds of 5 and 1010 are used. The arguments ord1 and ord2 are, respectively, lower and upper bounds for the orders of the image group. (Setting ord2 low enough is particularly important if a quick search is required. If ord1 is not given then it defaults to 1. The return value is a list of sequences containing the epimorphisms found. Each sequence contains epimorphisms onto one simple group.

The parameter Limit limits the number of successful searches to be performed by Homomorphisms. The default value is 1, so by default the search terminates with the first simple group found to be a homomorphic image of G.

Notes:

(i)
The parameter Limit limits the number of successful searches that are to be performed by Homomorphisms. The default value is 1, so by default the search terminates with the first simple group found to be a homomorphic image of G.

(ii)
The parameter HomLimit limits the number of homomorphisms that will be searched for by any particular call to Homomorphisms. It defaults to zero, so that all homomorphisms for any group found will be returned in that case.

(iii)
The parameter Family selects sublists of the main list to search. Possible values of this parameter are "All", "PSL", "PSL2", "Mathieu", "Alt", "PSp", "PSU", "Other", and "notPSL2"; sets of these strings are also allowed, which searches on the union of the appropriate sublists.

(iii)
A process version of SimpleQuotients creates a restartable version of the computation so that it returns a result to the user each time a new epimorphism is found. It involves three intrinsics:

-
SimpleQuotientProcess has the same arguments as SimpleQuotient. It initialises the process and returns a name P for future reference to the process.

-
NextSimpleQuotient (P), where P is the process name continues the search until the next epimorphism is found whereupon it is returned and the process is suspended until the next call.

-
IsEmptySimpleQuotientProcess (P), where P is the process name, returns false when the search has been completed and true otherwise.

Full details can be found in chapter FINITELY PRESENTED GROUPS.

Example GrpFPInt_SimpleQuotients (H77E38)

The following finitely presented group is perfect so a search is made for simple quotients. The first search is for simple quotients of order not exceeding 105 and degree not exceeding 100.
> G := FPGroup<a, b, c | a^13, b^3, c^2,a = b*c>;
> IsPerfect(G);
true
> L := SimpleQuotients(G, 1, 100, 2, 10^5 : Limit := 2);
> #L;
2
> for x in L do CompositionFactors(Image(x[1])); end for;
    G
    |  A(1, 13)               = L(2, 13)
    1
    G
    |  A(2, 3)                = L(3, 3)
    1
> L[2,1];
Homomorphism of GrpFP: F into GrpPerm: $, Degree 13, Order
2^4 * 3^3 * 13 induced by
F.1 |--> (1, 10, 4, 5, 11, 8, 3, 6, 7, 12, 9, 13, 2)
F.2 |--> (2, 10, 4)(3, 6, 7)(5, 11, 13)(8, 12, 9)
F.3 |--> (1, 10)(2, 5)(3, 12)(8, 13)
> #L[2];
2

The simple groups L(2,13) and L(3,3) are quotients, with two inequivalent homomorphisms onto the second group. The process mechanism will be used to search for projective unitary groups of order up to 106 and having permutation representations of degree not greater then 100.

> P := SimpleQuotientProcess(G, 1, 100, 2, 10^6 : Family:="PSU");
> IsEmptySimpleQuotientProcess(P);
false
> eps, info := SimpleEpimorphisms(P);
> info;
<65, 62400, PSU(3, 4)>

The group PSU(3,4) of order 62400 and degree 65 is a quotient of G. The process is restarted.

> NextSimpleQuotient(~P);
> IsEmptySimpleQuotientProcess(P);
true
There are no more unitary group quotients within the given degree and order limits.

(L)2-Quotients

Given an fp-group G, the L2-quotient algorithm of Plesken, Fabianska and Jambor computes all quotients of G which are isomorphic to the 2-dimensional linear groups PSL(2, q) or PGL(2, q) simultaneously for any prime power q. The algorithm can handle the case of infinitely many quotients, and also works for very large prime powers. In practice it is fast when the number of generators is small and can be used to show that many fp-groups are infinite. While the simple groups PSL(2, q) represent just one dimension in one family out of 16 families of simple groups, in a given range of orders, they are very numerous compared to other simple groups. See [Jam12] or [Jam15] for more information about the L2-quotient algorithm.

In this chapter only part of the L2-quotient machinery is discussed while computing L3- and U3-quotients is not discussed at all. The reader is referred to chapter FINITELY PRESENTED GROUPS for a complete treatment of the L2/L3/U3-quotient machinery.

The term L2-quotient will include both of the groups PSL(2, q) and PGL(2, q). L2-quotients have their own Magma type: L2Quotient. Some fp-groups G have infinitely many L2-quotients and this is indicated by one of the L2-quotient names L_2(infty^k), L_2(p^(infty^d)), or L_2(infty^(infty^d)).

Intrinsics:

L2Quotients (G) : Given a fp group G, a sequence containing all (L)2-quotients is returned.

GetMatrices (Q) : For a finite L2-quotient Q of G, (that is, a quotient L2(pk) or PGL(2, pk)), this intrinsic returns a matrix group H and a sequence A of 2 x 2 matrices in H, where A[i] corresponds to the i-th generator of G. Note that G -> H, G.i -> A[i] does not in general define a homomorphism, but the induced map G -> H/Z(H) does.

Notes:

(i)
At the moment the algorithm does not return images onto the groups PSL(2, 2), PSL(2, 3), and PSL(2, 4) = PSL(2 , 5).

(ii)
Infinite quotients should be interpreted as follows:

-
Quotients of type (L)2(∞k) : If G has a quotient (L)2(∞k), then for almost all (all but finitely many) primes p, G has finitely many quotients of type (PSL)(2, pr) or (PGL)(2, pr/2) with r ≤k. So (L)2(∞k) is a mnemonic, where ∞ in the base stands for infinitely many primes, and k stands for the highest possible exponent.

-
Quotients of type (L)2(pd) : If G has a quotient (L)2(pd), then there are infinitely many positive integers k such that G has a quotient of type (PSL)(2, pk) or (PGL)(2, pk). So (L)2(pd) is a mnemonic, where ∞ in the exponent stands for infinitely many possible exponents. The parameter d describes the degree of infinity, and is omitted if d = 1.

-
Quotients of type (L)2(∞d) : If G has a quotient (L)2(∞d), then for almost all primes p and infinitely many positive integers k, G has a quotient of type (PSL)(2, pk) or (PGL)(2, pk). So (L)2(∞d) is a mnemonic, where ∞ in the base stands for infinitely many primes, and ∞ in the exponent stands for infinitely many possible exponents. The parameter d describes the degree of infinity, and is omitted if d = 1. These quotients can be further investigated using the methods AddGroupRelations, AddRingRelations, and SpecifyCharacteristic.

Example GrpFPInt_L2Quotient (H77E39)

The L2-quotients of a certain finitely-presented group will be computed.
> G := FPGroup< a,b | a^2, b^3, (a*b)^7, (a,b)^11 >;
> L2Quotients(G);
[
    L_2(43)
]
> H := FPGroup< a,b,c | a^3, b^7, c^19, (a*b)^2, (a*c)^2, (b*c)^2, (a*b*c)^2 >;
> L2Quotients(H);
[
    L_2(113)
]
This means that G has PSL(2, 43) as quotient, but no other PSL(2, q) or PGL(2, q) is a quotient of G. Similarly, the only L2-quotient of H is PSL(2, 113).

The next example has more quotients:

> G := FPGroup< a,b | a^2, b^3, (a*b)^16, (a,b)^11 >;
> L2Quotients(G);
[
    PGL(2,23),
    PGL(2,23),
    PGL(2,463)
]
Here PGL(2, 23) occurs twice. This means that there are two epimorphisms of G onto PGL(2, 23) which do not differ by an automorphism of PGL(2, 23). In other words, the kernels of the epimorphisms are distinct.

Example GrpFPInt_L2QuotientInfinite (H77E40)

Some groups have infinitely many L2-quotients. This is indicated by one of the L2-quotients L_2(infty^k), L_2(p^(infty^d)), or L_2(infty^(infty^d)), as the follow examples illustrate.
> G := FPGroup< a,b,c | a^3, b^7, (a*b)^2, (a*c)^2, (b*c)^2, (a*b*c)^2 >;
> L2Quotients(G);
[
    L_2(infty^6)
]
> H := FPGroup<a,b,c | a^3, (a,c)=(c,a^-1), a*b*a=b*a*b, a*b*a*c^-1=c*a*b*a>;
> L2Quotients(H);
[
    L_2(3^infty)
]
> K := FPGroup< a,b | a^3*b^3 >;
> L2Quotients(K);
[
    L_2(infty^infty)
]

Example GrpFPInt_L2QuotientGetMatrices (H77E41)

The following example illustrates how the quotient matrix groups can be accessed.
> H := FPGroup< a,b,c | a^3, b^7, c^19, (a*b)^2, (a*c)^2, (b*c)^2, (a*b*c)^2 >;
> quot := L2Quotients(H); quot;
[
    L_2(113)
]
> H, A := GetMatrices(quot[1]);
> H;
MatrixGroup(2, GF(113))
Generators:
    [  0   1]
    [112 112]
    [  0  85]
    [109  24]
    [102 104]
    [ 63  72]
> A;
[
    [  0   1]
    [112 112],
    [  0  85]
    [109  24],
    [102 104]
    [ 63  72]
]
V2.28, 13 July 2023