[Next] [Prev] [Right] [Left] [Up] [Index] [Root]
Standard Subgroup Constructions

Standard Subgroup Constructions

H ^ g : GrpPerm, GrpPermElt -> GrpPerm
Conjugate(H, g) : GrpPerm, GrpPermElt -> GrpPerm
Construct the conjugate g^(-1) * H * g of the permutation group H by the permutation g. The group H and the element g must belong to the same symmetric group.
H meet K : GrpPerm, GrpPerm -> GrpPerm
Given groups H and K which belong to the same symmetric group, construct the intersection of H and K.
CommutatorSubgroup(G, H, K) : GrpPerm, GrpPerm, GrpPerm -> GrpPerm
CommutatorSubgroup(H, K) : GrpPerm, GrpPerm -> GrpPerm
Given groups H and K, both subgroups of the group G, construct the commutator subgroup of H and K in the group G. If K is a subgroup of H, then the group G may be omitted.
Centralizer(G, g) : GrpPerm, GrpPermElt -> GrpPerm
Centraliser(G, g) : GrpPerm, GrpPermElt -> GrpPerm
Construct the centralizer of the permutation g in the group G; g and G must belong to a common symmetric group.
Centralizer(G, H) : GrpPerm, GrpPerm -> GrpPerm
Centraliser(G, H) : GrpPerm, GrpPerm -> GrpPerm
Construct the centralizer of the group H in the group G; G and H must belong to a common symmetric group.
Core(G, H) : GrpPerm, GrpPerm -> GrpPerm
Given a subgroup H of the permutation group G, construct the maximal normal subgroup of G that is contained in the subgroup H.
H ^ G : GrpPerm, GrpPerm -> GrpPerm
NormalClosure(G, H) : GrpPerm, GrpPerm -> GrpPerm
Given a subgroup H of the permutation group G, construct the normal closure of H in G.
Normalizer(G, H) : GrpPerm, GrpPerm -> GrpPerm
Normaliser(G, H) : GrpPerm, GrpPerm -> GrpPerm
Given a subgroup H of the group G, construct the normalizer of H in G.
pCore(G, p) : GrpPerm, RngIntElt -> GrpPerm
Given a group G and a prime p dividing the order of G, construct the maximal normal p-subgroup of G.
SymmetricNormalizer(G) : GrpPerm -> GrpPerm
SymmetricNormaliser(G) : GrpPerm -> GrpPerm
Given a permutation group G acting on the set X, return the normalizer of G in the symmetric group on X. This function uses a different algorithm to the standard normalizer function.
SylowSubgroup(G, p) : GrpPerm, RngIntElt -> GrpPerm
Sylow(G, p) : GrpPerm, RngIntElt -> GrpPerm
Given a group G and a prime p, construct a Sylow p-subgroup of G.

Example GrpPerm_SubgroupConstructions (H20E16)

> M := PermutationGroup< 30 |
>         (1,2,3)(4,14,8)(5,15,9)(6,13,7)(25,27,26),
>         (4,20,13)(5,21,14)(6,19,15)(16,17,18)(27,28,29),
>         (1, 15)(2, 13)(3, 14)(4, 22)(5, 23)(6, 24)(7, 18)(8, 16)
>           (9, 17)(10, 21)(11, 19)(12, 20)(25, 29)(26, 27)(28, 30) >;
> FactoredOrder(M);
[ <2, 8>, <3, 10>, <5, 1> ]
> S2 := SylowSubgroup(M, 2);
> S2;
Permutation group S2 acting on a set of cardinality 30
Order = 256 = 2^8
    (1, 10)(2, 11)(3, 12)(4, 8)(5, 9)(6, 7)(13, 19)(14, 20)(15, 21)
        (16, 22)(17, 23)(18, 24)
    (1, 24)(2, 22)(3, 23)(4, 14)(5, 15)(6, 13)(7, 19)(8, 20)(9, 21)
        (10, 18)(11, 16)(12, 17)
    (4, 8)(5, 9)(6, 7)(13, 19)(14, 20)(15, 21)
    (4, 14)(5, 15)(6, 13)(7, 19)(8, 20)(9, 21)(25, 26)(29, 30)
    (1, 4)(2, 5)(3, 6)(7, 12)(8, 10)(9, 11)(13, 23)(14, 24)(15, 22)
        (16, 21)(17, 19)(18, 20)(25, 26)
    (27, 28)(29, 30)
    (27, 29)(28, 30)
    (25, 26)(29, 30)
> /*
>  We try to find a second Sylow subgroup S2a that has trivial intersection
> with S2.
> */
> b := exists(t){ x : x in M | Order(S2 meet S2^x) eq 1 };
> b;
true
> S2a := S2^t;
> N := Normalizer(M, S2);
> N;
Permutation group N acting on a set of cardinality 30
Order = 768 = 2^8 * 3
    (4, 8)(5, 9)(6, 7)(13, 19)(14, 20)(15, 21)
    (4, 14)(5, 15)(6, 13)(7, 19)(8, 20)(9, 21)
    (1, 10)(2, 11)(3, 12)(4, 8)(5, 9)(6, 7)(13, 19)(14, 20)(15, 21)
        (16, 22)(17, 23)(18, 24)
    (1, 24)(2, 22)(3, 23)(4, 14)(5, 15)(6, 13)(7, 19)(8, 20)(9, 21)
        (10, 18)(11, 16)(12, 17)
    (1, 22, 12)(2, 23, 10)(3, 24, 11)(4, 21, 13)(5, 19, 14)(6, 20, 15)
        (7, 8, 9)(16, 17, 18)
    (27, 29)(28, 30)
    (1, 14, 24, 4)(2, 15, 22, 5)(3, 13, 23, 6)(7, 12, 19, 17)(8, 10, 20, 18)
        (9, 11, 21, 16)(29, 30)
    (4, 14)(5, 15)(6, 13)(7, 19)(8, 20)(9, 21)(25, 26)(29, 30)
    (27, 28)(29, 30)
> /* Thus the Sylow 2-subgroup is normalized by an element of order 3.
>
> We look for a 2-central element by searching the centre of the Sylow
> 2-subgroup.
> */
> b := exists(t){ x : x in Centre(S2) |
>                     x ne Id(M) and Index(M, Centralizer(M, x)) mod 2 ne 0 };
> b, t;
true  (27, 28)(29, 30)
> // Thus (27, 28)(29, 30) is 2-central in M.
> /*
> We now calculate the maximal normal p-subgroups for each prime p
> dividing the order of M
> */
> Ops := [ pCore(M, p) : p in PrimeBasis(Order(M)) ];
> Ops;
[
    Permutation group acting on a set of cardinality 30
    Order = 1
        Id($),
    Permutation group acting on a set of cardinality 30
    Order = 729 = 3^6
        (1, 3, 2)(22, 23, 24)
        (4, 5, 6)(19, 21, 20)
        (7, 9, 8)(19, 20, 21)
        (10, 12, 11)(22, 23, 24)
        (13, 15, 14)(19, 20, 21)
        (16, 18, 17)(22, 23, 24),
    Permutation group acting on a set of cardinality 30
    Order = 1
        Id($)
]
> /*
> Thus O_3(M) is the only non-trivial p-core of M.
> */

[Next] [Prev] [Right] [Left] [Up] [Index] [Root]