For the symmetric group of degree n the irreducible representations can be indexed by partitions of weight n. For more information on partitions see Section Partitions.
It is possible to define representing matrices of the symmetric group over the integers.
Al: MonStgElt Default: "JamesKerber"
Given a partition pa of weight n and a permutation pe in a symmetric group of degree n, return an irreducible representing matrix for pe, indexed by pa, over the integers. If Al is set to the default "JamesKerber" then the method described in [JK81] is used. If Al is set to "Boerner" the method described in the book of Boerner [Boe67] is used. If Al is set to "Specht" then the method used is a direct implementation of that used by Specht in his paper from 1935 [Spe35].
> a:=SymmetricRepresentation([3,2],Sym(5)!(3,4,5) : Al := "Boerner");a; [ 0 0 1 -1 0] [ 1 0 0 -1 0] [ 0 1 0 -1 0] [ 0 0 0 -1 1] [ 0 0 0 -1 0] > b:=SymmetricRepresentation([3,2],Sym(5)!(3,4,5) : Al := "Specht");b; [ 0 1 0 -1 0] [ 0 0 1 0 -1] [ 1 0 0 0 0] [ 0 0 0 0 -1] [ 0 0 0 1 -1] > IsSimilar(Matrix(Rationals(), a), Matrix(Rationals(), b)); trueThe matrices are similar as they should be.
The seminormal and orthogonal representations involve matrices which are not necessarily integral. The method Magma uses to construct these matrices is described in [JK81, Section 3.3];
Given a partition pa of weight n and a permutation pe in a symmetric group of degree n, return the matrix of the seminormal representation for pe, indexed by pa, over the rationals.
Given a partition pa of weight n and a permutation pe in a symmetric group of degree n, return the matrix of the orthogonal representation for pe, indexed by pa. An orthogonal basis is used to compute the matrix which may have entries in a cyclotomic field.
> g:=Sym(5)!(3,4,5); > a:=SymmetricRepresentationSeminormal([3,2],g);a; [-1/2 0 -3/4 0 0] [ 0 1/2 0 3/4 0] [ 1 0 -1/2 0 0] [ 0 1/3 0 -1/6 8/9] [ 0 1 0 -1/2 -1/3] > b:=SymmetricRepresentationOrthogonal([3,2],g);b; [-1/2 0 zeta(24)_8^2*zeta(24)_3 + 1/2*zeta(24)_8^2 0 0] [0 1/2 0 -zeta(24)_8^2*zeta(24)_3 - 1/2*zeta(24)_8^2 0] [-zeta(24)_8^2*zeta(24)_3 - 1/2*zeta(24)_8^2 0 -1/2 0 0] [0 -1/3*zeta(24)_8^2*zeta(24)_3 - 1/6*zeta(24)_8^2 0 -1/6 2/3*zeta(24)_8^3 - 2/3*zeta(24)_8] [0 2/3*zeta(24)_8^3*zeta(24)_3 + 1/3*zeta(24)_8^3 + 2/3*zeta(24)_8*zeta(24)_3 + 1/3*zeta(24)_8 0 -1/3*zeta(24)_8^3 + 1/3*zeta(24)_8 -1/3] > IsSimilar(a,b); trueThey should both be of finite order, 3.
> IsOne(a^Order(g)); true > IsOne(b^Order(g)); true >