[Next] [Prev] [Right] [Left] [Up] [Index] [Root]
Transfer Functions Between Group Categories

Transfer Functions Between Group Categories

Since certain group computations are possible or feasible only for particular group representations, it is often useful to transfer a group from one category to another. The functions in this section take a group and return a group isomorphic to it (or isomorphic to some related group) in another category.

pQuotient(F, p, c: parameters) : GrpFP, RngIntElt, RngIntElt -> GrpPC, Map
Given an fp-group F, a prime p and a positive integer c, construct a polycyclic presentation for the largest p-quotient G of F having lower exponent-p class at most min(c, 63). If c is given as 0, then the limit 63 is placed on the class. The function also returns the homomorphism from F to G.

The parameters are:

    Exponent: RngIntElt                 Default: 0

If Exponent := m, enforce the exponent law, x^m = 1, on the group.

    Metabelian: BoolElt                 Default: false

If Metabelian := true, then a consistent pcp is constructed for the largest metabelian p-quotient of F having lower exponent-p class at most c.

    Print: RngIntElt                    Default: 0

This parameter controls the volume of printing. By default its value is that returned by GetVerbose("pQuotient"), which is 0 unless it has been changed through use of SetVerbose. The effect is the following:

Print := 0 : No output.

Print := 1 : Report order of p-quotient at each class.

Print := 2 : Report statistics and redundancy information about tails, consistency, collection of relations and exponent enforcement components of calculation.

Print := 3 : Report in detail on the construction of each class.

Note that the presentation displayed is a power-commutator presentation (since this is the version stored by the p-quotient).

    Workspace: RngIntElt                Default: 1000000

The amount of space requested for the p-quotient computation.

CosetAction(G, H) : Grp, Grp -> Hom(Grp), GrpPerm, Grp
Given a subgroup H of the group G, construct the permutation representation of G given by the action of G on the (right) coset space cos(G, H). The function returns: If G is a finitely presented group, then K may be returned undefined.

The permutation representation is obtained by using the Todd-Coxeter procedure to construct the coset table for H in G. Note that G may be an infinite group: it is only necessary that the index of H in G be finite.

CosetImage(G, H) : Grp, Grp -> GrpPerm
Given a subgroup H of the group G, construct the image of G given by its action on the (right) coset space of H in G, returning it as a permutation group. (This is also the second return value of CosetAction(G, H).)
CosetKernel(G, H) : Grp, Grp -> Grp
Given a subgroup H of the group G, construct the kernel of G in its action on the (right) coset space of H in G. (This is also the third return value of CosetAction(G, H).) This function may fail if G is a finitely presented group; it is only available when the index of H in G is very small.
PCGroup(G) : Grp -> GrpPC, Hom(Grp)
Given a (finite) soluble group G, in the category GrpPerm, GrpMat or GrpAb, construct a pc group S isomorphic to G. In addition to returning S, the function returns an isomorphism phi: G -> S.
FPGroup(G: parameters) : GrpPerm :-> GrpFP, Hom(Grp)
    StrongGenerators: BoolElt           Default: false
    Random: BoolElt                     Default: true
    Max: RngIntElt                      Default: 100
    Run: RngIntElt                      Default: 20
Given a group G, in the category GrpPerm, GrpMat or GrpPC, construct a finitely presented group F isomorphic to G, by presenting the group on its given generators. For groups in the category GrpPerm and GrpMat, the Todd-Coxeter Schreier algorithm is used to construct the presentation and a choice of a presentation on the given generators or on the strong generators is available. In addition to returning F, the function returns an isomorphism phi: F -> G, such that phi(F.i)=G.i for all i.

If the parameter StrongGenerators is set to true (GrpPerm and GrpMat only, the presentation will be constructed on the strong generators of G instead of the given generators. If strong generators are not already known for G, they will be constructed; in this case, the other parameters are also meaningful. The parameter Random with its associated parameters Max and Run may be used to apply the Random Schreier algorithm to construct a probable BSGS before commencing the construction of the presentation.


Example Grp_CosetAction (H15E8)

> G<a, b> := Group< a, b | a^3, b^3, (b * a)^4,
>     ((b^-1)^a * b^-1)^2 * b^a * b >;
> Order(G);
168
> H := sub< G | a^2 * b^2, (a * b)^2 >;
> Index(G, H);
7
> f, L := CosetAction(G, H);   
> f;
Mapping from: GrpFP: G to GrpPerm: L
> L;
Permutation group L acting on a set of cardinality 7
    (1, 2, 3)(4, 7, 5)
    (1, 3, 4)(2, 5, 6)
> Order(L);
168
> M := SymplecticGroup(2, 4);
> #M;
60
> Ms := sub< M | M.1 * M.2 >;
> Index(M, Ms);        
12
> PG := CosetImage(M, Ms);
> PG;
Permutation group PG acting on a set of cardinality 12
    (1, 2, 4)(3, 5, 7)(6, 8, 10)(9, 11, 12)
    (1, 3, 2)(4, 6, 8)(5, 7, 9)(10, 12, 11)
> #PG;
60

Example Grp_FPGroup (H15E9)

A finitely presented group isomorphic to PSU(3, 3):

> G := PSU(3, 3);
> F<a, b>, phi := FPGroup(G);
> F;
Finitely presented group F on 2 generators
Relations
    a^8 = Id(F)
    b^8 = Id(F)
    (b * a^-1 * b)^3 = Id(F)
    b * a^-1 * b^-1 * a^-1 * b^-1 * a^-1 * b * a^-1 * b * a^-1 = Id(F)
    b^-1 * a^-2 * b^-1 * a^-2 * b^-1 * a^-1 * b^-2 * a^-1 = Id(F)
> phi(a) eq G.1 and phi(b) eq G.2;
true

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