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

5 Utility Functions
 5.1 Matrix Functions
 5.2 Creating Matrix Groups
 5.3 Special generators for classical groups
 5.4 Sizes of classical groups

5 Utility Functions

5.1 Matrix Functions

5.1-1 MatrixByEntries
‣ MatrixByEntries( field, nrRows, nrCols, entries )( function )

Return a nrRows by nrCols matrix with entries over the field field which are given by the list entries in the following way: If entries is a list of three-element lists [i, j, a], then the entry in position (i, j) will be set to a (and to zero if entries does not contain a list [i, j, a] with some arbitrary a); if this is not the case and entries is a list of length nrRows * nrCols, the elements of entries will be written into the matrix row by row.

5.1-2 AntidiagonalMat
‣ AntidiagonalMat( entries, field )( function )

Return an antidiagonal matrix M with entries as specified by the argument entries in the following way:

5.1-3 AntidiagonalHalfOneMat
‣ AntidiagonalHalfOneMat( d, field )( function )

Return an antidiagonal d by d matrix over the given field, with the first half of the entries on the antidiagonal equal to one, the reaming half equal to minus one. Note that d must be even.

5.1-4 RotateMat
‣ RotateMat( A )( function )

Return the matrix B which is the rotation of A by 180 degrees. This is equivalent to multiplying A by the correctly sized matrices of the form AntiDiag(1, ..., 1) from the left and right respectively, but rotation is more efficient than matrix multiplication.

5.2 Creating Matrix Groups

5.2-1 MatrixGroup
‣ MatrixGroup( F, gens )( function )

Return a matrix group G generated by the matrices in gens, regarded as matrices over the field F. The generators are stored as immutable matrices; over small fields (with at most 256 elements) this yields compressed matrices that store the base field, but not over larger fields. Consequently, the attribute DefaultFieldOfMatrixGroup (Reference: DefaultFieldOfMatrixGroup) of the resulting group is not necessarily equal to F and may in fact be a proper subfield when the entries lie in a smaller field.

5.2-2 MatrixGroupWithSize
‣ MatrixGroupWithSize( F, gens, size )( function )

Return a matrix group over the field F generated by the matrices from the list gens and set its size to size. Except for additionally setting the group's size, this does the same as MatrixGroup (5.2-1).

5.3 Special generators for classical groups

This section provides functions to construct explicit generating sets for classical groups, namely orthogonal and linear groups over finite fields, as used in [HR05] and [HR10].

5.3-1 GeneratorsOfOrthogonalGroup
‣ GeneratorsOfOrthogonalGroup( epsilon, n, q )( function )

Returns: a record with components generatorsOfSO, D and E.

Constructs generators for the orthogonal groups with the properties listed in [HR05, Lemma 2.4]. Construction as in [Ron04, Lemma 2.4].

5.3-2 StandardGeneratorsOfOrthogonalGroup
‣ StandardGeneratorsOfOrthogonalGroup( epsilon, n, q )( function )

Returns: a record with components generatorsOfOmega, S, G and D.

Constructs standard generators generatorsOfOmega, S, G, D for the orthogonal groups with respect to our standard form as used in [HR10], with the following properties:

Construction as in Theorem 3.9 loc. cit.

5.3-3 AlternativeGeneratorsOfOrthogonalGroup
‣ AlternativeGeneratorsOfOrthogonalGroup( n, q, squareDiscriminant )( function )

Returns: a record with components generatorsOfOmega, S, G and D.

Constructs standard generators generatorsOfOmega, S, G, D for the orthogonal groups with respect to our diagonal form of given discriminant as used in [HR10].

The generators satisfy exactly the same properties as those returned by StandardGeneratorsOfOrthogonalGroup (5.3-2), except that they are constructed with respect to a diagonal form (rather than the standard form used there).

Note that the parameter \(\varepsilon\) is uniquely determined by n, q and squareDiscriminant.

Construction as in Theorem 3.9 loc. cit.

q must be odd.

5.3-4 StandardGeneratorsOfLinearGroup
‣ StandardGeneratorsOfLinearGroup( n, q )( function )

Returns: a record with components L1, L2 and L3.

Constructs standard generators L1, L2, L3 as used in [HR10] with the following properties (analogous to Theorem 3.11 loc. cit.):

The construction is taken from [Tay87].

5.4 Sizes of classical groups

This section provides functions to compute the orders of various classical groups over finite fields, using the information collected in [BHR13].

5.4-1 SizeSp
‣ SizeSp( n, q )( function )

Returns: the size of the group Sp( n , q ), according to [BHR13, Theorem 1.6.22].

5.4-2 SizePSp
‣ SizePSp( n, q )( function )

Returns: the size of the group PSp( n , q ), according to [BHR13, Table 1.3].

5.4-3 SizeSU
‣ SizeSU( n, q )( function )

Returns: the size of the group SU( n , q ), according to [BHR13, Theorem 1.6.22].

5.4-4 SizePSU
‣ SizePSU( n, q )( function )

Returns: the size of the group PSU( n , q ), according to [BHR13, Table 1.3].

5.4-5 SizeGU
‣ SizeGU( n, q )( function )

Returns: the size of the group GU( n , q ), according to [BHR13, Table 1.3].

5.4-6 SizeGO
‣ SizeGO( epsilon, n, q )( function )

Returns: the size of the group GO( epsilon, n , q ), according to [BHR13, Theorem 1.6.22].

5.4-7 SizeSO
‣ SizeSO( epsilon, n, q )( function )

Returns: the size of the group SO( epsilon, n , q ), according to [BHR13, Table 1.3].

5.4-8 SizeOmega
‣ SizeOmega( epsilon, n, q )( function )

Returns: the size of the group Omega( epsilon, n , q ), according to [BHR13, Table 1.3].

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

generated by GAPDoc2HTML