Magma

MAGMA Computational Algebra System

Magma
 •  How to get it
 •  Download
 •  Online Demo
 
Resources
 •  Online Help
 •  Discovering Mathematics with Magma
 •  Citations
 •  How to cite Magma
 •  Links
 •  Contact us
 
[Next][Prev] [Right] [Left] [Up] [Index] [Root]

Metacyclic p-groups

Magma contains functions for constructing all metacyclic groups of order pn. 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
Return a list of the metacyclic groups of order pm, where p is a prime and n is a positive integer.

     PCGroups: BoolElt                   Default: true

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
P is a p-group, either pc- or matrix or permutation group; if P is metacyclic, then return true, else false.
InvariantsMetacyclicPGroup (P) : Grp -> Tup
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, < r, s, t, n > has the following meaning: P has order ps; its derived quotient is Cr x Cs; its derived group is cyclic of order pr; it has exponent pt.

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 21 whose central quotients are both semidihedral, or dihedral and quaternion. The invariant tuple has length at most 6.

StandardMetacyclicPGroup (P): Grp -> GrpPC
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 pn.
HasAllPQuotientsMetacyclic (G): GrpFP -> BoolElt, SeqEnum
HasAllPQuotientsMetacyclic (G, p): GrpFP -> BoolElt
Return true if for all primes p all p-quotients of the finitely-presented group G are metacyclic; otherwise return false and 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 true if all p-quotients of G are metacyclic; otherwise it returns false.


Example GrpData_meta (H57E6)

> 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 */

 [Next][Prev] [Right] [Left] [Up] [Index] [Root]
                       

Version: V2.14 of Tue Oct 30 14:01:03 EST 2007

Valid HTML 4.01! Valid CSS!