# SpechtModule -- a package for constructing Specht Modules

## Description

SpechtModule calculates many objects related to the irreducible representations of the symmetric functions. This construction is used to implement an algorithm in invariant theory which calculates efficiently the secondary invariants of any permutation group.

The main features of the package include a method for calculating the character table of $S_n$, algorithms for calculating list of tableaux given a partition (tabloids, standard tableaux and semistandard tableaux among others) an implementation of the straightening algorithm which includes an implementation of the garnir element given a tableau an a row descent. Methods for calculating Higher Specht Polynomials which give a basis of the Specht Modules that arrise in the coinvariant ring of $S_n$ which is the quotient $k[x_1,..,x_n]/({\rm Sym}(n)^+)$. And finally methods for calculating the secondary invariants described above.

## Caveat

An improvement can be made by finding an efficient way to calculate or represent Schur Polynomials

## Version

This documentation describes version 1.0 of SpechtModule.

## Source code

The source code from which this documentation is derived is in the file SpechtModule.m2.

## For the programmer

The object SpechtModule is .