[GAP Forum] Use GAP to Compute Hom(G1, G2)?

Alexander Hulpke hulpke at math.colostate.edu
Fri Feb 8 22:37:27 GMT 2008


Dear GAP Forum,

Jeffrey Rolland asked:

> I am trying to compute the set of all homomorphisms from a group G1  
> [which is the semi-direct product of the integeres Z with the binary  
> icosahedral group P (also known as SL(2,5) and the Poincare group)]  
> to the group P (the Poincare group again) - Hom(G1, P). This sort of  
> problem seems right up GAP's alley.
>
> I have a presentatiion for G1: <z, s, t| s^3(st)^(-2), t^5(st^(-2),  
> zs(s^2ts^2t^3z)^(-1), zt(s^5ts^2tz)^(-1)>.

The easiest seems to be to find all quotients of G1 that are  
isomorphic to a subgroup of SL(2,5). (There is some redundancy in this  
and for bigger cases other methods would be better. However in this  
case everything else is far more work for the user.)

gap> f:=FreeGroup("z","s","t");
<free group on the generators [ z, s, t ]>
gap> AssignGeneratorVariables(f);
#I  Assigned the global variables [ z, s, t ]
gap> rels:=[ s^3*t^-1*s^-1*t^-1*s^-1, t^4*s^-1*t^-1*s^-1,  
z*s*z^-1*t^-3*s^-2*t^-1*s^-2,
   z*t*z^-1*t^-1*s^-2*t^-1*s^-5 ];
[ s^3*t^-1*s^-1*t^-1*s^-1, t^4*s^-1*t^-1*s^-1,  
z*s*z^-1*t^-3*s^-2*t^-1*s^-2,
   z*t*z^-1*t^-1*s^-2*t^-1*s^-5 ]
gap> G1:=f/rels;
<fp group on the generators [ z, s, t ]>

Careful: This group has no quotient isomorphic to A_5 and thus cannot  
have SL(2,5) as quotient. So its probably not the group you want.

Now create SL(2,5) as permutation group (more efficient than matrix  
form):

gap> P:=SL(2,5);
SL(2,5)
gap> P:=Image(IsomorphismPermGroup(P));
Group([ (1,2,4,8)(3,6,9,5)(7,12,13,17)(10,14,11,15)(16,20,21,24) 
(18,22,19,23),
   (1,3,7)(2,5,10)(4,9,13)(6,11,8)(12,16,20)(14,18,22)(15,19,23) 
(17,21,24) ])

All subgroups (careful: Only up to conjugacy. We will get  
homomorphisms only up to conjugacy as well!)
s:=List(ConjugacyClassesSubgroups(P),Representative);
gap> List(s,Size);
[ 1, 2, 3, 4, 5, 6, 8, 10, 12, 20, 24, 120 ]

Now for each subgroup find the epimorphisms, together they are all  
homomorphisms:
gap> q:=List(s,i->GQuotients(G1,i));
[ [ [ z, s, t ] -> [ (), (), () ] ],
   [ [ z, s, t ] -> [ (1,4)(2,8)(3,9)(5,6)(7,13)(10,11)(12,17)(14,15) 
(16,
             21)(18,19)(20,24)(22,23), (), () ] ],
   [ [ z, s, t ] -> [ (1,3,7)(2,5,10)(4,9,13)(6,11,8)(12,16,20) 
(14,18,22)(15,
             19,23)(17,21,24), (), () ] ],
   [ [ z, s, t ] -> [ (1,2,4,8)(3,6,9,5)(7,12,13,17)(10,14,11,15) 
(16,20,21,
             24)(18,22,19,23), (), () ] ],
   [ [ z, s, t ] -> [ (3,13,23,21,15)(5,11,20,19,12)(6,10,24,18,17) 
(7,22,16,14,
             9), (), () ] ],
   [ [ z, s, t ] -> [ (1,9,7,4,3,13)(2,6,10,8,5,11)(12,21,20,17,16,24) 
(14,19,
             22,15,18,23), (), () ] ], [  ],
   [ [ z, s, t ] -> [ (1,4)(2,8)(3,7,23,16,15,9,13,22,21,14) 
(5,10,20,18,12,6,
             11,24,19,17), (), () ] ], [  ], [  ], [  ], [  ] ]
gap> List(q,Length);
[ 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0, 0 ]


Again, this is for the presentation you gave which I think is not the  
group you want. In any case these are the commands you need in GAP.

Best,

    Alexander Hulpke







-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke




More information about the Forum mailing list