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

Standard Groups

A number of functions are provided which construct various classical groups and other groups of Lie type. The effect of these functions is to define the group in terms of a set of generating matrices.

Subsections

Chevalley Groups

As shown by Chevalley, for each simple Lie algebra L over the complex field and for each finite field GF(q) there is an associated matrix group L(q). In general, these groups are perfect but not simple. To obtain the simple group, it is necessary to form the quotient by the centre. Similarly, as Ree and others have shown, if the associated Coxeter graph has an automorphism, of order s say, then there will be a `twisted' version sL(q) of L(q).

Generators for the series A, C, ()^2A and ()^2B are described in "Pairs of Generators for Matrix Groups. I" (Cayley Bulletin 3) by Don Taylor. Generators for the series B, D and ()^2D are to appear in the Journal of Symbolic Computation as "Matrix Generators for the Orthogonal Groups" by Rylands and Taylor. Generators for the other series were also provided by Rylands and Taylor.

ChevalleyGroup(s, n, K: parameters) : MonStgElt, RngIntElt, FldFin -> GrpMat
ChevalleyGroup(s, n, q: parameters) : MonStgElt, RngIntElt, RngIntElt -> GrpMat
    Irreducible: BoolElt                Default: false
Construct a matrix group over the field K (or over GF(q)) which has the adjoint Chevalley group of Lie series s and Lie rank n as the quotient modulo scalar matrices. An exception is made for the series "2A". In this case the group 2A_n(q) is SU(n + 1, q) but in the first form of the signature K must be the field GF(q^2).

The possible series are:

"A": n >= 0, the special linear group A_n(q) = SL(n + 1, q).

"B": n >= 1, the orthogonal group B_n(q) = Omega(2n + 1, q).

"C": n >= 1, the symplectic group C_n(q) = Sp(2n, q).

"D": n >= 1, the orthogonal group D_n(q) = Omega+(2n, q).

"E": n in { 6, 7, 8 }, the exceptional groups E_n(q). E_6(q) is represented as a matrix group of degree 27. It is simple unless q = 1 mod 3, in which case its centre has order 3. E_7(q) is represented as a matrix group of degree 56. It is simple unless q = 1 mod 2, in which case its centre has order 2. As yet, E_8(q) is not supported.

"F": n = 4, the exceptional group F_4(q) represented as a matrix group of degree 26. If q = 3^k then this representation is reducible. An irreducible representation is not yet available.

"G": n = 2, the exceptional group G_2(q) represented as a matrix group of degree 7. If q = 2^k then this representation is reducible. An irreducible representation of degree 6 can be obtained by setting the parameter Irreducible := true.

"2A": n >= 1, K = GF(q^2), the special unitary group 2A_n(q) = SU(n + 1, q).

"2B": n = 2, q = 2^(2k + 1), the Suzuki group 2B_2(q) = Sz(q).

"2D": n >= 1, the orthogonal group 2D_n(q) = Omega-(2n, q).

"3D": n = 4, q = p^(3k), the simple exceptional group 3D_4(q).

"2E": n = 6, q = p^(2k), the simple exceptional group 2E_6(q).

"2F": n = 4, q = 2^(2k + 1), the exceptional group 2F_4(q), simple except when q = 2 when the derived group is simple and is returned by the function TitsGroup.

"2G": n = 2, K = GF(q), q = 3^(2k + 1), the exceptional group 2G_2(q), simple except when q = 3.

Classical Groups

Magma offers several functions to construct the classical groups. For most of these functions, it is possible to specify the particular group by giving one of the following combinations of arguments:

Sections
General and Special Linear Groups
GeneralLinearGroup(arguments)
GL(arguments)
GeneralLinearGroup(n, q) : RngIntElt, RngIntElt -> GrpMat
GeneralLinearGroup(n, K) : RngIntElt, FldFin -> GrpMat
GeneralLinearGroup(V) : ModTupRng -> GrpMat
GL(n, q) : RngIntElt, RngIntElt -> GrpMat
GL(n, K) : RngIntElt, FldFin -> GrpMat
GL(V) : ModTupRng -> GrpMat
Construct the general linear group GL(n, K), where K = GF(q) and V is an n-dimensional vector space over K.
SpecialLinearGroup(arguments)
SL(arguments)
SpecialLinearGroup(n, q) : RngIntElt, RngIntElt -> GrpMat
SpecialLinearGroup(n, K) : RngIntElt, FldFin -> GrpMat
SpecialLinearGroup(V) : ModTupRng -> GrpMat
SL(n, q) : RngIntElt, RngIntElt -> GrpMat
SL(n, K) : RngIntElt, FldFin -> GrpMat
SL(V) : ModTupRng -> GrpMat
Construct the special linear group SL(n, K), where K = GF(q) and V is an n-dimensional vector space over K.
General and Special Unitary Groups
GeneralUnitaryGroup(arguments)
GU(arguments)
GeneralUnitaryGroup(n, q) : RngIntElt, RngIntElt -> GrpMat
GeneralUnitaryGroup(n, K) : RngIntElt, FldFin -> GrpMat
GeneralUnitaryGroup(V): ModTupRng -> GrpMat
GU(n, q) : RngIntElt, RngIntElt -> GrpMat
GU(n, K) : RngIntElt, FldFin -> GrpMat
GU(V): ModTupRng -> GrpMat
Construct the general unitary group GU(n, K) corresponding to the n-dimensional vector space V over the field K = GF(q^2), where n >= 2 and q is a prime power.
SpecialUnitaryGroup(arguments)
SU(arguments)
SpecialUnitaryGroup(n, q) : RngIntElt, RngIntElt -> GrpMat
SpecialUnitaryGroup(n, K) : RngIntElt, FldFin -> GrpMat
SpecialUnitaryGroup(V): ModTupRng -> GrpMat
SU(n, q) : RngIntElt, RngIntElt -> GrpMat
SU(n, K) : RngIntElt, FldFin -> GrpMat
SU(V): ModTupRng -> GrpMat
Construct the special unitary group SU(n, K) corresponding to the n-dimensional vector space V over the field K = GF(q^2), where n >= 2 and q is a prime power.
Symplectic Groups
SymplecticGroup(arguments)
Sp(arguments)
SymplecticGroup(n, q) : RngIntElt, RngIntElt -> GrpMat
SymplecticGroup(n, K) : RngIntElt, FldFin -> GrpMat
SymplecticGroup(V) : ModTupRng -> GrpMat
Sp(n, q) : RngIntElt, RngIntElt -> GrpMat
Sp(n, K) : RngIntElt, FldFin -> GrpMat
Sp(V) : ModTupRng -> GrpMat
Construct the symplectic group Sp(n, q), where K = GF(q), V is an n-dimensional vector space over K, and n is an even integer greater than or equal to 4.
Orthogonal Groups
GeneralOrthogonalGroup(arguments)
GO(arguments)
GeneralOrthogonalGroup(n, q) : RngIntElt, RngIntElt -> GrpMat
GeneralOrthogonalGroup(n, K) : RngIntElt, FldFin -> GrpMat
GeneralOrthogonalGroup(V): ModTupRng -> GrpMat
GO(n, q) : RngIntElt, RngIntElt -> GrpMat
GO(n, K) : RngIntElt, FldFin -> GrpMat
GO(V): ModTupRng -> GrpMat
Construct the general orthogonal group GO(n, K). corresponding to the n-dimensional vector space V over the field K = GF(q), where n is odd, n >= 3 and q is a prime power.
GeneralOrthogonalGroupPlus(arguments)
GOPlus(arguments)
GeneralOrthogonalGroupPlus(n, q) : RngIntElt, RngIntElt -> GrpMat
GeneralOrthogonalGroupPlus(n, K) : RngIntElt, FldFin -> GrpMat
GeneralOrthogonalGroupPlus(V): ModTupRng -> GrpMat
GOPlus(n, q) : RngIntElt, RngIntElt -> GrpMat
GOPlus(n, K) : RngIntElt, FldFin -> GrpMat
GOPlus(V): ModTupRng -> GrpMat
Construct the general orthogonal group GO^ + (n, K). corresponding to the n-dimensional vector space V over the field K = GF(q), where n is even, n >= 2 and q is a prime power.
GeneralOrthogonalGroupMinus(arguments)
GOMinus(arguments)
GeneralOrthogonalGroupMinus(n, q) : RngIntElt, RngIntElt -> GrpMat
GeneralOrthogonalGroupMinus(n, K) : RngIntElt, FldFin -> GrpMat
GeneralOrthogonalGroupMinus(V): ModTupRng -> GrpMat
GOMinus(n, q) : RngIntElt, RngIntElt -> GrpMat
GOMinus(n, K) : RngIntElt, FldFin -> GrpMat
GOMinus(V): ModTupRng -> GrpMat
Construct the general orthogonal group GO^ - (n, K). corresponding to the n-dimensional vector space V over the field K = GF(q), where n is even, n >= 2 and q is a prime power.
SpecialOrthogonalGroup(arguments)
SO(arguments)
SpecialOrthogonalGroup(n, q) : RngIntElt, RngIntElt -> GrpMat
SpecialOrthogonalGroup(n, K) : RngIntElt, FldFin -> GrpMat
SpecialOrthogonalGroup(V): ModTupRng -> GrpMat
SO(n, q) : RngIntElt, RngIntElt -> GrpMat
SO(n, K) : RngIntElt, FldFin -> GrpMat
SO(V): ModTupRng -> GrpMat
Construct the special orthogonal group SO(n, K). corresponding to the n-dimensional vector space V over the field K = GF(q), where n is odd, n >= 3 and q is a prime power.
SpecialOrthogonalGroupPlus(arguments)
SOPlus(arguments)
SpecialOrthogonalGroupPlus(n, q) : RngIntElt, RngIntElt -> GrpMat
SpecialOrthogonalGroupPlus(n, K) : RngIntElt, FldFin -> GrpMat
SpecialOrthogonalGroupPlus(V): ModTupRng -> GrpMat
SOPlus(n, q) : RngIntElt, RngIntElt -> GrpMat
SOPlus(n, K) : RngIntElt, FldFin -> GrpMat
SOPlus(V): ModTupRng -> GrpMat
Construct the special orthogonal group SO^ + (n, K). corresponding to the n-dimensional vector space V over the field K = GF(q), where n is even, n >= 2 and q is a prime power.
SpecialOrthogonalGroupMinus(arguments)
SOMinus(arguments)
SpecialOrthogonalGroupMinus(n, q) : RngIntElt, RngIntElt -> GrpMat
SpecialOrthogonalGroupMinus(n, K) : RngIntElt, FldFin -> GrpMat
SpecialOrthogonalGroupMinus(V): ModTupRng -> GrpMat
SOMinus(n, q) : RngIntElt, RngIntElt -> GrpMat
SOMinus(n, K) : RngIntElt, FldFin -> GrpMat
SOMinus(V): ModTupRng -> GrpMat
Construct the special orthogonal group SO^ - (n, K). corresponding to the n-dimensional vector space V over the field K = GF(q), where n is even, n >= 2 and q is a prime power.
Omega(arguments)
Omega(n, q) : RngIntElt, RngIntElt -> GrpMat
Omega(n, K) : RngIntElt, FldFin -> GrpMat
Omega(V): ModTupRng -> GrpMat
Construct the orthogonal group Omega(n, K) (which is the kernel of the spinor norm map on SO(n, K)) corresponding to the n-dimensional vector space V over the field K = GF(q), where n is odd, n >= 3 and q is a prime power.
OmegaPlus(arguments)
OmegaPlus(n, q) : RngIntElt, RngIntElt -> GrpMat
OmegaPlus(n, K) : RngIntElt, FldFin -> GrpMat
OmegaPlus(V): ModTupRng -> GrpMat
Construct the orthogonal group Omega^ + (n, K) (which is the kernel of the spinor norm map on SO^ + (n, K)) corresponding to the n-dimensional vector space V over the field K = GF(q), where n is even, n >= 2 and q is a prime power.
OmegaMinus(arguments)
OmegaMinus(n, q) : RngIntElt, RngIntElt -> GrpMat
OmegaMinus(n, K) : RngIntElt, FldFin -> GrpMat
OmegaMinus(V): ModTupRng -> GrpMat
Construct the orthogonal group Omega^ - (n, K) (which is the kernel of the spinor norm map on SO^ - (n, K)) corresponding to the n-dimensional vector space V over the field K = GF(q), where n is even, n >= 2 and q is a prime power.
Suzuki Groups

The Suzuki groups are specified slightly differently, as the degree of the group is always four. Thus for this family of groups, the possible combinations of arguments are:

SuzukiGroup(arguments)
Sz(arguments)
SuzukiGroup(q) : RngIntElt -> GrpMat
SuzukiGroup(K) : FldFin -> GrpMat
SuzukiGroup(V) : ModTupRng -> GrpMat
Sz(q) : RngIntElt -> GrpMat
Sz(K) : FldFin -> GrpMat
Sz(V) : ModTupRng -> GrpMat
Construct the Suzuki simple group Sz(q), where q is of the form 2^(2n + 1). If K is given, its cardinality is q. If V is given, it must be 4-dimensional, and over K.

Example GrpMat_Symplectic (H21E9)

We create the 10-dimensional symplectic group over GF(8):

> F<u> := FiniteField(8);
> G := SymplecticGroup(10, F);
> G;
MatrixGroup(10, GF(2, 3))
Generators:
[  u   0   0   0   0   0   0   0   0   0]
[  0   1   0   0   0   0   0   0   0   0]
[  0   0   1   0   0   0   0   0   0   0]
[  0   0   0   1   0   0   0   0   0   0]
[  0   0   0   0   u   0   0   0   0   0]
[  0   0   0   0   0   u   0   0   0   0]
[  0   0   0   0   0   0   1   0   0   0]
[  0   0   0   0   0   0   0   1   0   0]
[  0   0   0   0   0   0   0   0   1   0]
[  0   0   0   0   0   0   0   0   0 u^6]

[0 0 0 1 1 1 0 0 0 0] [1 0 0 0 0 0 0 0 0 0] [0 1 0 0 0 0 0 0 0 0] [0 0 1 0 0 0 0 0 0 0] [0 0 0 1 0 0 0 0 0 0] [0 0 0 0 1 0 1 0 0 0] [0 0 0 0 0 0 0 1 0 0] [0 0 0 0 0 0 0 0 1 0] [0 0 0 0 0 0 0 0 0 1] [0 0 0 0 1 0 0 0 0 0]


Example GrpMat_Suzuki (H21E10)

We create the Suzuki group over GF(128):

> F<w> := FiniteField(128);
> V := VectorSpace(F, 4);
> S := SuzukiGroup(V);
> S;
MatrixGroup(4, GF(2, 7))
Generators:
[0 0 0 1]
[0 0 1 0]
[0 1 0 0]
[1 0 0 0]

[ w^8 0 0 0] [ 0 w^120 0 0] [ 0 0 w^7 0] [ 0 0 0 w^119]

[ 1 0 0 0] [ w^8 1 0 0] [ 0 w 1 0] [w^17 w^9 w^8 1] > Order(S); 34093383680 > FactoredOrder(S); [ <2, 14>, <5, 1>, <29, 1>, <113, 1>, <127, 1> ]


Construction of Extensions

DirectProduct(G, H) : GrpMat, GrpMat -> GrpMat
Given two matrix groups G and H of degrees m and n respectively, construct the direct product of G and H as a matrix group of degree m + n.
DirectProduct(Q) : [ GrpMat ] -> GrpMat
Given a sequence Q of n matrix groups, construct the direct product Q[1] x Q[2] x ... x Q[n] as a matrix group of degree equal to the sum of the degrees of the groups Q[i], (i = 1, ..., n).
SemiLinearGroup(G, S) : GrpMat, FldFin -> GrpMat
Given a matrix group G over the finite field K and a subfield S of K, construct the semilinear extension of G over the subfield S.
TensorWreathProduct(G, H) : GrpMat, GrpPerm -> GrpMat
Given a matrix group G and a permutation group H, construct action of the wreath product on the tensor power of G by H, which is the (image of) the wreath product in its action on the tensor power (of the space that G acts on). The degree of the new group is d^k where d is the degree of G and k is the degree of H.
WreathProduct(G, H) : GrpMat, GrpPerm -> GrpMat
Given a matrix group G and a permutation group H, construct the wreath product G wreath H of G and H.

Example GrpMat_Constructions (H21E11)

We define G to be SU(3, 4) and H to be the symmetric group of order 6. We then proceed to form the direct product of G with itself and the tensor and wreath products of G and H.

> K<w> := FiniteField(4);
> G := SpecialUnitaryGroup(3, K);
> D := DirectProduct(G, G);
> D;
MatrixGroup(6, GF(2, 2))
Generators:
[  1   w   w   0   0   0]
[  0   1 w^2   0   0   0]
[  0   0   1   0   0   0]
[  0   0   0   1   0   0]
[  0   0   0   0   1   0]
[  0   0   0   0   0   1]

[w 1 1 0 0 0] [1 1 0 0 0 0] [1 0 0 0 0 0] [0 0 0 1 0 0] [0 0 0 0 1 0] [0 0 0 0 0 1]

[ 1 0 0 0 0 0] [ 0 1 0 0 0 0] [ 0 0 1 0 0 0] [ 0 0 0 1 w w] [ 0 0 0 0 1 w^2] [ 0 0 0 0 0 1]

[1 0 0 0 0 0] [0 1 0 0 0 0] [0 0 1 0 0 0] [0 0 0 w 1 1] [0 0 0 1 1 0] [0 0 0 1 0 0] > Order(D); 46656 > H := SymmetricGroup(3); > E := WreathProduct(G, H); > Degree(E); 9 > Order(E); 60466176 > F := TensorWreathProduct(G, H); > Degree(F); 27 > Order(F); 6718464


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