- Basic attributes for matrix groups
- Irreducibility and maximality of matrix groups
- Primitivity of matrix groups
- Conjugating matrix groups into smaller fields

This chapter explains some attributes, properties, and operations which may be useful for working with matrix groups. Some of these are part of the GAP library and are listed for the sake of completeness, and some are provided by the package IRREDSOL. Note that groups constructed by functions in IRREDSOL already have the appropriate properties and attributes.

`DegreeOfMatrixGroup(`

`) A`

`Degree(`

`) O`

`DimensionOfMatrixGroup(`

`) A`

`Dimension(`

`) A`

This is the degree of the matrix group or, equivalently, the dimension of the natural underlying vector space. See also DimensionOfMatrixGroup in the GAP reference manual.

`FieldOfMatrixGroup(`

`) A`

This is the field generated by the matrix entries of the elements of `G`. See also
FieldOfMatrixGroup in the GAP reference manual.

`DefaultFieldOfMatrixGroup(`

`) A`

This is a field containing all matrix entries of the elements of `G`. See also
DefaultFieldOfMatrixGroup in the GAP reference manual.

`SplittingField(`

`) A`

Let `G` be an irreducible subgroup of `GL(n, F)`, where `F = FieldOfMatrixGroup( G)`
is a finite field. This attribute stores the splitting field

`CharacteristicOfField(`

`) A`

`Characteristic(`

`) O`

This is the characteristic of `FieldOfMatrixGroup`

(`G`) (see FieldOfMatrixGroup).

`RepresentationIsomorphism(`

`) A`

This attribute stores an isomorphism ` H toG`, where

In this way, computations which only depend on the
isomorphism type of `G` can be carried out in the group `H` and translated
back to the group `G` via the representation isomorphism. Possible applications are the conjugacy classes of `G`, Sylow subgroups, composition and chief series, normal subgroups, group theoretical properties of `G`, and many more.

The concept of a representation isomorphism is related to
nice monomorphisms; see Section Nice Monomorphisms in the GAP
reference manual. However, unlike nice monomorphisms,
`RepresentationIsomorphism`

need not be efficient for computing preimages (and, indeed, will not usually be, in the case of the groups in the IRREDSOL library).

`IsIrreducibleMatrixGroup(`

`) P`

`IsIrreducibleMatrixGroup(`

`, `

`) O`

`IsIrreducible(`

` [, `

`]) O`

The matrix group `G` of degree `d` is irreducible over the field `F` if no subspace of ` F^{d}` is
invariant under the action of

`FieldOfMatrixGroup`

