Metacyclic \(p\)-groups#
Magma contains functions for constructing all metacyclic groups of order \(p^n\). It can also decide if a given \(p\)-group is metacyclic, construct invariants which distinguish this metacyclic group from all others of this order, and construct a standard presentation for the group.
This section describes the functions for accessing these algorithms. The functions were developed by Mike Newman, Eamonn O’Brien, and Michael Vaughan-Lee.
- MetacyclicPGroups(p, n: parameters): RngIntElt, RngIntElt -> SeqEnum#
PCGroups: BoolElt Default: true
Return a list of the metacyclic groups of order \(p^m\), where \(p\) is a prime and \(n\) is a positive integer.
If
true, the groups returned are in category GrpPC, otherwise they are in category GrpFP – this will be faster if the groups have large class.
- IsMetacyclicPGroup(P): Grp -> BoolElt#
The group \(P\) is a \(p\)-group, either pc- or matrix or permutation group; if \(P\) is metacyclic, then return
true, elsefalse.
- InvariantsMetacyclicPGroup(P): Grp -> Tup#
The group \(P\) is a metacyclic \(p\)-group, either pc- or matrix or permutation group; return tuple of invariants which uniquely identify metacyclic \(p\)-group \(P\). This tuple which contains at least four terms, \(\langle r, s, t, n \rangle\) has the following meaning: \(P\) has order \(p^{n + s}\); its derived quotient is \(C_{p^r} \times C_{p^s}\); its derived group is cyclic of order \(p^{n - r}\); it has exponent \(p^{n +s - t}\).
If \(p = 2\), then additional invariants are needed to distinguish among the groups. We record the abelian invariants of the centre of \(P\). If \(s = 1\) and the centre of \(P\) has order \(2\), then the 2-group is maximal class and we record whether it is dihedral, quaternion or semidihedral. If \(s > 1\) then the group has two cyclic central normal subgroups of order \(2^{s - 1}\) whose central quotients are both semidihedral, or dihedral and quaternion. The invariant tuple has length at most 6.
- StandardMetacyclicPGroup(P): Grp -> GrpPC#
The group \(P\) is a metacyclic \(p\)-group, either pc- or matrix or permutation group; return metacyclic \(p\)-group having a canonical pc-presentation which is isomorphic to \(P\). If two metacyclic \(p\)-groups have the same canonical presentation, then they are isomorphic.
- NumberOfMetacyclicPGroups(p, n): RngIntElt, RngIntElt -> SeqEnum#
Return number of metacyclic groups of order \(p^n\).
- HasAllPQuotientsMetacyclic(G): GrpFP -> BoolElt, SeqEnum#
- HasAllPQuotientsMetacyclic(G, p): GrpFP -> BoolElt#
Return
trueif for all primes \(p\) all \(p\)-quotients of the finitely-presented group \(G\) are metacyclic; otherwise returnfalseand a description of the set of primes for which \(G\) has non-metacyclic \(p\)-quotient.If a prime \(p\) is supplied as a second argument, then the function returns
trueif all \(p\)-quotients of \(G\) are metacyclic; otherwise it returnsfalse.
- Example: meta (ex-0140ea)#
> X := MetacyclicPGroups (3, 6); > #X; 11 > X[4]; GrpPC of order 729 = 3^6 PC-Relations: $.1^3 = $.3, $.2^3 = $.4, $.3^3 = $.6, $.4^3 = $.5, $.5^3 = $.6, $.2^$.1 = $.2 * $.6^2 > H := SmallGroup (729, 59); > IsMetacyclicPGroup (H); true > I := InvariantsMetacyclicPGroup(H); > I; <2, 2, 2, 4, [], , > > S := StandardMetacyclicPGroup (H); GrpPC : S of order 729 = 3^6 PC-Relations: S.1^3 = S.3, S.2^3 = S.4, S.3^3 = S.6, S.4^3 = S.5, S.5^3 = S.6, S.2^S.1 = S.2 * S.6^2 > /* find this group in list */ > [IsIdenticalPresentation (S, X[i]): i in [1..#X]]; [ false, false, false, true, false, false, false, false, false, false, false ] > /* so this group is #4 in list */ > NumberOfMetacyclicPGroups (19, 7); 14 > Q := FreeGroup (4); > G := quo < Q | Q.2^2, Q.4^3, Q.2 * Q.3 * Q.2 * Q.3^-1, Q.1^9>; > /* are all p-quotients of G metacyclic? */ > HasAllPQuotientsMetacyclic (G); false [ 3 ] > /* the 3-quotient is not metacyclic */