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

Small Group Identification

This section describes some special issues arising with the identification of a finitely presented group using the database of small groups described in Section Database of Small Groups.

Subsections
IdentifyGroup(G): GrpFP -> Tup
IdentifyGroup(D, G): DB, GrpFP -> Tup
Locate the pair of integers < o, n > so that SmallGroup(o, n) is isomorphic to G. If the construction of a permutation representation for G fails or if there is no group isomorphic to G in the database, then an error will result.

When trying to look up a finitely presented group G in the database of small groups, Magma tries to construct a permutation representation of G by enumerating the cosets of the trivial subgroup in G. Assuming that a group isomorphic to G is contained in the database, the resulting coset table will be fairly small. Hence for performance reasons, a coset limit of 100.o is imposed, where o is the maximal order of groups in the database, unless the order of G is known to be less or equal to o. If, on the other hand, |G|≤o is known, the global set of parameters for implicitly invoked coset enumerations applies. This set of parameters can be changed using the function SetGlobalTCParameters.

If the coset enumeration for G fails with the coset limit 100.o, this can be seen as a reasonable indication that G is probably too large to be contained in the database of small groups.

To deal with cases where the coset enumeration fails although G is known or suspected to be small enough, it is recommended to attempt to compute the order of G using the function Order before the actual group identification. If G that way can be shown to be small enough to be contained in the database, the function SetGlobalTCParameters can be used to control the behaviour of coset enumerations in a subsequent call to IdentifyGroup. The following example illustrates this.


Example GrpFP_1_IdentifyGroup (H70E75)

Consider the group defined by the presentation < a, b | (ba - 1)3, (ba - 1b)2, a12b2a7b2ab2 >.

> G := Group<a,b | (b*a^-1)^3, (b*a^-1*b)^2,
>                  a^12*b^2*a^7*b^2*a*b^2 >;
We suspect (for some reason) that G is a small group and want to identify its isomorphism type in the database of small groups.


> IdentifyGroup(G); IdentifyGroup( G: GrpFP: G ) In file "/home/magma/package/Group/Grp/smallgps2.m", line 220, column 25: >> res := IdentifyGroup(db, G); ^ Runtime error in 'IdentifyGroup': Coset enumeration failed; group may be too large (see handbook entry for details)
The group couldn't be identified, because it was not possible to obtain a permutation representation with the default value of the coset limit.

Since we still think the group should be small, we try to prove this using the function Order.

> Order(G : Print := true);
INDEX = 6 (a=6 r=66709 h=999999 n=999999; l=1247 c=1.56; m=969169
t=999998)
6
We were correct; the group is in fact very small. However, we can see from the output of the Order command that this wasn't that easy to find out: almost one million cosets were used in the coset enumeration.

Since the order of G is now known to the system, a subsequent call to IdentifyGroup will now use the global parameters for implicitly invoked coset enumerations. To be on the safe side, we tell the system to be prepared to work a little harder using the function SetGlobalTCParameters and try again to identify G.

> SetGlobalTCParameters( : Strategy := "Hard");
>
> IdentifyGroup(G);
<6, 1>
Now G can be identified.

Concrete Representations of Small Groups

When an finitely-presented group is known to small, it may be useful to write it concretely as a permutation or PC-group. There are two utilities provided for this purpose.

PermutationGroup(G) : GrpFP -> GrpPerm, GrpHom
Construct a faithful permutation representation of G, and the isomorphism from G to the representation. The algorithm first computes the order of G, then takes the regular representation of G, and reduces the degree. Thus the command is restricted to small groups.
PCGroup(G) : GrpFP -> GrpPC, GrpHom
Construct a faithful PC-group representation of G, and the isomorphism from G to the representation. The algorithm first computes the order of G, then computes the soluble quotient of G with the order found. Thus the command is restricted to small soluble groups.
 [Next][Prev] [Right] [Left] [Up] [Index] [Root]

Version: V2.19 of Wed Apr 24 15:09:57 EST 2013