[GAP Forum] Subgroup of PcGroup

Stefan Kohl kohl at mathematik.uni-stuttgart.de
Thu Mar 10 11:19:48 GMT 2005


Dear Forum,

Rashid Ali wrote:

> I am working on computation of self connected Transversals.
 >
 > In order to display elements of transversals in an order in powers
 > of I used its PolyCyclic group. The groups that i am working on are
 > 2-group [(2x2x2)x2]x7 of order 112, 3-group [(3x3)x3]x4 of order 108
 > and 4-group [(4x4x4)x4]x7 of order 1792.
 >
> The problem is solved for 2-group by using following commands in GAP:
 >
> gap> F:=FreeGroup("b","u","v","w","z");;
> gap> AssignGeneratorVariables(F);;
> gap> rels:=[b^7,u^2,v^2,w^2,z^2,Comm(u,b)/(v*u),Comm(v,b)/(v*w),
 >             Comm(w,b)/(u*v*w),Comm(z,b),Comm(v,u),Comm(w,u),Comm(w,v),
 >             Comm(z,v),Comm(z,w)];;
> gap> G:=F/rels;
> <fp group on the generators [ b, u, v, w, z ]>
> gap> OG:=Order(G);
> 112
> gap> Gpol:=PcGroupFpGroup(G);
> <pc group of size 112 with 5 generators>
> gap> OGpol:=Order(Gpol);
> 112
> gap> AssignGeneratorVariables(Gpol);
> gap> Hpol:=Subgroup(Gpol,[u,v,w*z]);
> Group([ u, v, w*z ])
> gap> OH:=Order(Hpol);
> 8
> And then I found 64 self-connected transversals and
 > 256 H-connected transversals.
> 
> But when I used these commands for 3-group, the last command and
 > all other command related to the subgroup of PcGroup G return
 > an error message given below:
> 
> gap> F:=FreeGroup( "b","u","v", "z");;
> gap> AssignGeneratorVariables(F);;
> gap> relators:=[b^4,u^3,v^3,z^3,u^b*v, v^b/u, Comm(u,v),Comm(u,z),Comm(v,z),Comm(b,z)];;
> gap> G:=F/relators;;
> gap> OG:=Order(G);
> 108
> gap> Gpoly:=PcGroupFpGroup(G);
> <pc group of size 108 with 4 generators>
> gap> AssignGeneratorVariables(Gpoly);;
> gap> Hpoly:=Subgroup(Gpoly,[u,v*z]);
> Group([ u, v*z ])
> gap> OH:=Order(Hpoly);
> Error, no method found! For debugging hints type ?Recovery from NoMethodFound
> Error, no 2nd choice method found for `InducedPcgsByGeneratorsNC' on 2 argumen\
> ts called from
> InducedPcgsByGeneratorsNC( pcgs, gens ) called from
> InducedPcgsByGenerators( pa, GeneratorsOfGroup( grp ) ) called from
> Pcgs( grp ) called from
> <function>( <arguments> ) called from read-eval-loop
> Entering break read-eval-print loop ...
> you can 'quit;' to quit to outer loop, or
> you can 'return;' to continue
> brk>
> Although GAP calculates order of the generators of subgroup H i.e.
 > Order(u) = 3 and Order(v*z) =3, but it cannot calculate order of H.
> 
> Could you please help me how to resolve this problem or suggest
 > me some other possibility for writing elements of the transversals
 > in some systematic order for example in ascending positive powers of 'b'.

After issueing the command

Gpoly:=PcGroupFpGroup(G);

GAP prints the following warning (of course unless you have
switched off warnings by SetInfoLevel(InfoWarning,0)):

#I  You are creating a Pc group with non-prime relative orders.
#I  Many algorithms require prime relative orders.
#I  Use `RefinedPcGroup' to convert.

This gives you a hint on what to do.

Your example works if you proceed as follows:

gap> F := FreeGroup("b","u","v","z");;
gap> AssignGeneratorVariables(F);;
gap> relators := [b^4,u^3,v^3,z^3,u^b*v,v^b/u,Comm(u,v),Comm(u,z),Comm(v,z),Comm(b,z)];;
gap> G := F/relators;;
gap> OG := Size(G);
108
gap> Gpoly := PcGroupFpGroup(G);
#I  You are creating a Pc group with non-prime relative orders.
#I  Many algorithms require prime relative orders.
#I  Use `RefinedPcGroup' to convert.
<pc group of size 108 with 4 generators>
gap> AssignGeneratorVariables(Gpoly);;
gap> Gpoly_r := RefinedPcGroup(Gpoly);
<pc group of size 108 with 5 generators>
gap> phi := IsomorphismRefinedPcGroup(Gpoly);
[ b, b^2, u, v, z ] -> Pcgs([ f1, f2, f3, f4, f5 ])
gap> Hpoly := Subgroup(Gpoly_r,[Image(phi,u),Image(phi,v*z)]);
Group([ f3, f4*f5 ])
gap> OH := Size(Hpoly);
9

Hope this helps,

     Stefan Kohl






More information about the Forum mailing list