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 \(R[G]\)-module for a permutation group.

CharacterTable(G: parameters): GrpPerm -> 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 [Ung06a]. 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 DSSizeLimit means 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): GrpPerm -> AlgChtrElt

Given a group \(G\) represented as a permutation group, construct the character of \(G\) afforded by the defining permutation representation of \(G\).

PermutationCharacter(G, H): GrpPerm, GrpPerm -> AlgChtrElt

Given a group \(G\) and some subgroup \(H\) of \(G\), construct the ordinary character of \(G\) afforded by the permutation representation of \(G\) given by the action of \(G\) on the coset space of the subgroup \(H\) in \(G\).

GModule(G, S): Grp, AlgMat -> ModGrp

Let \(G\) be a group defined on \(r\) generators and let \(S\) be a subalgebra of the matrix algebra \(M_n(R)\), also defined by \(r\) non-singular matrices. It is assumed that the mapping from \(G\) to \(S\) defined by \(\phi(G.i) \rightarrow S.i\), for \(i = 1, \ldots, r\), is a group homomorphism. Let \(M\) be the natural module for the matrix algebra \(S\). The function GModule gives \(M\) the structure of an \(S[G]\)-module, where the action of the \(i\)-th generator of \(G\) on \(M\) is given by the \(i\)-th generator of \(S\).

GModule(G, A, B): Grp, Grp, Grp -> ModGrp, Map

Given a finite group \(G\), a normal subgroup \(A\) of G, and a normal subgroup \(B\) of \(A\) such that the section \(A/B\) is elementary abelian of order \(p^n,\) create the \(K[G]\)-module \(M\) corresponding to the action of \(G\) on \(A/B\), where \(K\) is the field \({\bf F}_{p}\). If \(B\) is trivial, it may be omitted. The function returns

(a)

the module \(M\); and

(b)

the homomorphism \(\phi : A/B \rightarrow M\).

PermutationModule(G, H, R): Grp, Grp, Rng -> ModGrp

Given a finite group \(G\) and a ring \(R\), create the \(R[G]\)-module for \(G\) corresponding to the permutation action of \(G\) on the cosets of \(H\).

PermutationModule(G, R): GrpPerm, Rng -> ModGrp

Given a finite permutation group \(G\) and a ring \(R\), create the natural permutation module for \(G\) over \(R\).

Example: Refining an Elementary Abelian Subgroup (ex-7c0920)

Run in calculator (opens in a new tab)

We refine an elementary abelian normal subgroup of a permutation group to a sequence of normal subgroups.

> G := PermutationGroup<24 |
>  [ 3, 4, 1, 2,23,24, 7, 8, 9,10,12,11,14,13,16,15,18,17,22,21,
>    20,19, 5, 6 ],
>  [ 7, 8,11,12,13,14,22,21,20,19,15,16,17,18, 6, 5, 4, 3, 1, 2,23,
>    24, 9,10 ] >;
> N := sub<G |
>  [ 24, 23, 6, 5, 4, 3, 10, 9, 8, 7, 14, 13, 12, 11, 18, 17, 16, 15, 22, 21,
>    20, 19, 2, 1 ],
>  [ 23, 24, 5, 6, 3, 4, 8, 7, 10, 9, 12, 11, 14, 13, 15, 16, 17, 18, 19, 20,
>    21, 22, 1, 2 ],
>  [ 2, 1, 4, 3, 6, 5, 7, 8, 9, 10, 11, 12, 13, 14, 17, 18, 15, 16, 21, 22, 19,
>    20, 24, 23 ]>;
> #N;
8
> IsNormal(G, N);
true
> IsElementaryAbelian(N);
true
> M, f := GModule(G, N);
> SM := Submodules(M);
> #SM;
4
> refined := [ x @@ f : x in SM ];
> forall{x : x in refined | IsNormal(G, x) };
true;
> [ #x : x in refined];
[ 1, 2, 4, 8 ]

The original elementary abelian normal subgroup of order 8 is the top of a chain of normal subgroups of length 3.

Run in calculator (opens in a new tab)