This package makes computations in the representation rings of general linear groups and symmetric groups possible.
Given a positive integer n we may define a polynomial ring in n variables over an arbitrary base ring , whose monomials correspond to the irreducible representations of GL(n), and where multiplication is given by the decomposition of the tensor product of representations. We create such a ring in Macaulay2 using the schurRing function.
|
|
Note that in the above, n is allowed to be equal to \infty. However, in this version of the package, many of the features from the case n finite are missing from the infinite case, so the user is advised to use large values for n as a substitute, whenever necessary.
We determine the relative dimension of a SchurRing over its base using the numgens function:
|
|
For k\leq n, one may interpret the degree k homogeneous component of a SchurRing as the representation ring of the symmetric group S_k. In this ring, the multiplication is different than the one in the representation ring of GL(n). By default, the elements of a SchurRing are interpreted as (virtual) characters of a general linear group. This interpretation is controlled by the option GroupActing, whose default value is "GL". To indicate that the elements of a Schur ring should be interpreted as characters of the symmetric group, one has to set the option GroupActing to "Sn".
|
A monomial in S represents the irreducible representation with a given highest weight. The standard GL(4)-representation is
|
We may see the dimension of the corresponding irreducible representation using dim:
|
Multiplication of elements corresponds to tensor product of representations. The value is computed using a variant of the Littlewood-Richardson rule.
|
|
The third symmetric power of V is obtained by
|
|
and the third exterior power of V can be obtained using
|
|
Alternatively, one can use the functions symmetricPower and exteriorPower:
|
|
We can in fact take symmetric powers and exterior powers of any representation:
|
|
and compute even more general forms of plethysm:
|
Alternatively, we can use the binary operator @ to compute plethysm:
|
|
All the above calculations assume that we're dealing with representations of GL(4). But as symmetric functions of degree three, W and U, can be thought of as characters of the symmetric group S_3. Let us first ``move'' these symmetric functions into a Schur ring designed to deal with characters of symmetric groups (like the ring Q defined above):
|
|
Now W' corresponds to the trivial representation of S_3, and U' to the sign representation. As such, we can tensor them together using the function internalProduct, or the binary operator *.
|
We can generate the class function corresponding to an S_n-representation, using the function classFunction:
|
|
We can multiply class functions together, and transform class functions into symmetric functions using the function symmetricFunction:
|
|
The result of the previous computation is of course the same as that of taking the product of W' and U'.
We can take exterior and symmetric powers of S_n-representations, just as for GL-modules (compare to o16 and o17):
|
|
We can write any symmetric function in terms of the standard e- (elementary symmetric), h- (complete) and p- (power sum) bases, using the functions toE, toH, toP respectively:
|
|
|
These expressions live in the Symmetric ring associated to S, which can be obtained using the function symmetricRing:
|
Similarly, any Symmetric ring has a Schur ring attached to it, which can be obtained using the function schurRing:
|
We construct tensor products of Schur rings iteratively by allowing Schur rings over base rings that are also Schur rings:
|
The Schur ring T can thus be thought of as the representation ring of GL(V)\times GL(V'), where V is as before a vector space of dimension 4, and V' is a vector space of dimension 3. The representation corresponding to V' is
|
The function schurLevel indicates the number of Schur rings that have been tensored together to obtain any given ring:
|
|
|
We can now check Cauchy's formula for decomposing symmetric/exterior powers of a tensor product:
|
|
We end with the computation of the GL(n)- and S_n-equivariant resolutions of the residue field of a polynomial ring in n variables. The function that does this calculation, schurResolution, is based on an empirical method, which gives the correct answer in surprisingly many situations.
In the GL(n) situation, we are resolving the residue field which as a representation has character 1_S. The space of linear forms in the polynomial ring considered as a GL-representation has character V = s_1.
|
|
|
Not surprisingly, the syzygy modules are generated by the exterior powers of V.
The residue field as a representation of the symmetric group S_n has character s_n. The space of linear forms in the polynomial ring considered as an S_n-representation coincides with the permutation representation of S_n, thus has character s_n + s_{n-1,1}.
|
|
|
We can check that the second syzygy module is generated by the second exterior power of the permutation representation.
|
|
Variant character rings. Beyond the general linear and symmetric groups, the package supports several other families of representation rings. All of them are realized as SchurRings, with behavior controlled by the option GroupActing (and, for basis conversions, Basis). The current values are:
$\bullet$ "GL" (default): polynomial representations of $GL_n$, with basis the Schur functions $s_\lambda$ and the Littlewood-Richardson product.
$\bullet$ "Sn": the representation ring of the symmetric group $S_n$, with basis indexed by partitions and product the internal product (Kronecker product of $S_n$-characters). See internalProduct.
$\bullet$ "Sp": the (universal or finite-rank) character ring of the symplectic groups, with basis $sp_\lambda$ and product the Newell-Littlewood product. See toSp.
$\bullet$ "O": the (universal or finite-rank) character ring of the orthogonal groups, with basis $o_\lambda$. The finite-rank ring distinguishes type $B$ and type $D$ via the option OddOrEven. See toO.
$\bullet$ "RatGL": the ring of rational (i.e. finite-dim'l) representations of $GL_n$, whose irreducibles are indexed by bipartitions $(\alpha,\beta)$. See toRatGL.
$\bullet$ "SL": the ring of polynomial representations of $SL_n$ (rows of length $n$ are killed).
Orthogonally, the option Basis $=>$ "Monomial" replaces the Schur basis with the monomial symmetric functions $m_\lambda$; multiplication is implemented by round-tripping through the Schur basis using Kostka numbers (kostkaNumber, toM).
|
|
|
|
|
|
|
|
Stable vs.\ finite-rank rings. Each of the above flavors comes in two sizes. Passing a positive integer n to schurRing constructs the finite-rank ring, where partitions are restricted in length (to $n$ for GL/Sn and to the appropriate rank for Sp/O/RatGL) and the Sam-Snowden-Weyman modification rules are applied automatically. Passing infinity instead constructs the stable (universal) ring: a polynomial ring with countably many generators, one for each partition, on which all operations are performed without modification. This is the ring of universal characters of Koike--Terada — a single computation that specializes to every finite rank.
|
|
|
Having computed in the stable ring, one can specialize to a finite rank at the end. The modification rule drops or re-signs any partition that exceeds the target rank.
|
|
|
Conversions between variants. Every basis conversion is reversible and functorial. The table below summarizes the user-level commands for moving between them:
$\bullet$ toS, toGL: to the plain Schur (GL) basis.
$\bullet$ toE, toH, toP: to the $e/h/p$-basis (lives in the associated symmetricRing).
$\bullet$ toSymm: inverse of toS; pushes a Schur-basis element into the symmetric ring.
$\bullet$ toM: to the monomial basis.
$\bullet$ toSp, toO: to the symplectic or orthogonal character basis, via the inverse Koike branching formulas.
$\bullet$ toRatGL: embeds a (polynomial) GL character into the ring of rational GL characters.
$\bullet$ toSn: carries coefficient data from a GL-style ring into an Sn-style ring (same partition labels, different product).
$\bullet$ convert: a universal dispatcher — given any source and any target, it picks the right converter.
$\bullet$ specialize: stable ring $\to$ finite-rank ring, for any variant (applies the appropriate modification rule).
$\bullet$ branch: restricts a Schur, Sp, or O character along the diagonal of a product of two classical groups.
|
|
|
|
The compatibility of these conversions can be verified against the Newell-Littlewood product directly. For instance, in the stable symplectic ring, $sp_{(1)}^2 = sp_{(2)} + sp_{(1,1)} + 1$; equivalently, $(s_{(1)})^2 = s_{(2)} + s_{(1,1)}$, and expanding each Schur function in the Sp basis via toSp and adding yields the same element.
Mathematical background. We collect some pointers for readers who wish to consult the original sources.
$\bullet$ Schur-Weyl duality states that the group algebras of $GL_n$ and $S_d$ act on $V^{\otimes d}$ with mutually centralizing images, so the decomposition of $V^{\otimes d}$ as a $GL_n \times S_d$-module provides a bijection between polynomial representations of $GL_n$ of degree $d$ and representations of $S_d$. The toSn / toGL pair is the computational realization of this bijection.
$\bullet$ The Frobenius characteristic identifies the representation ring of $S_n$ with the degree-$n$ component of the ring of symmetric functions. Under this isomorphism, the character of a virtual representation corresponds to a symmetric function, and the internal product of characters to a product expressible in the power-sum basis. See classFunction and symmetricFunction.
$\bullet$ The Koike-Terada universal characters provide a single family of symmetric functions whose specializations at $n$ variables recover the irreducible characters of $Sp(2n)$ (or $O(n)$) for every $n$. Equivalently, the stable Sp/O character rings form a purely combinatorial object, and the Sam-Snowden-Weyman modification rule tells us how to specialize to finite rank.
$\bullet$ The Newell-Littlewood product is the multiplication in the stable Sp/O ring, expressed as a Littlewood-Richardson-like sum: $$sp_\mu \cdot sp_\nu = \sum_{\alpha,\beta,\gamma} c^\mu_{\alpha,\beta}\, c^\nu_{\alpha,\gamma}\, sp_{\beta\gamma},$$ where $c^\lambda_{\mu\nu}$ are the Littlewood-Richardson coefficients. The analogous formula holds for $o$. Our implementation replaces this with the equivalent route (Schur basis, multiply, back to Sp/O via toSp/toO), which is both faster and easier to certify.
$\bullet$ King branching formulas describe the restriction of a character of a classical group to a two-factor subgroup. See branch.
$\bullet$ Plethysm $f[g]$ encodes composition of Schur functors: $f[g]$ is the character of the $GL(V)$-representation obtained by applying the functor with character $f$ to the representation with character $g$. Our implementation agrees with the classical definition on power-sum generators: $p_n[g(x_1,x_2,\dots)] = g(x_1^n, x_2^n, \dots)$. See plethysm.
References.
$\bullet$ I.\ G.\ Macdonald, Symmetric Functions and Hall Polynomials, 2nd ed., Oxford University Press, 1995.
$\bullet$ W.\ Fulton, Young Tableaux, LMSST 35, Cambridge University Press, 1997.
$\bullet$ W.\ Fulton and J.\ Harris, Representation Theory. A First Course, GTM 129, Springer, 1991.
$\bullet$ R.\ P.\ Stanley, Enumerative Combinatorics, Vol.\ 2, Cambridge University Press, 1999.
$\bullet$ B.\ E.\ Sagan, The Symmetric Group. Representations, Combinatorial Algorithms, and Symmetric Functions, 2nd ed., GTM 203, Springer, 2001.
$\bullet$ J.\ Weyman, Cohomology of Vector Bundles and Syzygies, Cambridge Tracts in Math.\ 149, 2003.
$\bullet$ K.\ Koike, On the decomposition of tensor products of the representations of classical groups: by means of universal characters, Adv.\ Math.\ 74 (1989), 57–86.
$\bullet$ K.\ Koike and I.\ Terada, Young-diagrammatic methods for the representation theory of the classical groups of type $B_n$, $C_n$, $D_n$, J.\ Algebra 107 (1987), 466–511.
$\bullet$ R.\ C.\ King, Branching rules for classical Lie groups using tensor and spinor methods, J.\ Phys.\ A 8 (1975), 429–449.
$\bullet$ S.\ V.\ Sam and A.\ Snowden, Introduction to twisted commutative algebras, arXiv:1209.5122 (2012).
$\bullet$ S.\ V.\ Sam and A.\ Snowden, Stability patterns in representation theory, Forum Math.\ Sigma 3 (2015), e11.
$\bullet$ S.\ V.\ Sam, A.\ Snowden, and J.\ Weyman, Homology of Littlewood complexes, Selecta Math.\ (N.S.) 19 (2013), 655–698.
This documentation describes version 2.0 of SchurRings, released April 17, 2026.
If you have used this package in your research, please cite it as follows:
|
The object SchurRings is a package, defined in SchurRings.m2.
The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/SchurRings.m2:4922:0.