I have trouble with the SemiDirect product construction, especially in the definition of morphisms between groups.
It would be great if someone could tell me what went wrong in the following example where I try to construct a semi-direct product extension using a cyclic group.
Felix
G:=SmallGroup(120, 34);
Cl:=Classes(G);
test:=sub<G |Cl[2][3],Cl[4][3],Cl[5][3],Cl[6][3],Cl[7][3]>;
Order(test) eq Order(G) ;
n:=PermutationGroup< 5 | (1,2,3,4,5)>;;
au:=AutomorphismGroup(n);
au.2;
Order(au.2);
phi := hom< G->au | [G!Cl[2][3] -> au.1, G!Cl[4][3] -> au.1,
G!Cl[5][3] -> au.2, G!Cl[6][3] -> au.1, G!Cl[7][3] -> au.1] >;
phi(Random(test));
SemidirectProduct(n,G,phi);
//gives
SemidirectProduct(
K: GrpPerm: K, Degree 5, Order 5,
H: GrpPerm: H, Degree 5, Order 2^3 * 3 * 5,
phi: Homomorphism of GrpPerm: H, Degree 5, Order 2^3 * 3 * 5 into...
)
In file "/Applications/Magma/package/Group/GrpFin/semidirect_product.m", line 155, column 22:
>> faithful := #Kernel(pr) eq 1;
^
Runtime error in 'Kernel': Not a homomorphism: image, kernel, domain orders incompatible
SemiDirect Product
Re: SemiDirect Product
Sorry, my mistake. It turns out that the homomorphism "phi" is not an homomorphims (even if it can be applied to an element). If I use the information of a linear character of G to define the homomorphism correctly, then it works:
G:=SmallGroup(120, 34);
Cl:=Classes(G);
n:=PermutationGroup< 5 | (1,2,3,4,5)>;;
au:=AutomorphismGroup(n);
au.2;
Order(au.2);
phi := hom< G->au | [G!Cl[2][3] -> (au.2)^2, G!Cl[3][3] -> au.1, G!Cl[4][3] -> au.1,
G!Cl[5][3] -> (au.2)^2, G!Cl[6][3] -> au.1, G!Cl[7][3] -> (au.2)^2] >;
phi(Random(test));
SemidirectProduct(n,test,phi);
This way to use linear characters to define semi-direct products could be formalized and given in the handbook. It would cover the very small groups and be useful for teaching.
Felix
G:=SmallGroup(120, 34);
Cl:=Classes(G);
n:=PermutationGroup< 5 | (1,2,3,4,5)>;;
au:=AutomorphismGroup(n);
au.2;
Order(au.2);
phi := hom< G->au | [G!Cl[2][3] -> (au.2)^2, G!Cl[3][3] -> au.1, G!Cl[4][3] -> au.1,
G!Cl[5][3] -> (au.2)^2, G!Cl[6][3] -> au.1, G!Cl[7][3] -> (au.2)^2] >;
phi(Random(test));
SemidirectProduct(n,test,phi);
This way to use linear characters to define semi-direct products could be formalized and given in the handbook. It would cover the very small groups and be useful for teaching.
Felix
Re: SemiDirect Product
I think you are posting to the wrong Magma project. You probably mean
http://magma.maths.usyd.edu.au/magma/
instead of
http://icl.utk.edu/magma/
-mark
http://magma.maths.usyd.edu.au/magma/
instead of
http://icl.utk.edu/magma/
-mark