semidirect product of matrix group in GAP I am new in gap, please accept my apologize because of asking some simple questions. I want to know if we have two general linear groups, is it possible to make the semidirect product of them in gap. I have read GAP semidirect product algorithm and Semidirect Products with GAP.
 A: Please see the Chapter "Group Products" from the GAP reference manual for further details. In particular, there is an operation SemidirectProduct and you should be looking at its three-argument version. In general, you have to know in which way one group acts on another, since different actions may lead to different semidirect products. In this case, however, there is only one way to do this, since there is only one possible homomorphism from G to Aut(N), and the construction may be seen from the following example:
gap> G:=GL(3,2); N:=GL(2,2);
SL(3,2)
SL(2,2)
gap> A:=AutomorphismGroup(N);
<group of size 6 with 2 generators>
gap> h:=AllHomomorphisms(G,A);
[ CompositionMapping( [ (5,7)(6,8), (2,3,5)(4,7,6) ] -> 
    [ IdentityMapping( SL(2,2) ), IdentityMapping( SL(2,2) ) ],
     <action isomorphism> ) ]
gap> Length(h);
1
gap> SemidirectProduct(G,h[1],N);
Group([ (9,10), (8,10,9), (4,6)(5,7), (1,2,4)(3,6,5) ])

But now let us look at the homomorphism h[1] - it maps each element of G into the trivial homomorphism of N. So, what you get here is just a direct product of the two groups:
gap> Image(h[1]);
<group of size 1 with 2 generators>
gap> Size(last);
1
gap> StructureDescription(S);
"S3 x PSL(3,2)"
gap> StructureDescription(DirectProduct(G,N));
"PSL(3,2) x S3"

BTW, you may also try to search in the GAP Forum archives using this link.
