Representation Theory#
A set of functions are provided for computing with the characters of a group. Full details of these functions may be found in Chapter Characters of Finite Groups. For convenience we include here two of the more useful character functions. Also, functions are provided for computing with the modular representations of a group. Full details of these functions may be found in Chapter Modules over an Algebra and Group Representations. For the reader’s convenience we include here the functions which may be used to define a \(K[G]\)-module for a matrix group.
The functions described in this section apply only to finite groups for which a base and strong generating set may be constructed.
- LinearCharacters(G): GrpMat -> [ Chtr ]#
A sequence containing the linear characters for the group \(G\).
- CharacterTable(G: parameters): GrpMat -> TabChtr#
Al : MonStgElt Default: "Default" DSSizeLimit: RngIntElt Default: 0
Construct the table of ordinary irreducible characters for the group \(G\).
This parameter controls the algorithm used. The string
"DS"forces use of the Dixon-Schneider algorithm. The string"IR"forces the use of Unger’s induction/reduction algorithm [Unger, 2006]. The"Default"algorithm is to use Dixon-Schneider for groups of order \(\le 5000\) and Unger’s algorithm for larger groups. This may change in future.When the default algorithm is selected, a positive value \(n\) for
DSSizeLimitmeans that before using Unger’s algorithm, the full character space is split by some passes of Dixon-Schneider, restricted to using class matrices corresponding to conjugacy classes with size at most \(n\).
- PermutationCharacter(G, H): GrpMat, GrpMat -> AlgChtrElt#
Given a group \(G\) and a subgroup \(H\) of \(G\), construct the ordinary character afforded by the representation of \(G\) given by its action on the coset space of the subgroup \(H\).
- GModule(G): GrpMat -> ModGrp#
The natural \(R[G]\)-module for the matrix group \(G\).
- GModule(G, A): GrpMat, AlgMat -> ModGrp#
Let \(A\) be a matrix ring defined over the ring \(R\) and let \(G\) be a finite group defined on \(m\) generators. Let \(M\) denote the underlying module of \(A\). Suppose there is a one-to-one correspondence between the generators of \(G\) and the generators \([ A_1, \ldots, A_m ]\) of \(A\). The function
GModulecreates the \(R[G]\)-module corresponding to an action of \(G\) on \(M\) defined by \(A\), where the action of the \(i\)-th generator of \(G\) on \(M\) is given by \(A_i\).
- GModule(G, Q): GrpMat, [ AlgMatElt ] -> ModGrp#
Let \(A\) be a matrix ring defined over the ring \(R\) and let \(G\) be a finite group defined on \(m\) generators. Let \(M\) denote the underlying module of \(A\). Given a sequence \(Q\) of \(m\) elements of \(A\), the function
GModulecreates the \(R[G]\)-module corresponding to an action of \(G\) on \(M\) defined by \(Q\), where the action of the \(i\)-th generator of \(G\) on \(M\) is given by \(Q[i]\).
- GModule(G, A, B): GrpMat, GrpMat, GrpMat -> ModGrp, Map#
Let \(A\) and \(B\) be normal subgroups of \(G\) such that \(B\) is contained in \(A\). Further, assume that \(A/B\) is elementary abelian of order \(p^n\), \(p\) a prime. Let \(K\) denote the field of \(p\) elements. This function constructs a \(K[G]\)-module corresponding to the action of the group \(G\) on the elementary abelian section \(A/B\) of \(G\). The map from \(A\) to the \(K[G]\)-module’s underlying vector space is also returned.
- PermutationModule(G, H, R): GrpMat, GrpMat, Rng -> ModGrp#
The permutation module for the matrix group \(G\) over the ring \(R\) defined by its action on the cosets of the subgroup \(H\).
- ChangeOfBasisMatrix(G, S): GrpMat, ModGrp -> AlgMatElt#
Given a matrix group \(G\) and a submodule \(S\) of its natural module, return an invertible matrix with topmost rows a basis for \(S\). Conjugating by the inverse of this matrix puts the generators of \(G\) into a block form that exhibits their action on \(S\) and the quotient module.
- Example: G Module (ex-089525)#
We use the module machinery to refine an elementary abelian normal subgroup by finding a normal subgroup contained in it.
> G := MatrixGroup<4, IntegerRing(4) | > [ 3, 3, 1, 3, 0, 2, 2, 3, 3, 0, 1, 3, 3, 2, 2, 1 ], > [ 2, 2, 3, 3, 0, 3, 1, 1, 3, 0, 1, 1, 2, 0, 1, 2 ] >; > #G; 660602880 > H := pCore(G, 2); > FactoredOrder(H); [ <2, 15> ] > IsElementaryAbelian(H); true > M, f := GModule(G, H, sub<H|>); > SM := Submodules(M); > #SM; 3
One of these submodules is 0, one is all
M, we are interested in the one in the middle. Note that the result returned bySubmodulesis sorted by dimension.> N := SM[2] @@ f; > N; MatrixGroup(4, IntegerRing(4)) Generators: [3 0 0 0] [0 3 0 0] [0 0 3 0] [0 0 0 3]
We have found
N, a normal subgroup ofG, contained in the 2-core, with order 2.