[GAP Forum] Order of a group presentation
Hulpke,Alexander
Alexander.Hulpke at colostate.edu
Mon Sep 6 00:25:34 BST 2021
Dear Forum,
Nick Gill asked:
> I'm doing some coding where I process a long list of group presentations. For each presentation I'd like to calculate the order.
>
> My problem is that I'm not 100% sure if all of the presentations yield finite groups. I'd like to ask GAP to first check to see if the group has order less than a 1000 (say) and, if not, then skip this presentation and move onto the next one.
Derek Holt already explained very nicely how one cannot expect a general answer of a lower bound, but can only hope coset enumeration to finish.
So this is just a pointer how to do such enumeration attempts successfully in GAP without too many contortions. It uses an utility function that is part of the mechanism used by `Size`: (`Size` will try to find a cyclic subgroup of finite index and rewrite the presentation to this subgroup, then calculating the order of the subgroup.)
On your finitely presented group G call
FinIndexCyclicSubgroupGenerator(G,m);
where m is the maximal number of cosets you want to allow GAP to define. Unless your presentations are really bad, or your computer is ancient, setting m in the magnitude 10^5-10^7 should be no problem, but your mileage may vary.
If the call returns `fail`, enumerations did not finish (and `Size` is extremely unlikely to finish with this number of cosets permitted).
Otherwise the function returns a list of length 2, whose first entry is an element of G. A coset enumeration by the cyclic subgroup generated by this element was successful (and thus it is basically guaranteed that a subsequent call to `Size` will also finish if you allow for the same number of cosets.
All the best,
Alexander Hulpke
More information about the Forum
mailing list