The derived series of the group G. The series is returned as a sequence of subgroups. The algorithm used is described in [BC82].
A composition series of the group G, ie. a descending chain of normal subgroups, such that each quotient is a simple group. The series is returned as a sequence of subgroups.
The derived subgroup of the group G.
The solvable residual (the last term of the derived series) of the group G.
The derived length of G. If G is non-soluble, the function returns the number of terms in the series terminating with the soluble residual.
The lower central series of G. The series is returned as a sequence of subgroups, the first of which is the group G. The algorithm used is described in [BC82].
The nilpotency class of the group G. If the group is not nilpotent, the value -1 is returned.
The upper central series of G. The series is returned as a sequence of subgroups commencing with the trivial subgroup. The algorithm used is to compute the centre of G and then section centralisers (see [Luk93]) up the chain. This requires computing cores of subgroups, so this function is more restricted in its range of application than DerivedSeries and LowerCentralSeries.
Construct the centre of the group G. The centre is found by applying the function CentralizerOfNormalSubgroup to G in G.
Construct the hypercentre of the group G (the stationary term of the upper central series).
Given a group G and a prime p, construct the maximal normal p-subgroup of G. The algorithm employed is described in Unger [Ung06b].
Given a group G and a prime p, construct the quotient of G by K := pCore(G, p). The return values are the quotient, Q, represented as a permutation group of the same degree as G, the quotient map from G onto Q, and K.
The Fitting subgroup of the group G. It is computed as the product of the p-cores of the radical of G.
Given a group G, return the Frattini subgroup. For p-groups this is computed as the derived group with pth powers of the generators added. Solvable groups are converted to their GrpPC representation and the problem solved there. Non-solvable groups are treated by finding their maximal subgroups and forming the intersection, so are subject to the same restrictions as the MaximalSubgroups command.
Given a p-group G, return the Jennings series for G. The series is returned as a sequence of subgroups.
Given a soluble group G, and a prime p dividing |G|, return the lower p-central series for G. The series is returned as a sequence of subgroups.
Given a group G and a subnormal subgroup H of G, return a sequence of subgroups commencing with G and terminating with H, such that each subgroup is normal in the previous one. If H is not subnormal in G, the empty sequence is returned.
> G := WreathProduct(Sym(4), DihedralGroup(4)); > G; Permutation group G acting on a set of cardinality 16 (1, 5, 9, 13)(2, 6, 10, 14)(3, 7, 11, 15)(4, 8, 12, 16) (1, 13)(2, 14)(3, 15)(4, 16)(5, 9)(6, 10)(7, 11)(8, 12) (1, 2, 3, 4) (1, 2) > [ FactoredOrder(H) : H in DerivedSeries(G) ]; [ [ <2, 15>, <3, 4> ], [ <2, 12>, <3, 4> ], [ <2, 9>, <3, 4> ], [ <2, 8>, <3, 4> ], [ <2, 8> ], [] ] > DerivedLength(G); 5 > [ FactoredOrder(H) : H in LowerCentralSeries(G) ]; [ [ <2, 15>, <3, 4> ], [ <2, 12>, <3, 4> ], [ <2, 10>, <3, 4> ], [ <2, 9>, <3, 4> ], [ <2, 8>, <3, 4> ] ] > NilpotencyClass(G); -1 > Centre(G); Permutation group acting on a set of cardinality 16 Order = 1 Id($) > pCentralSeries(G, 2); [ [ <2, 15>, <3, 4> ], [ <2, 12>, <3, 4> ], [ <2, 10>, <3, 4> ], [ <2, 9>, <3, 4> ], [ <2, 8>, <3, 4> ] ] > [ FactoredOrder(H) : H in pCentralSeries(G, 3) ]; [ [ <2, 15>, <3, 4> ] ]
A maximal normal subgroup of G. The trivial subgroup is returned if G is simple. The algorithm takes homomorphic reductions to a primitive group and then uses O'Nan-Scott type considerations to get its result.
The minimal normal subgroups of G. These are obtained by first computing the socle of G and then splitting off the normal factors.
The normal subgroups of G. These are determined by the method of Cannon and Souvignier [CS].
The normal subgroup lattice of G. The subgroups are first found using the same algorithm as the function NormalSubgroups and then inclusions are determined.
> G := WreathProduct(Sym(8), DihedralGroup(4)); > Order(G); 21143266346926080000 > time N := NormalSubgroups(G); Time: 1.050 > #N; 29 > [ < Order(H`subgroup), FactoredOrder(H`subgroup) > : H in N ]; [ <1, []>, <165181768335360000, [ <2, 24>, <3, 8>, <5, 4>, <7, 4> ]>, <330363536670720000, [ <2, 25>, <3, 8>, <5, 4>, <7, 4> ]>, <660727073341440000, [ <2, 26>, <3, 8>, <5, 4>, <7, 4> ]>, <1321454146682880000, [ <2, 27>, <3, 8>, <5, 4>, <7, 4> ]>, <1321454146682880000, [ <2, 27>, <3, 8>, <5, 4>, <7, 4> ]>, <1321454146682880000, [ <2, 27>, <3, 8>, <5, 4>, <7, 4> ]>, <2642908293365760000, [ <2, 28>, <3, 8>, <5, 4>, <7, 4> ]>, <2642908293365760000, [ <2, 28>, <3, 8>, <5, 4>, <7, 4> ]>, <2642908293365760000, [ <2, 28>, <3, 8>, <5, 4>, <7, 4> ]>, <2642908293365760000, [ <2, 28>, <3, 8>, <5, 4>, <7, 4> ]>, <2642908293365760000, [ <2, 28>, <3, 8>, <5, 4>, <7, 4> ]>, <2642908293365760000, [ <2, 28>, <3, 8>, <5, 4>, <7, 4> ]>, <2642908293365760000, [ <2, 28>, <3, 8>, <5, 4>, <7, 4> ]>, <5285816586731520000, [ <2, 29>, <3, 8>, <5, 4>, <7, 4> ]>, <5285816586731520000, [ <2, 29>, <3, 8>, <5, 4>, <7, 4> ]>, <5285816586731520000, [ <2, 29>, <3, 8>, <5, 4>, <7, 4> ]>, <5285816586731520000, [ <2, 29>, <3, 8>, <5, 4>, <7, 4> ]>, <5285816586731520000, [ <2, 29>, <3, 8>, <5, 4>, <7, 4> ]>, <5285816586731520000, [ <2, 29>, <3, 8>, <5, 4>, <7, 4> ]>, <5285816586731520000, [ <2, 29>, <3, 8>, <5, 4>, <7, 4> ]>, <10571633173463040000, [ <2, 30>, <3, 8>, <5, 4>, <7, 4> ]>, <10571633173463040000, [ <2, 30>, <3, 8>, <5, 4>, <7, 4> ]>, <10571633173463040000, [ <2, 30>, <3, 8>, <5, 4>, <7, 4> ]>, <10571633173463040000, [ <2, 30>, <3, 8>, <5, 4>, <7, 4> ]>, <10571633173463040000, [ <2, 30>, <3, 8>, <5, 4>, <7, 4> ]>, <10571633173463040000, [ <2, 30>, <3, 8>, <5, 4>, <7, 4> ]>, <10571633173463040000, [ <2, 30>, <3, 8>, <5, 4>, <7, 4> ]>, <21143266346926080000, [ <2, 31>, <3, 8>, <5, 4>, <7, 4> ]> ]
Given a group G, return a sequence of the isomorphism types <f, d, q, m> of the chief factors. An isomorphism type in a chief factor should be understood as the direct product of m copies of the simple group described by <f, d, q> (see CompositionFactors below). For the algorithm, see Unger [Ung].
Given a group G, return the chief series of G and a sequence of the corresponding isomorphism types <f, d, q, m> of the chief factors. An isomorphism type in a chief factor should be understood as the direct product of m copies of the simple group described by <f, d, q> (see CompositionFactors below). The series will be organised to include the soluble radical of G, and, if G is insoluble, the socle of the quotient of G by the soluble radical.
Given a permutation group G, return a sequence S of tuples that represent the composition factors of G, ordered according to some composition series of G. Each tuple is a triple of integers f, d, q that defines the isomorphism type of the corresponding composition factor. A triple < f, d, q > describes a simple group as follows. The integer f defines the family to which the group belongs, and d and q are the parameters of the family. The length of the sequence S is the number of composition factors of G. The algorithm used is the "tabular" algorithm of Kantor [Kan91], extended to be valid for groups of degree ≤230.The families are: f family name ------------------------- 1 A(d, q) 2 B(d, q) 3 C(d, q) 4 D(d, q) 5 G(2, q) 6 F(4, q) 7 E(6, q) 8 E(7, q) 9 E(8, q) 10 2A(d, q) 11 2B(2, q) 12 2D(d, q) 13 3D(4, q) 14 2G(2, q) 15 2F(4, q) 16 2E(6, q) 17 Alternating(d) 18 Sporadic group --- see next list 19 Cyclic(q) For f=18, the sporadic groups are: d group name ------------------------- 1 M_11 2 M_12 3 M_22 4 M_23 5 M_24 6 J_1 7 HS 8 J_2 9 McL 10 Suz 11 J_3 12 Co_1 13 Co_2 14 Co_3 15 He 16 Fi_22 17 Fi_23 18 Fi_24 19 Ly 20 Ru 21 ON 22 Th 23 HN 24 BM 25 M 26 J_4
> G := sub<Sym(48) | > (1,3,8,6)(2,5,7,4)(9,48,15,12)(10,47,16,13)(11,46,17,14), > (6,15,35,26)(7,22,34,19)(8,30,33,11)(12,14,29,27)(13,21,28,20), > (1,12,33,41)(4,20,36,44)(6,27,38,46)(9,11,26,24)(10,19,25,18), > (1,24,40,17)(2,18,39,23)(3,9,38,32)(41,43,48,46)(42,45,47,44), > (3,43,35,14)(5,45,37,21)(8,48,40,29)(15,17,32,30)(16,23,31,22), > (24,27,30,43)(25,28,31,42)(26,29,32,41)(33,35,40,38)(34,37,39,36) > >; > FactoredOrder(G); [ <2, 27>, <3, 14>, <5, 3>, <7, 2>, <11, 1> ] > CompositionFactors(G); G | Cyclic(2) * | Alternating(12) * | Cyclic(2) * | Cyclic(2) * | Cyclic(2) * | Cyclic(2) * | Cyclic(2) * | Cyclic(2) * | Cyclic(2) * | Cyclic(2) * | Cyclic(2) * | Cyclic(2) * | Cyclic(2) * | Alternating(8) * | Cyclic(3) * | Cyclic(3) * | Cyclic(3) * | Cyclic(3) * | Cyclic(3) * | Cyclic(3) * | Cyclic(3) 1
Given an abelian group G, return a sequence Q containing the types of each p-primary component of G. The non-primary form gives the Smith form invariants, i.e. each element of the sequence divides the next.
Given an abelian group G, return sequences B and I where I contains the types of each p-primary component of G and B contains corresponding elements of G which have the order given and generate G. The non-primary form uses the Smith form invariants, i.e. each element of the sequence divides the next.
The socle of the group G. This is computed using the algorithms described in Cannon and Holt [CH97], extended to apply to all degrees up to 230.
A simple factor of the socle of the group G.
The simple factors of the socle of the group G. The index of each factor in the sequence corresponds to the points of the image group of SocleAction and SocleImage.
A chain of subgroups S1, S1 x S2, ..., S1 x ... x Sr, where S1, ..., Sr are the simple factors of the socle of the primitive group G.
The elementary abelian regular normal subgroup (EARNS) of the primitive group G. If G does not have an EARNS, then the trivial subgroup is returned. The algorithm used is that of Neumann [Neu86].
The affine general linear group of the elementary abelian group E, regarded as a vector space over the field GF(p), where p is the exponent of E.
Decide if the permutation group G is of primitive affine type. If so, the elementary abelian regular normal subgroup of G is returned as second return value. If the group G is either intransitive or transitive and imprimitive or primitive and not of affine type, then the result will be false (only). This function combines IsTransitive, IsPrimitive and EARNS.
Given a primitive group G which has a non-trivial elementary abelian regular normal subgroup A, construct the representation of G given by the action of G on elements of the elementary abelian group A. The image is realised as a point-stabilizer in G and the kernel of the action is A. As with the other action functions, AffineAction returns the homomorphism, the image and the kernel of the action.
Given a primitive group G which has an elementary abelian regular normal subgroup A, construct the permutation group that results from the action of G on elements of the elementary abelian group A. This image is realised as a point-stabilizer in G.
Given a primitive group G which has a non-trivial elementary abelian regular normal subgroup A, construct the kernel of the action of G on elements of the elementary abelian group A. This kernel equals A.
Given a non-trivial permutation group G which has trivial Fitting subgroup, construct the permutation representation of G given by the action of G on the simple factors of N. Note that a primitive group has a perfect socle if and only if it has no elementary abelian regular normal subgroup. As with the other action functions, SocleAction returns the homomorphism, the image and the kernel of the action. The socle factor corresponding to point i in the support of the image group is the ith element in the sequence SocleFactors(G).
Given a non-trivial permutation group G which has trivial Fitting subgroup, construct the permutation group L induced by the action of G on the simple factors of N.
Given a non-trivial permutation group G which has trivial Fitting subgroup, construct the kernel of the action of G on the simple factors of N.
Given a permutation group G which has trivial Fitting subgroup, construct a permutation representation of G/N. If Ui denote the simple factors of N, then the degree of the result is bounded by ∑i |Out(Ui)| (see Cannon and Souvignier [CS]). Note that a primitive group has a perfect socle if and only if it has no elementary abelian regular normal subgroup. SocleQuotient returns G/N, the quotient homomorphism and the kernel of the map (which is the socle of G).
Given M, N normal subgroups of G with N < M, return a sequence of G-normal subgroups L1, ..., Lr with N = L0, Li < Li + 1 and Lr = M such that each of the quotients Li + 1/Li is either elementary abelian or a direct product of non-abelian simple groups.
> G := PrimitiveWreathProduct(Sym(5), Sym(3)); > FactoredOrder(G); [ <2, 10>, <3, 4>, <5, 3> ] > E := EARNS(G); > E; Permutation group E acting on a set of cardinality 125 Order = 1 > DerivedSeries(G); [ Permutation group G acting on a set of cardinality 125 Order = 10368000 = 2^10 * 3^4 * 5^3 Permutation group acting on a set of cardinality 125 Order = 2592000 = 2^8 * 3^4 * 5^3, Permutation group acting on a set of cardinality 125 Order = 864000 = 2^8 * 3^3 * 5^3, Permutation group S acting on a set of cardinality 125 Order = 216000 = 2^6 * 3^3 * 5^3 ] > S := Socle(G); > S; Permutation group S acting on a set of cardinality 125 Order = 216000 = 2^6 * 3^3 * 5^3 > Q := SocleFactors(G); > Q; [ Permutation group acting on a set of cardinality 125 Order = 60 = 2^2 * 3 * 5, Permutation group acting on a set of cardinality 125 Order = 60 = 2^2 * 3 * 5, Permutation group acting on a set of cardinality 125 Order = 60 = 2^2 * 3 * 5 ] > R := SocleSeries(G); > R; [ Permutation group acting on a set of cardinality 125 Order = 60 = 2^2 * 3 * 5, Permutation group acting on a set of cardinality 125 Order = 3600 = 2^4 * 3^2 * 5^2, Permutation group acting on a set of cardinality 125 Order = 216000 = 2^6 * 3^3 * 5^3 ] > SQ := SocleQuotient(G); > SQ; Permutation group SQ acting on a set of cardinality 6 Order = 48 = 2^4 * 3 (1, 2, 3)(4, 5, 6) (2, 3)(4, 5) Id($) (2, 4)
Very efficient algorithms have been developed for computing invariants such as subgroups, normal subgroups and conjugacy classes of elements for soluble groups defined by means of polycyclic presentations. Almost all such algorithms employ a top-down Lifting Strategy. Let P be a quotient-invariant property for a soluble group. In general, an algorithm that constructs the set of elements or subgroups XP(G) satisfying property P for the group G, proceeds as follows: Let G be a non-simple soluble group and let N be a normal subgroup of G. The set XP(G/N) is constructed and its elements are lifted back into G, thereby yielding XP(G). This process is usually iterated with successive normal subgroups N being chosen as the terms of some descending normal series (e.g., an elementary abelian series).
In generalizing this approach to permutation groups, our approach has been to construct the soluble radical R of G, use special methods to solve the problem for the quotient G/R, and then proceed (as in the case of a soluble group) to lift the solution down the successive terms of an elementary abelian series for G using the Lifting Strategy. Derek Holt has shown that the quotient group G/R has a faithful permutation representation of degree no greater than that of G.
The functions in this section enable the user to construct the radical, its quotient and an elementary abelian series.
Given a group G, return the maximal normal solvable subgroup of G. The algorithm used is described in Unger [Ung06b].
Given a group G, compute a representation of the quotient G/R where R is the (solvable) radical of G. The resulting representation has the same degree as G. Both the permutation group Q isomorphic to G/R and a homomorphism φ: G -> Q are returned. The algorithm proceeds by repeatedly applying AbelianNormalQuotient up the terms of the derived series of the radical. The third return value is R, the radical of G and the kernel of the homomorphism.
LayerSizes: SeqEnum[RngIntElt] Default: []
An elementary abelian series is a chain of normal subgroups R = N1 > N2 > ... > Nr = 1 with the property that the quotient of each pair of successive terms in the series is elementary abelian and that there is no group R < H < G such that H/R is elementary abelian and H normal in G. The top of the series R is called the solvable radical and is the maximal normal solvable subgroup of G.In the second form N must be a normal subgroup of G and the returned series has the form R = N1 > N2 > ... > Nr = N, so is an elementary abelian series for G/N.
The parameter LayerSizes controls possible refinement of the series. The default is no refinement. As an example, take LayerSizes := [ 2, 5, 3, 4, 7, 3, 11, 2, 17, 1]. When constructing an elementary abelian series for the group, attempt to split 2-layers of size gt 25, 3-layers of size gt 34, etc. The implied exponent for 13 is 2 and for all primes greater than 17 the exponent is 1. Setting LayerSizes to [2, 1] will attempt to split all layers, resulting in a portion of a chief series for G.
Gives a similar result to using ElementaryAbelianSeries, except the series returned depends only on the isomorphism type of the solvable radical, and consists of characteristic subgroups of G. This function may be slower than ElementaryAbelianSeries.
(1, 8, 11, 3, 6, 14, 15, 10)(2, 7, 12, 4, 5, 13, 16, 9), (1, 2)(3, 16, 9, 14, 8, 12)(4, 15, 10, 13, 7, 11), (1, 13, 12, 16)(2, 14, 11, 15)(7, 9)(8, 10).
> G := PermutationGroup< 16 | > (1, 8, 11, 3, 6, 14, 15, 10)(2, 7, 12, 4, 5, 13, 16, 9), > (1, 2)(3, 16, 9, 14, 8, 12)(4, 15, 10, 13, 7, 11), > (1, 13, 12, 16)(2, 14, 11, 15)(7, 9)(8, 10) >; > Radical(G); Permutation group acting on a set of cardinality 16 Order = 256 = 2^8 (3, 4)(5, 6)(7, 8)(13, 14)(15, 16) (3, 4)(7, 8)(9, 10)(11, 12) (7, 8)(13, 14) (1, 2)(7, 8)(9, 10)(11, 12)(13, 14)(15, 16) (9, 10) (15, 16) (11, 12)(15, 16) (13, 14)(15, 16) > RadicalQuotient(G); Permutation group acting on a set of cardinality 16 Order = 40320 = 2^7 * 3^2 * 5 * 7 (1, 7, 11, 3, 5, 13, 15, 9)(2, 8, 12, 4, 6, 14, 16, 10) (3, 15, 9, 13, 7, 11)(4, 16, 10, 14, 8, 12) (1, 13, 11, 15)(2, 14, 12, 16)(7, 9)(8, 10) Mapping from: GrpPerm: g to GrpPerm: $, Degree 16 > ElementaryAbelianSeries(G); [ Permutation group acting on a set of cardinality 16 Order = 256 = 2^8 (3, 4)(5, 6)(7, 8)(13, 14)(15, 16) (3, 4)(7, 8)(9, 10)(11, 12) (7, 8)(13, 14) (1, 2)(7, 8)(9, 10)(11, 12)(13, 14)(15, 16) (9, 10) (15, 16) (11, 12)(15, 16) (13, 14)(15, 16), Permutation group acting on a set of cardinality 16 Order = 1 ]
Given a group G and a normal subgroup M, this function returns a sequence containing one representative from each conjugacy class of complements of M in G.
Given a group G, a normal subgroup M of G and a normal subgroup N of G, that is strictly contained in M, the function returns a sequence comprising representatives for the conjugacy classes of complements of M/N in G/N, as subgroups of G.
The group M must be a normal subgroup of G. Returns whether M has a complement in G and, if so, one such complement.
Given a group G and a soluble normal subgroup M of G, the function returns a sequence containing one representative from each conjugacy class of minimal supplements for M in G.
Given a group G, a normal subgroup M of G and a normal subgroup N of G such that (a), N is strictly contained in M, and (b), M/N is soluble, the function returns a sequence comprising representatives for the conjugacy classes of minimal supplements of M/N in G/N, as subgroups of G.
The group M must be a soluble normal subgroup of G. Returns whether M has a proper supplement in G and, if so, one such supplement.
(1, 3, 2, 4)(5, 16, 6, 13)(7, 14, 8, 15)(9, 12, 11, 10), (1, 16, 9)(2, 15, 12)(3, 14, 11)(4, 13, 10)(6, 8, 7).
> G := PermutationGroup< 16 | > (1, 3, 2, 4)(5, 16, 6, 13)(7, 14, 8, 15)(9, 12, 11, 10), > (1, 16, 9)(2, 15, 12)(3, 14, 11)(4, 13, 10)(6, 8, 7) >; Permutation group G acting on a set of cardinality 16 Order = 165888 = 2^11 * 3^4 (1, 3, 2, 4)(5, 16, 6, 13)(7, 14, 8, 15)(9, 12, 11, 10) (1, 16, 9)(2, 15, 12)(3, 14, 11)(4, 13, 10)(6, 8, 7) > H := ncl< G | (6, 7, 8)(14, 16, 15) >; > H; Permutation group H acting on a set of cardinality 16 Order = 6912 = 2^8 * 3^3 (6, 7, 8)(14, 16, 15) (6, 7, 8)(13, 14, 15) (6, 7, 8)(9, 12, 11) (5, 8, 7)(13, 14, 15) (6, 7, 8)(10, 11, 12) (1, 2, 3)(6, 7, 8) (2, 4, 3)(6, 7, 8) > C := Complements(G, H); > C; [ Permutation group acting on a set of cardinality 16 Order = 24 = 2^3 * 3 (3, 4)(5, 14)(6, 15)(7, 16)(8, 13)(10, 12) (2, 4)(6, 7)(9, 14)(10, 15)(11, 13)(12, 16) (1, 14)(2, 15)(3, 16)(4, 13)(7, 8)(10, 11) (1, 14, 9)(2, 13, 10)(3, 16, 12)(4, 15, 11)(6, 8, 7) ]
So the normal subgroup has one conjugacy class of complements. We check that the representative subgroup is indeed a complement for H.
> K := C[1]; > IsTrivial(K meet H ); true > #K * #H eq #G; true
An abelian normal subgroup of G. If none exists, the trivial subgroup is returned.
A quotient of G by an abelian normal subgroup that contains the abelian normal subgroup H. The quotient is represented as a permutation group of the same degree as G. The other values returned are the quotient epimorphism and its kernel K. The kernel K will be abelian, K will contain H, #K and #H will have the same prime divisors, and if H is elementary abelian then so is K.
A quotient of G by a soluble normal subgroup that contains the soluble normal subgroup H. The quotient is represented as a permutation group of the same degree as G. The other values returned are the quotient epimorphism and its kernel K. As with AbelianNormalQuotient, K will contain H, and #K and #H will have the same prime divisors.
An elementary abelian normal subgroup of G. If none exists, the trivial subgroup is returned. The group returned is the last non-trivial group in an elementary abelian series for the radical of G.
An elementary abelian normal p-subgroup of G. If none exists, the trivial subgroup is returned. The group returned is the last non-trivial group in an elementary abelian series for the p-core of G.
A minimal elementary abelian normal subgroup of G.
A minimal elementary abelian normal subgroup of G that lies in the elementary abelian normal subgroup N of G.