Introduction

A symmetric function is a polynomial which is invariant under permutations of its indeterminates. The symmetric functions over a commutative ring with unity, with an arbitrary number of indeterminates, form an algebra, denoted by Λ.

The symmetric functions of fixed degree n form a submodule of Λ denoted by Λn. When analysing and computing with elements of Λ, there are 5 important bases to consider. These are the bases consisting of the Schur, Homogeneous, Power Sum, Elementary and Monomial symmetric functions. The size of any basis of Λn is equal to the number of partitions of weight n, and each basis has its elements indexed by those partitions.

A partition is a weakly decreasing sequence of positive integers. So, for example, [5, 3, 1] is a partition of weight 9, and [3, 1] is a partition of weight 4. For more information on partitions see Section Partitions.

Magma allows computations with symmetric functions in any of the 5 bases, and any symmetric function can be expressed in any of the different bases. The main reference on the theory of symmetric functions used here is the book of Macdonald [Mac95].

In order to understand the different symmetric function bases, it is necessary to have an understanding of Young Tableaux. Firstly, for a given partition let us visualise its shape making a diagram. We arrange "boxes" in left-justified rows corresponding to the entries of the partition. So for example, the partition [4, 3, 1] of weight 8 gives matrix ( & & &
& &

) This is known as a Ferrers diagram.

Now, to create a Young tableau, we must fill these boxes with integer entries, but subject to some restrictions. We require that each row of the tableau must be weakly increasing, and each column must be strictly increasing. So, for example, a possible tableau of shape [4, 3, 1] would be T = matrix ( 1 & 3 & 3 & 4
2 & 4 & 5
4
)

A tableau can be mapped onto a monomial by treating each entry in the tableau as an indeterminate. So, the above tableau will correspond to the monomial T |-> xT = x1 x2 x32 x43 x5

With this connection between tableaux and monomials we are now able to define the bases of an algebra of symmetric functions.

An important point to realise is that when dealing with a symmetric function, the number of indeterminates of the corresponding polynomial is neither fixed nor important. In fact a symmetric function has an image as a symmetric polynomial in an arbitrary number of indeterminates, even an infinite number. Magma is only equipped to deal with polynomial rings with finite rank.

Since the partitions of weight n prescribe the symmetric function basis elements of degree n which generate Λn, (the symmetric polynomials in n indeterminates), then the number of indeterminates being used will normally be equal to the degree of the symmetric functions considered.

Schur Functions

Given a partition λ = [λ1, λ2, ... , λl] of weight n, the Schur function sλ is given by sλ = ∑T xT where the sum is taken over all Young tableaux with shape λ, whose entries are all less than or equal to m, (the number of required indeterminates).

Elementary Functions

For a positive integer k, define the k-th elementary symmetric function, ek, as the Schur function of [1k]. Then, for any partition λ = [λ1, λ2, ..., λl], we define the elementary symmetric function indexed by λ to be eλ = ∏i eλi.

Homogeneous Functions

For a positive integer k, define the k-th homogeneous symmetric function, hk, as the Schur function of [k]. Then, for any partition λ = [λ1, λ2, ..., λl], we define the homogeneous symmetric function indexed by λ to be hλ = ∏i hλi.

Monomial Functions

For a partition λ = [λ1, λ2, ..., λl], let xλ be given by x1λ1x2λ2 ... xlλl. The monomial symmetric function mλ is the sum over the orbits of xλ under the action of the symmetric group. Where the number of indeterminates exceeds the length of the partition, λ can be considered to have trailing zeros.

Power Sums

For a positive integer k, define the k-th power sum symmetric function, pk, as the monomial function of [k]. Then, for any partition λ = [λ1, λ2, ..., λl], we define the power sum symmetric function indexed by λ to be pλ = ∏i pλi.

For each of these classes of functions, the set of all functions indexed by partitions of weight n forms a basis for Λn. Taking functions indexed by partitions of all weights gives a basis of Λ.

It is possible to define an inner product on Λ by requiring that the bases (mλ) and (hλ) be dual to each other:

< mλ, hλ ' > = δλ, λ '

With respect to this inner product, the Schur functions are an orthonormal basis of Λn and Λ and the power sum basis is an orthogonal basis.

Example AlgSym_inf-invar (H155E1)

We give an example illustrating the correspondence between symmetric functions written with respect to a symmetric function basis and symmetric polynomials. While the degree of the symmetric function fixes the degree of the resulting polynomial, the number of indeterminates is arbitrary.
> Q := Rationals();
> S := SFASchur(Rationals());
> e := S.[2,1];
> P2<[x]> := PolynomialRing(Q, 2);
> P2 ! e;
x[1]^2*x[2] + x[1]*x[2]^2
> P3<[y]> := PolynomialRing(Q, 3);
> P3 ! e;
y[1]^2*y[2] + y[1]^2*y[3] + y[1]*y[2]^2 + 2*y[1]*y[2]*y[3] + y[1]*y[3]^2 +
    y[2]^2*y[3] + y[2]*y[3]^2
> P4<[z]> := PolynomialRing(Q, 4);
> P4 ! e;
z[1]^2*z[2] + z[1]^2*z[3] + z[1]^2*z[4] + z[1]*z[2]^2 + 2*z[1]*z[2]*z[3] +
    2*z[1]*z[2]*z[4] + z[1]*z[3]^2 + 2*z[1]*z[3]*z[4] + z[1]*z[4]^2 +
    z[2]^2*z[3] + z[2]^2*z[4] + z[2]*z[3]^2 + 2*z[2]*z[3]*z[4] +
    z[2]*z[4]^2 + z[3]^2*z[4] + z[3]*z[4]^2
>
> P5<[w]> := PolynomialRing(Q, 5);
> P5 ! e;
w[1]^2*w[2] + w[1]^2*w[3] + w[1]^2*w[4] + w[1]^2*w[5] + w[1]*w[2]^2 +
    2*w[1]*w[2]*w[3] + 2*w[1]*w[2]*w[4] + 2*w[1]*w[2]*w[5] + w[1]*w[3]^2 +
    2*w[1]*w[3]*w[4] + 2*w[1]*w[3]*w[5] + w[1]*w[4]^2 + 2*w[1]*w[4]*w[5] +
    w[1]*w[5]^2 + w[2]^2*w[3] + w[2]^2*w[4] + w[2]^2*w[5] + w[2]*w[3]^2 +
    2*w[2]*w[3]*w[4] + 2*w[2]*w[3]*w[5] + w[2]*w[4]^2 + 2*w[2]*w[4]*w[5] +
    w[2]*w[5]^2 + w[3]^2*w[4] + w[3]^2*w[5] + w[3]*w[4]^2 +
    2*w[3]*w[4]*w[5] + w[3]*w[5]^2 + w[4]^2*w[5] + w[4]*w[5]^2
V2.28, 13 July 2023