# RepresentationPackage1 R¶

rep1.spad line 1 [edit on github]

R: Ring

`RepresentationPackage1`

provides functions for representation theory for finite groups and algebras. The package creates permutation representations and uses tensor products and its symmetric and antisymmetric components to create new representations of larger degree from given ones. Note: instead of having parameters from Permutation this package allows list notation of permutations as well: e.g. `[1, 4, 3, 2]`

denotes permutes 2 and 4 and fixes 1 and 3.

- antisymmetricTensors: (List Matrix R, PositiveInteger) -> List Matrix R if R has CommutativeRing
`antisymmetricTensors(la, n)`

applies to each`m`

-by-`m`

square matrix in the list*la*the irreducible, polynomial representation of the general linear group*GLm*which corresponds to the partition*(1, 1, …, 1, 0, 0, …, 0)*of`n`

. Error: if`n`

is greater than`m`

. Note: this corresponds to the symmetrization of the representation with the sign representation of the symmetric group*Sn*. The carrier spaces of the representation are the antisymmetric tensors of the`n`

-fold tensor product.

- antisymmetricTensors: (Matrix R, PositiveInteger) -> Matrix R if R has CommutativeRing
`antisymmetricTensors(a, n)`

applies to the square matrix*a*the irreducible, polynomial representation of the general linear group*GLm*, where`m`

is the number of rows of*a*, which corresponds to the partition*(1, 1, …, 1, 0, 0, …, 0)*of`n`

. Error: if`n`

is greater than`m`

. Note: this corresponds to the symmetrization of the representation with the sign representation of the symmetric group*Sn*. The carrier spaces of the representation are the antisymmetric tensors of the`n`

-fold tensor product.

- createGenericMatrix: NonNegativeInteger -> Matrix Polynomial R
`createGenericMatrix(m)`

creates a square matrix of dimension`k`

whose entry at the`i`

-th row and`j`

-th column is the indeterminate*x[i, j]*(double subscripted).

- permutationRepresentation: (List Permutation Integer, Integer) -> List Matrix Integer
`permutationRepresentation([pi1, ..., pik], n)`

returns the list of matrices*[(deltai, pi1(i)), …, (deltai, pik(i))]*(Kronecker delta) for the permutations*pi1, …, pik*of*{1, 2, …, n}*.

- permutationRepresentation: (Permutation Integer, Integer) -> Matrix Integer
`permutationRepresentation(pi, n)`

returns the matrix*(deltai, ``pi``(i))*(Kronecker delta) for a permutation*``pi``* of *{1, 2, …, n}*.

- permutationRepresentation: List Integer -> Matrix Integer
`permutationRepresentation(pi, n)`

returns the matrix*(deltai, ``pi``(i))*(Kronecker delta) if the permutation*``pi``* is in list notation and permutes *{1, 2, …, n}*.

- permutationRepresentation: List List Integer -> List Matrix Integer
`permutationRepresentation([pi1, ..., pik], n)`

returns the list of matrices*[(deltai, pi1(i)), …, (deltai, pik(i))]*if the permutations*pi1*, …,*pik*are in list notation and are permuting*{1, 2, …, n}*.

- symmetricTensors: (List Matrix R, PositiveInteger) -> List Matrix R
`symmetricTensors(la, n)`

applies to each`m`

-by-`m`

square matrix in the list*la*the irreducible, polynomial representation of the general linear group*GLm*which corresponds to the partition*(n, 0, …, 0)*of`n`

. Error: if the matrices in*la*are not square matrices. Note: this corresponds to the symmetrization of the representation with the trivial representation of the symmetric group*Sn*. The carrier spaces of the representation are the symmetric tensors of the`n`

-fold tensor product.

- symmetricTensors: (Matrix R, PositiveInteger) -> Matrix R
`symmetricTensors(a, n)`

applies to the`m`

-by-`m`

square matrix*a*the irreducible, polynomial representation of the general linear group*GLm*which corresponds to the partition*(n, 0, …, 0)*of`n`

. Error: if*a*is not a square matrix. Note: this corresponds to the symmetrization of the representation with the trivial representation of the symmetric group*Sn*. The carrier spaces of the representation are the symmetric tensors of the`n`

-fold tensor product.

- tensorProduct: (List Matrix R, List Matrix R) -> List Matrix R
`tensorProduct([a1, ..., ak], [b1, ..., bk])`

calculates the list of Kronecker products of the matrices *`ai`

* and *`bi`

* for {1`<=`

`i`

`<=`

`k`

}. Note: If each list of matrices corresponds to a group representation (repr. of generators) of one group, then these matrices correspond to the tensor product of the two representations.

- tensorProduct: (Matrix R, Matrix R) -> Matrix R
`tensorProduct(a, b)`

calculates the Kronecker product of the matrices*a*and`b`

. Note: if each matrix corresponds to a group representation (repr. of generators) of one group, then these matrices correspond to the tensor product of the two representations.

- tensorProduct: List Matrix R -> List Matrix R
`tensorProduct([a1, ...ak])`

calculates the list of Kronecker products of each matrix *`ai`

* with itself for {1`<=`

`i`

`<=`

`k`

}. Note: If the list of matrices corresponds to a group representation (repr. of generators) of one group, then these matrices correspond to the tensor product of the representation with itself.