A workaround is to use GAP facilities to encode a pc group using a pair of 
integers.
Cutting from the GAP manual on CodePcgs

gap> G := SmallGroup( 24, 12 );;
gap> p := Pcgs( G );;
gap> code := CodePcgs( p );
5790338948
gap> H := PcGroupCode( code, 24 );
<pc group of size 24 with 4 generators>
gap> map := GroupHomomorphismByImages( G, H, p, FamilyPcgs(H) );
Pcgs([ f1, f2, f3, f4 ]) -> Pcgs([ f1, f2, f3, f4 ])
gap> IsBijective(map);
true

That is, in Sage you'd do
sage: G = gap.SmallGroup( 24, 12 )
sage: code=gap.CodePcgs(gap.Pcgs( G ))
sage: code
5790338948

(and you can easily store 24 and 5790338948), and then recover them:
sage: gap.PcGroupCode(code,24)
Group( [ f1, f2, f3, f4 ] )

HTH,
Dima


-- 
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel+unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to