(

gap> G := IrreducibleSolubleMatrixGroup(4, 2, 2, 3); <matrix group of size 10 with 2 generators> gap> IsIrreducibleMatrixGroup(G); true gap> IsIrreducibleMatrixGroup(G, GF(2)); true gap> IsIrreducibleMatrixGroup(G, GF(4)); false

`IsAbsolutelyIrreducibleMatrixGroup(`

`) P`

`IsAbsolutelyIrreducible(`

`) O`

If present, this operation returns true if `G` is absolutely irreducible, i. e., irreducible over any
extension field of `FieldOfMatrixGroup`

(`G`).

gap> G := IrreducibleSolubleMatrixGroup(4, 2, 2, 3); <matrix group of size 10 with 2 generators> gap> IsAbsolutelyIrreducibleMatrixGroup(G); false

`IsMaximalAbsolutelyIrreducibleSolubleMatrixGroup(`

`) P`

`IsMaximalAbsolutelyIrreducibleSolvableMatrixGroup(`

`) P`

This property, if present, is `true`

if, and only if, `G` is absolutely irreducible and maximal among
the soluble subgroups of `GL(d, F)`, where `d` is `DegreeOfMatrixGroup`

(`G`) and
`F` equals `FieldOfMatrixGroup`

(`G`).

`MinimalBlockDimensionOfMatrixGroup(`

`) A`

`MinimalBlockDimensionOfMatrixGroup(`

`, `

`) O`

`MinimalBlockDimension(`

` [, `

`]) O`

Let `G` be a matrix group of degree `d` over the field `F`. A
decomposition `V _{1} opluscdotsoplusV_{k}` of

`MinimalBlockDimensionOfMatrixGroup`

returns the minimum of the dimensions
of all block systems of `FieldOfMatrixGroup`

(

gap> G := IrreducibleSolubleMatrixGroup(2,3,1,4);; gap> MinimalBlockDimension(G, GF(3)); 2 gap> MinimalBlockDimension(G, GF(9)); 1

`IsPrimitiveMatrixGroup(`

`) P`

`IsPrimitiveMatrixGroup(`

`, `

`) O`

`IsPrimitive(`

` [, `

`]) O`

`IsLinearlyPrimitive(`

` [, `

`]) O`

An irreducible matrix group `G` of degree `d` is primitive over the field `F` if it
only has the trivial block system ` F^{d}` or, equivalently, if

`MinimalBlockDimensionOfMatrixGroup`

(`FieldOfMatrixGroup`

(

gap> G := IrreducibleSolubleMatrixGroup(2,2,1,1);; gap> IsPrimitiveMatrixGroup(G, GF(2)); true gap> IsIrreducibleMatrixGroup(G, GF(4)); true gap> IsPrimitiveMatrixGroup(G, GF(4)); false

`ImprimitivitySystems(`

` [, `

`]) O`

This function returns the list of all imprimitivity systems of the
irreducible matrix group `G` over the field `F`. If `F` is not given,
`FieldOfMatrixGroup`

(`G`) is used.
Each imprimitivity system is given by a record with the following entries:

`bases`

- a list of the bases of the subspaces which form the imprimitivity system.
Note that a basis here is just a list of vectors, not a basis in the sense of
GAP (see Basis in the GAP reference manual). Each basis is
in Hermite normal form so that the action of
`G`on the imprimitivity system can be determined by`OnSubspacesByCanonicalBasis`

`stab1`

- the subgroup of
`G`stabilizing the subspace`W`spanned by`bases[1]`

`min`

- is true if the imprimitivity system is minimal, that is, if
`stab1`

acts primitively on`W`, and false otherwise

gap> G := IrreducibleSolubleMatrixGroup(6, 2, 1, 9); <matrix group of size 54 with 4 generators> gap> impr := ImprimitivitySystems(G, GF(2));; gap> List(ImprimitivitySystems(G, GF(2)), r -> Length(r.bases)); [ 3, 3, 1 ] gap> List(ImprimitivitySystems(G, GF(4)), > r -> Action(G, r.bases, OnSubspacesByCanonicalBasis)); [ Group([ (), (1,2)(3,6)(4,5), (1,3,4)(2,5,6), (1,4,3)(2,6,5) ]), Group([ (1,2,4)(3,5,6), (1,3)(2,5)(4,6), (), () ]), Group([ (1,2,4)(3,5,6), (1,3)(2,5)(4,6), (1,2,4)(3,6,5), (1,4,2)(3,5,6) ]), Group([ (1,2,4)(3,5,6), (1,3)(2,5)(4,6), (1,4,2)(3,5,6), (1,2,4)(3,6,5) ]), Group([ (), (1,2), (), () ]), Group([ (1,2,3), (), (), () ]), Group([ (), (2,3), (1,2,3), (1,3,2) ]), Group([ (), (2,3), (1,2,3), (1,3,2) ]), Group([ (), (2,3), (1,2,3), (1,3,2) ]), Group(()) ]

`TraceField(`

`) A`

This is the field generated by the traces of the elements of the matrix group `G`.
If `G` is an irreducible matrix group over a finite field then, by a theorem of Brauer, `G`
has a conjugate which is a matrix group over `TraceField`

(`G`).

gap> repeat > G := IrreducibleSolubleMatrixGroup(8, 2, 2, 7)^RandomInvertibleMat(8, GF(8)); > until FieldOfMatrixGroup(G) = GF(8); gap> TraceField(G); GF(2)

`ConjugatingMatTraceField(`

`) A`

If bound, this is a matrix `x` over `FieldOfMatrixGroup`

(`G`) such that
` G^{<}x>` is a matrix group over

`TraceField`

(gap> repeat > G := IrreducibleSolubleMatrixGroup(8, 2, 2, 7) ^ > RandomInvertibleMat(8, GF(8)); > until FieldOfMatrixGroup(G) = GF(8); gap> FieldOfMatrixGroup(G^ConjugatingMatTraceField(G)); GF(2)

[Up] [Previous] [Next] [Index]

IRREDSOL manual

February 2017