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