Goto Chapter: Top 1 2 3 4 5 Bib Ind
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 

3 Maximal Subgroups of Classical Groups
 3.1 The Main function
 3.2 Conjugating elements in the ambient classical group

3 Maximal Subgroups of Classical Groups

3.1 The Main function

3.1-1 ClassicalMaximalsGeneric
‣ ClassicalMaximalsGeneric( type, n, q[, classes] )( function )

Returns a list of representatives of the conjugacy classes of maximal subgroups of the quasisimple classical group of the specified type in dimension n over the finite field \mathbb{F}_q.

The parameter type must be one of the strings "L", "U", "O", "O+", "O-", corresponding to the quasisimple groups {\rm SL}_n(q), {\rm SU}_n(q), {\rm Sp}_n(q), \Omega_n(q), \Omega^+_n(q) and \Omega^-_n(q), respectively (see Chapter 2).

The returned subgroups are realized as subgroups of the standard classical group (as returned by the corresponding GAP functions), so in particular they preserve our standard classical form (see 2.2-6).

The optional argument classes must be a subset of [1..9] and specifies which Aschbacher classes are to be computed. If omitted, all classes {\cal C}_1, \dots, {\cal C}_9 are considered.

The lists are complete for n \leq 12. For n > 12, no completeness guarantee is given. In particular, maximal subgroups in class {\cal C}_9 are not included in these cases.

The orders of the returned subgroups are precomputed and stored with the groups.

Section 4 provides some illustrations of this function's usage.

3.2 Conjugating elements in the ambient classical group

In several constructions it is necessary to pass between a classical group and larger groups in which it is naturally embedded, such as the corresponding general linear, unitary, or orthogonal groups, or their normalisers in the general linear group. In particular, one often needs explicit elements that lie outside a given subgroup but still preserve the relevant form (possibly up to scalars). Such elements can be used to conjugate subgroups and to obtain representatives from different conjugacy classes inside the ambient group. The following functions provide explicit elements in the various overgroups of the classical groups considered in this package.

3.2-1 GLMinusSL
‣ GLMinusSL( n, q )( function )

Returns: an element of {\rm GL}_n(q) \setminus {\rm SL}_n(q).

3.2-2 GUMinusSU
‣ GUMinusSU( n, q )( function )

Returns: an element of {\rm GU}_n(q) \setminus {\rm SU}_n(q).

3.2-3 NormSpMinusSp
‣ NormSpMinusSp( n, q )( function )

Returns: an element of {\rm N}_{{\rm GL}_n(q)}({\rm Sp}_n(q)) \setminus {\rm Sp}_n(q) which preserves our standard symplectic form modulo a scalar.

3.2-4 SOMinusOmega
‣ SOMinusOmega( epsilon, n, q )( function )

Returns: an element of {\rm SO}^\varepsilon_n(q) \setminus \Omega^\varepsilon_n(q) which preserves our standard orthogonal form (see 2.2-6).

3.2-5 GOMinusSO
‣ GOMinusSO( epsilon, n, q )( function )

Returns: an element of {\rm GO}^\varepsilon_n(q) \setminus {\rm SO}^\varepsilon_n(q) which preserves our standard orthogonal form (see 2.2-6).

3.2-6 NormGOMinusGO
‣ NormGOMinusGO( epsilon, n, q )( function )

Returns: an element of {\rm N}_{{\rm GL}_n(q)}({\rm GO}^\varepsilon_n(q)) \setminus {\rm GO}^\varepsilon_n(q) which preserves our standard orthogonal form (see 2.2-6) modulo a scalar.

3.2-7 Warning concerning orthogonal groups of minus type

SOMinusOmega (3.2-4), GOMinusSO (3.2-5) and NormGOMinusGO (3.2-6) are affected by a historical inconsistency in GAP's choice of the invariant bilinear form for orthogonal groups of minus type: For \varepsilon = -1 the forms kept invariant by Omega(-1,n,q) and SO(-1,n,q) need not coincide.

Consequently the element returned by GOMinusSO(-1,n,q) preserves the form associated with Omega(-1,n,q) (our standard orthogonal form, see 2.2-6) but does not necessarily preserve the form associated with SO(-1,n,q) (as one would expect from the name).

The element returned by NormGOMinusGO(-1,n,q) is guaranteed to normalise a group preserving the Omega form (our standard orthogonal form).

gap> q := 5;;
gap> G := Omega(-1, 8, q);;
gap> H := SO(-1, 8, q);;
gap> Display(InvariantBilinearForm(G).matrix);
 . . . . . . . 1
 . . . . . . 1 .
 . . . . . 1 . .
 . . . 3 4 . . .
 . . . 4 1 . . .
 . . 1 . . . . .
 . 1 . . . . . .
 1 . . . . . . .
gap> Display(InvariantBilinearForm(H).matrix);
 . 1 . . . . . .
 1 . . . . . . .
 . . 4 . . . . .
 . . . 2 . . . .
 . . . . 2 . . .
 . . . . . 2 . .
 . . . . . . 2 .
 . . . . . . . 2
gap> MG := InvariantBilinearForm(G).matrix;;
gap> MH := InvariantBilinearForm(H).matrix;;
gap> a := GOMinusSO(-1, 8, q);;
gap> b := NormGOMinusGO(-1, 8, q);
gap> a*MG*TransposedMat(a) = MG;
true
gap> a*MH*TransposedMat(a) = MH;
false
gap> (G.1^b)*MG*TransposedMat(G.1^b) = MG;
true
gap> (G.2^b)*MG*TransposedMat(G.2^b) = MG;
true
 [Top of Book]  [Contents]   [Previous Chapter]   [Next Chapter] 
Goto Chapter: Top 1 2 3 4 5 Bib Ind

generated by GAPDoc2HTML