An abstract finite group G is called primitiveif it has a maximal subgroup M with trivial core. Note that the permutation action of G on the cosets of M is faithful and primitive. Conversely, if G is a primitive permutation group, then a point stabilizer M of G is a maximal subgroup with trivial core. However, a permutation group which is primitive as an abstract group need not be primitive as a permutation group.
Now assume that G is primitive and soluble. Then there exists a unique conjugacy class of such maximal subgroups M; the index of M in G is called the degreeof G. Moreover, M complements the socle N of G. THe socle N coincides with the Fitting subgroup of G; it is the unique minimal normal subgroup N of G. Therefore, the index of M in G is a prime power, p^{n}, say. Regarding N as a F_{p}-vector space, M acts as an irreducible subgroup of GL(n,p) on N. Conversely, if M is an irreducible soluble subgroup of GL(n,p), and V = F_{p}^{n}, then the split extension of V by M is a primitive soluble group. This establishes a well known bijection between the isomorphism types (or, equivalently, the Sym(p^{n})-conjugacy classes) of primitive soluble permutation groups of degree p^{<}n> and the conjugacy classes of irreducible soluble subgroups of GL(n, p).
The IRREDSOL package provides functions for translating between primitive soluble groups and irreducible soluble matrix groups, which are described in Section Converting between irreducible soluble matrix groups and primitive soluble groups. Moreover, there are functions for finding primitive soluble groups with given properties, see Sections Finding primitive pc groups with given properties and Finding primitive soluble permutation groups with given properties.
PrimitivePcGroup(
n,
p,
d,
k) F
PrimitiveSolublePermGroup(
n,
p,
d,
k) F
PrimitiveSolvablePermGroup(
n,
p,
d,
k) F
These functions return the primitive soluble pc group resp. primitive soluble
permutation group obtainewd as the natural split extension of V = F_{p}^{n} by
IrreducibleSolubleMatrixGroup
(n,p,d,k). Here, n is a positive
integer, p is a prime, d divides n and k occurs in the list
IndicesIrreducibleSolubleMatrixGroups
(n,p,d)
(see IndicesIrreducibleSolubleMatrixGroups).
As long as the relevant group data is not unloaded manually
(see UnloadAbsolutelyIrreducibleSolubleGroupData), the functions PrimitivePcGroup
and PrimitiveSolublePermGroup
will return the same group when called multiple times
with the same arguments.
PrimitivePcGroupIrreducibleMatrixGroup(
G) F
PrimitivePcGroupIrreducibleMatrixGroupNC(
G) F
For a given irreducible soluble matrix group G over a prime field, this function
returns a primitive pc group H which is the split extension of G with its natural
underlying vector space V. The NC
version does not check whether G is over a prime field,
or whether G is irreducible. The group H has an attribute Socle
(see Socle), corresponding to V. If the package CRISP is loaded,
then the attribute SocleComplement
(see CRISP reference manual crisp:SocleComplement) is set to a subgroup of
H isomorphic with G.
gap> PrimitivePcGroupIrreducibleMatrixGroup( > IrreducibleSolubleMatrixGroup(4,2,2,3)); <pc group of size 160 with 6 generators>
PrimitivePermGroupIrreducibleMatrixGroup(
G) F
PrimitivePermGroupIrreducibleMatrixGroupNC(
G) F
For a given irreducible soluble matrix group G over a prime field, this function
returns a primitive permutation group H, representing the affine action of G on its natural
vector space V. The NC
version does not check whether G is over a prime field,
or whether G is irreducible. The group H has an attribute Socle
(see Socle), corresponding to V. If the package CRISP is loaded,
then the attribute SocleComplement
(see crisp:SocleComplement in the CRISP manual) is set to a subgroup of
H isomorphic with G.
gap> PrimitivePermGroupIrreducibleMatrixGroup( > IrreducibleSolubleMatrixGroup(4,2,2,3)); <permutation group of size 160 with 6 generators>
IrreducibleMatrixGroupPrimitiveSolubleGroup(
G) F
IrreducibleMatrixGroupPrimitiveSolvableGroupNC(
G) F
For a given primitive soluble group G, this function returns a matrix group obtained from the conjugation action of G on its unique minimal normal subgroup N, regarded as a vector space over F_{p}, where p is the exponent of N. The F_{p}-basis of N is chosen arbitrarily, so that the matrix group returned is unique only up to conjugacy in the relevant GL(n, p). The NC version does not check whether G is primitive and soluble.
gap> IrreducibleMatrixGroupPrimitiveSolubleGroup(SymmetricGroup(4)); Group([ <an immutable 2x2 matrix over GF2>, <an immutable 2x2 matrix over GF2> ])
AllPrimitivePcGroups(
func_1,
arg_1,
func_2,
arg_2, ...) F
This function returns a list of all primitive soluble pc
groups G in the IRREDSOL library for which the return value of func_{i}(G) lies
in arg_i. The arguments func_1, func_2, ...,
must be GAP functions which take a pc group as their only argument and return a
value, and arg_1, arg_2,
..., must be lists. If arg_i is not a list, arg_i is replaced by the list
[arg_i
]
. One of the functions must be Degree
or one of its
equivalents, see below.
The following functions func_i are handled particularly efficiently.
Degree
, NrMovedPoints
, LargestMovedPoint
Order
, Size
Note that there is also a function IteratorPrimitivePcGroups
(see
IteratorPrimitivePcGroups) which allows one to run through the list produced by
AllPrimitivePcGroups
without having to store all the groups in the list
simultaneously.
gap> AllPrimitivePcGroups(Degree, [1..255], Order, [168]); [ <pc group of size 168 with 5 generators> ]
OnePrimitivePcGroup(
func_1,
arg_1,
func_2,
arg_2, ...) F
This function returns one primitive soluble pc
group G in the IRREDSOL library for which the return value of func_{i}(G) lies in
arg_i, or fail
if no such group exists. The arguments func_1, func_2, ...,
must be GAP functions which take a pc group as their only argument and return a
value, and arg_1, arg_2,
..., must be lists. If arg_i is not a list, arg_i is replaced by the list
[
arg_i]
. One of the functions must be Degree
or one of its, equivalents, NrMovedPoints
or LargestMovedPoint
.
For a list of functions which are handled particularly efficiently, see AllPrimitivePcGroups.
gap> OnePrimitivePcGroup(Degree, [256], Order, [256*255]); <pc group of size 65280 with 11 generators>
IteratorPrimitivePcGroups(
func_1,
arg_1,
func_2,
arg_2, ...) F
This function returns an iterator which runs through the list of all primitive soluble
pc groups G in the IRREDSOL library such that
func_{i}(G) lies in arg_i. The arguments func_1, func_2, ...,
must be GAP functions taking a pc group as their only argument and returning
a value, and arg_1, arg_2, ...,
must be lists. If arg_i is not a list, arg_i is replaced by the list [
arg_i]
.
One of the functions must be Degree
or one of its, equivalents, NrMovedPoints
or LargestMovedPoint
.
For a list of functions which are handled particularly efficiently, see
AllPrimitivePcGroups.
Using
IteratorPrimitivePcGroups
(func_1, arg_1, func_2, arg_2, ...))
is functionally equivalent to
Iterator
(AllPrimitivePcGroups
(func_1, arg_1, func_2, arg_2, ...))
(see Iterators for details) but does not compute all relevant pc groups at the same time. This may save some memory.
AllPrimitiveSolublePermGroups(
func_1,
arg_1,
func_2,
arg_2, ...) F
AllPrimitiveSolvablePermGroups(
func_1,
arg_1,
func_2,
arg_2, ...) F
This function returns a list of all primitive soluble permutation
groups G corresponding to irreducible matrix groups in the IRREDSOL library
for which the return value of func_{i}(G) lies
in arg_i. The arguments func_1, func_2, ...,
must be GAP functions which take a permutation group as their only argument and return a
value, and arg_1, arg_2,
..., must be lists. If arg_i is not a list, arg_i is replaced by the list
[
arg_i]
. One of the functions must be Degree
or one of its
equivalents, see below.
The following functions func_i are handled particularly efficiently.
Degree
, NrMovedPoints
, LargestMovedPoint
Order
, Size
Note that there is also a function IteratorPrimitivePermGroups
(see
IteratorPrimitivePermGroups) which allows one to run through the list produced by
AllPrimitivePcGroups
without having to store all of the groups
simultaneously.
gap> AllPrimitiveSolublePermGroups(Degree, [1..100], Order, [72]); [ Group([ (1,4,7)(2,5,8)(3,6,9), (1,2,3)(4,5,6)(7,8,9), (2,4)(3,7)(6,8), (2,3)(5,6)(8,9), (4,7)(5,8)(6,9) ]), Group([ (1,4,7)(2,5,8)(3,6,9), (1,2,3)(4,5,6)(7,8,9), (2,5,3,9)(4,8,7,6), (2,7,3,4)(5,8,9,6), (2,3)(4,7)(5,9)(6,8) ]), Group([ (1,4,7)(2,5,8)(3,6,9), (1,2,3)(4,5,6)(7,8,9), (2,5,6,7,3,9,8,4) ]) ] gap> List(last, IdGroup); [ [ 72, 40 ], [ 72, 41 ], [ 72, 39 ] ]
OnePrimitiveSolublePermGroup(
func_1,
arg_1,
func_2,
arg_2, ...) F
OnePrimitiveSolvablePermGroup(
func_1,
arg_1,
func_2,
arg_2, ...) F
This function returns one primitive soluble permutation
group G corresponding to irreducible matrix groups in the IRREDSOL library
for which the return value of func_{i}(G) lies in
arg_i, or fail
if no such group exists. The arguments func_1, func_2, ...,
must be GAP functions which take a permutation group as their only argument and return a
value, and arg_1, arg_2,
..., must be lists. If arg_i is not a list, arg_i is replaced by the list
[
arg_i]
. One of the functions must be Degree
or one of its, equivalents, NrMovedPoints
or LargestMovedPoint
.
For a list of functions which are handled particularly efficiently, see AllPrimitiveSolublePermGroups.
gap> OnePrimitiveSolublePermGroup(Degree, [1..100], Size, [123321]); fail
IteratorPrimitivePermGroups(
func_1,
arg_1,
func_2,
arg_2, ...) F
This function returns an iterator which runs through the list of all primitive soluble
groups G in the IRREDSOL library such that
func_{i}(G) lies in arg_i. The arguments func_1, func_2, ...,
must be GAP functions taking a pc group as their only argument and returning
a value, and arg_1, arg_2, ...,
must be lists. If arg_i is not a list, arg_i is replaced by the list [
arg_i]
.
One of the functions must be Degree
or one of its, equivalents, NrMovedPoints
or LargestMovedPoint
.
For a list of functions which are handled particularly efficiently, see
AllPrimitiveSolublePermGroups.
Using
IteratorPrimitiveSolublePermGroups
(func_1, arg_1, func_2, arg_2, ...))
is functionally equivalent to
Iterator
(AllPrimitiveSolublePermGroups
(func_1, arg_1, func_2, arg_2, ...))
(see Iterators for details) but does not compute all relevant permutation groups at the same time.
IdPrimitiveSolubleGroup(
G) F
IdPrimitiveSolubleGroupNC(
G) F
IdPrimitiveSolvableGroup(
G) F
IdPrimitiveSolvableGroupNC(
G) F
returns the id of the primitive soluble group G. This is the same as
the id of IrreducibleMatrixGroupPrimitiveSolubleGroup
(G), see IrreducibleMatrixGroupPrimitiveSolubleGroup and IdIrreducibleSolubleMatrixGroup.
Note that two primitive soluble groups are isomorphic if, and only if, their
ids returned by IdPrimitivePcGroup
are the same. The NC version does not
check whether G is primitive and soluble.
gap> G := SmallGroup(432, 734); <pc group of size 432 with 7 generators> gap> IdPrimitiveSolubleGroup(G); [ 2, 3, 1, 2 ] gap> G := AlternatingGroup(4); Alt( [ 1 .. 4 ] ) gap> IdPrimitiveSolubleGroup(G); [ 2, 2, 2, 1 ]
RecognitionPrimitiveSolubleGroup(
G,
wantiso) F
RecognitionPrimitiveSolvableGroup(
G,
wantiso) F
This function returns a record r which identifies the primitive soluble group G.
The component id
is always present and contains the id of G. if wantiso is true
, then
the component iso
is bound to an isomorphism from G into a primitive pc group.
PrimitiveSolublePermutationGroup(
n,
q,
d,
k) F
PrimitiveSolvablePermutationGroup(
n,
q,
d,
k) F
PrimitivePermutationGroupIrreducibleMatrixGroup(
G) F
PrimitivePermutationGroupIrreducibleMatrixGroupNC(
G) F
AllPrimitiveSolublePermutationGroups(
func_1,
arg_1,
func_2,
arg_2, ...) F
AllPrimitiveSolvablePermutationGroups(
func_1,
arg_1,
func_2,
arg_2, ...) F
IteratorPrimitivePermutationGroups(
func_1,
arg_1,
func_2,
arg_2, ...) F
OnePrimitiveSolublePermutationGroup(
func_1,
arg_1,
func_2,
arg_2, ...) F
OnePrimitiveSolvablePermutationGroup(
func_1,
arg_1,
func_2,
arg_2, ...) F
These functions have been renamed from ...PermutationGroup
...to ...PermGroup
....
The above function names are deprecated.
[Up] [Previous] [Next] [Index]
IRREDSOL manual