Dear GAP Forum, Dear Vipul,

When you give GAP a finite presentation for a group it does not immediately 
know that the group is finite let alone a p-group and so it will not always 
choose the best methods for computing in the group. In this case, it ends up 
very inefficiently trying to compute the index of one subgroup in another using 
presentations and runs out of memory.

You can make things better by first asking GAP to compute the size of the whole 
group.
Once that completes GAP knows that the group is finite and chooses better 
algorithms. So

gap> 
g:=f/[f.1^7,f.2^7,f.3^(7^3),f.1^-1*f.2^-1*f.1*f.2*(f.3^-1)^49,f.1^-1*f.3^-1*f.1*f.3,f.$
<fp group on the generators [ f1, f2, f3 ]>
gap> Size(g);                            
16807
gap> ConjugacyClassesMaximalSubgroups(g);;

completes for me in a few seconds.

This is still not the best way to work in this group g though.

In general if you know that a group is finite soluble, you are best 
representing it as what is called a “pc-group”. You can find lots of 
information about this representation in (e.g.) (Rick, Holt & O’Brien’s book).

In GAP terms this is :
gap> phi := IsomorphismPcGroup(g);                                              
            
[ f1, f2, f3 ] -> [ f1, f2, f3 ]
gap> g2 := ImagesSource(phi);
Group([ f1, f2, f3 ])
gap> ConjugacyClassesMaximalSubgroups(g2);; 

The first line takes a few seconds, but after that computations in g2 are very 
fast (e.g. the maximal subgroups computation takes 12 ms).

In fact in this case, since your presentation is basically in power-commutator 
form anyway, you can use 

 g2 := RefinedPcGroup(PcGroupFpGroup(g)); 


to avoid the relatively slow computation of phi.

        Steve




> On 1 Oct 2015, at 11:22, Vipul Kakkar <vplkak...@gmail.com> wrote:
> 
> Dear Members
> 
> I am trying following calculation in GAP
> f:=FreeGroup(3);
> g:=f/[f.1^7,f.2^7,f.3^(7^3),f.1^-1*f.2^-1*f.1*f.2*(f.3^-1)^49,f.1^-1*f.3^-1*f.1*f.3,f.2^-1*f.3^-1*f.2*f.3];
> 
> The order of g is 7^5. I tried to find the maximal subgroups or all
> Subgroups of g, but I get following error
> 
> Error, the coset enumeration has defined more than 16384000 cosets
> called from
> TCENUM.CosetTableFromGensAndRels( fgens, grels, fsgens ) called from
> CosetTableFromGensAndRels( fgens, grels, fsgens ) called from
> TryCosetTableInWholeGroup( H ) called from
> CosetTableInWholeGroup( H ) called from
> IndexInWholeGroup( H ) called from
> ...  at line 8 of *stdin*
> type 'return;' if you want to continue with a new limit of 32768000 cosets,
> type 'quit;' if you want to quit the coset enumeration,
> type 'maxlimit := 0; return;' in order to continue without a limit
> 
> Why is it coming?
> How can I get rid of this situation and how to find them?
> 
> 
> with regards
> 
> Vipul Kakkar
> _______________________________________________
> Forum mailing list
> Forum@mail.gap-system.org
> http://mail.gap-system.org/mailman/listinfo/forum


_______________________________________________
Forum mailing list
Forum@mail.gap-system.org
http://mail.gap-system.org/mailman/listinfo/forum

Reply via email to