The following functions return classical groups. For the linear, symplectic, and unitary groups (the latter in dimension at least 3), the generators are taken from Tay87. The generators of the orthogonal groups are taken from
H.Ishibashi, A.G.Earnest Two-Element Generation of Orthogonal Groups over Finite Fields.
For symplectic and orthogonal matrix groups returned by the functions
described below, the invariant bilinear form is stored as the value of
the attribute InvariantBilinearForm (see InvariantBilinearForm).
Analogously, the invariant sesquilinear form defining the unitary groups
is stored as the value of the attribute InvariantSesquilinearForm
(see InvariantSesquilinearForm).
The defining quadratic form of orthogonal groups is stored as the value
of the attribute InvariantQuadraticForm (see InvariantQuadraticForm).
GeneralLinearGroup( [filt, ]d, q ) F
GL( [filt, ]d, q ) F
constructs a group isomorphic to the general linear group GL( d, q ) of all d ×d matrices over the field with q elements, in the category given by the filter filt.
If filt is not given it defaults to IsMatrixGroup,
and the returned group is the general linear group as a matrix group in
its natural action (see also IsNaturalGL).
gap> GL(4,3); GL(4,3)
SpecialLinearGroup( [filt, ]d, q ) F
SL( [filt, ]d, q ) F
constructs a group isomorphic to the special linear group SL( d, q ) of all those d ×d matrices over the field with q elements whose determinant is the identity of the field, in the category given by the filter filt.
If filt is not given it defaults to IsMatrixGroup,
and the returned group is the special linear group as a matrix group in
its natural action (see also IsNaturalSL).
gap> SpecialLinearGroup(2,2); SL(2,2)
Using the OnLines operation it is possible to obtain the corresponding
projective groups in a permutation action:
gap> g:=GL(4,3);;Size(g); 24261120 gap> pgl:=Action(g,Orbit(g,Z(3)^0*[1,0,0,0],OnLines),OnLines);; gap> Size(pgl); 12130560
GeneralUnitaryGroup( [filt, ]d, q ) F
GU( [filt, ]d, q ) F
constructs a group isomorphic to the general unitary group GU( d, q ) of those d ×d matrices over the field with q 2 elements that respect a fixed nondegenerate sesquilinear form, in the category given by the filter filt.
If filt is not given it defaults to IsMatrixGroup,
and the returned group is the general unitary group itself.
gap> GeneralUnitaryGroup( 3, 5 ); GU(3,5)
SpecialUnitaryGroup( [filt, ]d, q ) F
SU( [filt, ]d, q ) F
constructs a group isomorphic to the speial unitary group GU( d, q ) of those d ×d matrices over the field with q 2 elements whose determinant is the identity of the field and that respect a fixed nondegenerate sesquilinear form, in the category given by the filter filt.
If filt is not given it defaults to IsMatrixGroup,
and the returned group is the special unitary group itself.
gap> SpecialUnitaryGroup( 3, 5 ); SU(3,5)
SymplecticGroup( [filt, ]d, q ) F
Sp( [filt, ]d, q ) F
SP( [filt, ]d, q ) F
constructs a group isomorphic to the symplectic group Sp( d, q ) of those d ×d matrices over the field with q elements that respect a fixed nondegenerate symplectic form, in the category given by the filter filt.
If filt is not given it defaults to IsMatrixGroup,
and the returned group is the symplectic group itself.
gap> SymplecticGroup( 4, 2 ); Sp(4,2)
GeneralOrthogonalGroup( [filt, ][e, ]d, q ) F
GO( [filt, ][e, ]d, q ) F
GeneralOrthogonalGroup returns a group isomorphic to the
general orthogonal group GO( e, d, q ) of those d ×d
matrices over the field with q elements that respect a non-singular
quadratic form (see InvariantQuadraticForm) specified by e,
in the category given by the filter filt.
The value of e may be one of 0, 1, or -1; e = 0 is possible
if and only if d is odd, hence e may be omitted in this case.
If filt is not given it defaults to IsMatrixGroup,
and the returned group is the general orthogonal group itself.
SpecialOrthogonalGroup( [filt, ][e, ]d, q ) F
SO( [filt, ][e, ]d, q ) F
SpecialOrthogonalGroup returns a group isomorphic to the
special orthogonal group SO( e, d, q ), which is the subgroup of
all those matrices in the general orthogonal group
(see GeneralOrthogonalGroup) that have determinant one,
in the category given by the filter filt.
(The index of SO( e, d, q ) in GO( e, d, q ) is 2 if q is
odd, and 1 if q is even.)
If filt is not given it defaults to IsMatrixGroup,
and the returned group is the special orthogonal group itself.
gap> GeneralOrthogonalGroup( 3, 7 ); GO(0,3,7) gap> GeneralOrthogonalGroup( -1, 4, 3 ); GO(-1,4,3) gap> SpecialOrthogonalGroup( 1, 4, 4 ); GO(+1,4,4)
ProjectiveGeneralLinearGroup( [filt, ]d, q ) F
PGL( [filt, ]d, q ) F
constructs a group isomorphic to the projective general linear group PGL( d, q ) of those d ×d matrices over the field with q elements, modulo the centre, in the category given by the filter filt.
If filt is not given it defaults to IsPermGroup,
and the returned group is the action on lines of the underlying vector
space.
ProjectiveSpecialLinearGroup( [filt, ]d, q ) F
PSL( [filt, ]d, q ) F
constructs a group isomorphic to the projective special linear group PSL( d, q ) of those d ×d matrices over the field with q elements whose determinant is the identity of the field, modulo the centre, in the category given by the filter filt.
If filt is not given it defaults to IsPermGroup,
and the returned group is the action on lines of the underlying vector
space.
ProjectiveGeneralUnitaryGroup( [filt, ]d, q ) F
PGU( [filt, ]d, q ) F
constructs a group isomorphic to the projective general unitary group PGU( d, q ) of those d ×d matrices over the field with q 2 elements that respect a fixed nondegenerate sesquilinear form, modulo the centre, in the category given by the filter filt.
If filt is not given it defaults to IsMatrixGroup,
and the returned group is the general unitary group itself.
ProjectiveSpecialUnitaryGroup( [filt, ]d, q ) F
PSU( [filt, ]d, q ) F
constructs a group isomorphic to the projective special unitary group PSU( d, q ) of those d ×d matrices over the field with q 2 elements that respect a fixed nondegenerate sesquilinear form and have determinant 1, modulo the centre, in the category given by the filter filt.
If filt is not given it defaults to IsMatrixGroup,
and the returned group is the general unitary group itself.
ProjectiveSymplecticGroup( [filt, ]d, q ) F
PSP( [filt, ]d, q ) F
PSp( [filt, ]d, q ) F
constructs a group isomorphic to the projective symplectic group PSp(d,q) of those d ×d matrices over the field with q elements that respect a fixed nondegenerate symplectic form, modulo the centre, in the category given by the filter filt.
If filt is not given it defaults to IsPermGroup,
and the returned group is the action on lines of the underlying vector
space.
[Top] [Previous] [Up] [Next] [Index]
GAP 4 manual