Automorphism Groups

The automorphism group of a permutation group may be computed in Magma, subject to the same restrictions on the group as when computing maximal subgroups. (That is, the non-abelian composition factors of the group must appear in a certain database.) The methods used are those described in Cannon and Holt [CH03]. Isomorphism of permutation groups may also be determined using the same methods.

AutomorphismGroup(G: parameters) : GrpPerm -> GrpAuto
Compute the full automorphism group of the permutation group G.
IsIsomorphic(G, H: parameters) : GrpPerm, GrpPerm -> BoolElt, Hom(Grp)
Test whether or not the two permutation groups G and H are isomorphic as abstract groups. If so, both the result true and an isomorphism from G to H is returned. If not, the result false is returned.

Example GrpPerm_Automorphisms (H64E36)

We take some groups of order 120 and test for isomorphism.
> G1 := PermutationGroup<20 |
>  [ 2, 5, 9, 11, 12, 3, 17, 13, 18, 16, 7, 15, 10, 8, 1,
>   14, 20, 19, 6, 4 ],
>  [ 3, 6, 1, 10, 14, 2, 18, 17, 15, 4, 16, 13, 12, 5, 9,
>   11, 8, 7, 20, 19 ] >;
> #G1;
120
> G2 := PermutationGroup<24 |
>   [ 2, 4, 6, 5, 1, 7, 8, 3, 13, 15, 14, 16, 11, 9, 12, 10,
>   19, 20, 18, 17, 24, 21, 22, 23 ],
>   [ 3, 1, 2, 7, 4, 9, 5, 11, 10, 6, 12, 8, 16, 15, 18, 17,
>   13, 14, 21, 23, 22, 19, 24, 20 ],
>   [ 4, 5, 7, 1, 2, 8, 3, 6, 11, 12, 9, 10, 14, 13, 16, 15,
>   18, 17, 20, 19, 23, 24, 21, 22 ] >;
> #G2;
120
> IsIsomorphic(G1, G2);
false
> flag, isom := IsIsomorphic(G1, Sym(5));
> flag;
true
> (G1.1)@ isom;
(1, 3, 5, 4, 2)

The reader is invited to check that G2 is perfect while G1 is not, so the false result for their isomorphism is correct. What is the automorphism group of G2?

> A := AutomorphismGroup(G2);
> #A;
120
> #Centre(G2);
2
> OuterFPGroup(A);
Finitely presented group on 1 generator
Relations
  $.1^2 = Id($)
> A.1;
Automorphism of GrpPerm: G2, Degree 24, Order 2^3 * 3 * 5
which maps:
  (1, 2, 4, 5)(3, 6, 7, 8)(9, 13, 11, 14)(10, 15, 12,
    16)(17, 19, 18, 20)(21, 24, 23, 22) |--> (1, 16, 4,
    15)(2, 21, 5, 23)(3, 20, 7, 19)(6, 11, 8, 9)(10, 24, 12,
    22)(13, 17, 14, 18)
  (1, 3, 2)(4, 7, 5)(6, 9, 10)(8, 11, 12)(13, 16, 17)(14,
    15, 18)(19, 21, 22)(20, 23, 24) |--> (1, 11, 16)(2, 18,
    19)(3, 23, 6)(4, 9, 15)(5, 17, 20)(7, 21, 8)(10, 22,
    13)(12, 24, 14)
  (1, 4)(2, 5)(3, 7)(6, 8)(9, 11)(10, 12)(13, 14)(15,
    16)(17, 18)(19, 20)(21, 23)(22, 24) |--> (1, 4)(2, 5)(3,
    7)(6, 8)(9, 11)(10, 12)(13, 14)(15, 16)(17, 18)(19,
    20)(21, 23)(22, 24)
> IsInnerAutomorphism(A.4);
false

So the outer automorphism group of G2 has order 2, and A.4 gives this automorphism.

V2.28, 13 July 2023