A homotopical interpretation of plethysm identities
The ring of symmetric functions is one of the most intricate structures in all of mathematics. Quoting Michiel Hazewinkel:
“Whole books have been written about the symmetric functions and their representation-theoretic interpretations, and they constitute arguably one of the most beautiful and best studied objects in mathematics.”
In fact, the ring of symmetric functions is more than just a ring. It carries a vast array of algebraic operations, and the interplay between these different operations is often highly complex. In this post, we will primarily concern ourselves with the so-called plethysm operation. This operation is particularly interesting because they decompose in a highly nontrivial manner. The goal of this post is to give a homotopical interpretation to these decompositions, and to generalise them to a higher-categorical context.
As prerequisites, I assume that the reader has some intuitive familiarity with representation theory and higher category theory. I will, however, recall the relevant basics of the theory of symmetric functions.
The ring of symmetric functions
We might as well start with the definitions. Fix a base field $k$ of characteristic $0$, and let $f(x_1,\ldots,x_n)$ be a polynomial in $n$ variables over $k$. Then we say that $f$ is a symmetric polynomial if, for every permutation $\sigma \in \Sigma_n$, \[ f(x_{\sigma(1)},\ldots,x_{\sigma(n)}) = f(x_1,\ldots,x_n) \text{.} \] So for instance, the polynomial \[ 2 x_1^2 x_2^2 x_3^2 + (x_1 + x_2 + x_3)^5 - 3 \] is symmetric in three variables, because any permutation of the variables yields the same polynomial, but \[ x_1 x_2 + x_2 x_3 \] is not symmetric.
Sums and products of symmetric polynomials remain symmetric; as such, we may form the ring of symmetric polynomials in $n$ variables, denoted $\Lambda_n$, which naturally sits inside the polynomial ring $k[x_1,\ldots,x_n]$ as a subring.
The ring of symmetric functions, denoted $\Lambda$, is effectively what you get by taking $\Lambda_n$ and letting $n$ tend to infinity. Concretely, there are ring maps $\Lambda_{n} \to \Lambda_{n - 1}$ obtained by setting one of the variables to $0$, and $\Lambda$ may then be defined as the categorical limit of this sequence.Note 1
So what ring is $\Lambda$? Viewed abstractly, $\Lambda$ is isomorphic to a free polynomial ring on countably many generators — and the $\Lambda_n$ are free polynomial rings on $n$ generators. As such, $\Lambda$ doesn’t sound particularly exciting as a ring. However, a great deal of beauty underlies the choice of isomorphism. Put in other words, there are different choices of bases of $\Lambda$, and their interplay are highly intricate. Let’s see some examples of this.
Example. The complete homogeneous symmetric polynomial of degree $k$ in $n$ variables, denoted $h_k$, is formally defined as \[ h_k(x_1,\ldots,x_n) = \sum_{1 \leq i_1 \leq \cdots \leq i_k \leq n} x_{i_1} \cdots x_{i_k} \text{.} \] So for instance, we have \[ h_3(x_1,x_2) = x_1^3 + x_1^2 x_2 + x_1 x_2^2 + x_2^3 \text{.} \] Any symmetric polynomial in $n$ variables can be uniquely expressed as a polynomial expression in $h_1,\ldots,h_n$. In other words, $\Lambda_n$ is isomorphic to $k[h_1,\ldots,h_n]$. Likewise, any symmetric function in $\Lambda$ can be expressed as a polynomial in $h_1,h_2,\ldots$.
Example. The power-sum polynomial $p_k$ is defined as \[ p_k(x_1,\ldots,x_n) = x_1^k + \cdots + x_{n}^k \text{.} \] As before, all symmetric polynomials in $n$ variables are expressible as a polynomial in $p_1,\ldots,p_n$. In particular, this means that the remaining power-sum polynomials are expressible in terms of the first $n$ ones. For example, \[ p_3(x_1,x_2) = \frac{3}{2} p_1(x_1,x_2) p_2(x_1,x_2) - \frac{1}{2} p_1(x_1,x_2)^3 \text{.} \] Notice the fractions appearing in this expression. As it happens, the algebra basis $\{h_k\}$ works integrally, meaning that integral symmetric polynomials can be written as an integral expression in the $h_k$; however, this is not the case for the power-sum basis $\{p_k\}$.
Example. The monomial symmetric polynomials $m_{\lambda}$ of degree $k$ in $n$ variables are parametrised by the partitions of $k$. They are defined as \[ m_{\lambda}(x_1,\ldots,x_n) = {\sum}' x_1^{\lambda_{\sigma(1)}}\cdots x_n^{\lambda_{\sigma(n)}}\text{,} \] where the sum ranges over all distinct permutations $\sigma$ of $\lambda$. So for instance, \[ m_{(2, 1, 1)}(x_1,x_2,x_3) = x_1^2x_2x_3 + x_1 x_2^2 x_3 + x_1 x_2 x_3^2 \text{.} \] The monomial symmetric polynomials in $n$ variables form a vector space basis of $\Lambda_n$ rather than an algebra basis. That is, every symmetric polynomial is uniquely expressible as a linear combination of monomial symmetric polynomials.
Example. The Schur polynomials take a bit of preparation to define. Given an integer partition $\lambda = (\lambda_1,\ldots,\lambda_n)$ such that $\lambda_1 \geq \cdots \geq \lambda_n$, first define the auxiliary function \[ a_\lambda(x_1,\ldots,x_n) = \det \begin{pmatrix} x_1^{\lambda_1} & x_2^{\lambda_1} & \cdots & x_n^{\lambda_1} \\ x_1^{\lambda_2} & x_2^{\lambda_2} & \cdots & x_n^{\lambda_2} \\ \vdots & \vdots & \ddots & \vdots \\ x_n^{\lambda_1} & x_n^{\lambda_2} & \cdots & x_n^{\lambda_n} \end{pmatrix} \] Define $\delta = (n-1, n-2, \ldots, 1, 0)$. Then for any partition $\lambda$ we can define the Schur polynomial $s_\lambda(x_1,\ldots,x_n)$ as the quotient $a_{\delta + \lambda} / a_\lambda$. If the number of variables exceeds the size of the integer partition, just add zeros to it.
As a specific example, you are invited to check that \[ \begin{split} s_{(3,2,1)}(x_1,x_2,x_3) &= x_1^3 x_2^2 x_3 + x_1^2 x_2^3 x_3 + x_1^3 x_2 x_3^2 + 2x_1^2 x_1^2 x_2^2 \\ &\qquad + x_1 x_2^3 x_2^2 + x_1^2 x_2 x_3^3 + x_1 x_2^2 x_3^3 \end{split} \] As in the case of the monomial symmetric polynomials, Schur polynomials form a linear basis of the ring $\Lambda_n$. Notice also that $s_{(k)}(x_1,\ldots,x_n) = h_k(x_1,\ldots,x_n)$.
As it stands, $\Lambda$ is merely a ring that we can endow with complicated bases. What gives? Certainly, some of its beauty should be attributed to the fact that $\Lambda$ appears in different areas of mathematics. For instance, all the following rings are naturally isomorphic to $\Lambda$:
- The direct sum $\bigoplus_n R(S_n)$ of the representation rings of the symmetric groups.
- The ring of rationalNote 2 representations of $\mathrm{GL}_{\infty}(\mathbb{C})$.
- The cohomology ring of the classifying space $BU$.
- The ring corepresenting the Witt vector functor.
- The universal $\lambda$-ring on one generator.
Typically, the different bases that we had listed earlier have a particular interpretation in all these incarnations of $\Lambda$. For example, the Schur polynomials correspond precisely to the irreducible representations of $\mathrm{GL}_{\infty}(\mathbb{C})$.
But there’s much more to the story. $\Lambda$ is in fact more than just a ring: it carries a great deal of additional algebraic structure. For each of the different incarnations of $\Lambda$, these additional structures typically have some kind of meaning relevant to that particular incarnation. For instance, if we view $\Lambda$ as $\bigoplus_n R(S_n)$, then many of the operations will have a representation-theoretic meaning. In this note, we will primarily confine ourselves to an operation known as plethysm.
What is plethysm?
If $f$ and $g$ are symmetric polynomials, then the plethysm $f[g]$ is roughly what you obtain by substituting the monomials of $g$ for the variables of $f$, though making this precise is not entirely obvious. Let’s denote by $p_n$ the $n$-th power-sum polynomial $x_1^n + x_2^n + \cdots$. Then plethysm is a binary operation which is uniquely determined by the following three basic properties.
- For all $m$ and $n$, $p_m[p_n] = p_{mn}$.
- Left plethysm by $p_m$, in other words $f \mapsto p_m[f]$, is a ring homomorphism.
- Right plethysm by any $g$, that is, $f \mapsto f[g]$, is a ring homomorphism.
Lemma. The three axioms above uniquely determine a binary operation on $\Lambda$.
Proof: Because the power-sum polynomials generate $\Lambda$,Note 3 there exists a unique map $\Lambda \to \Lambda$ sending $p_n$ to $p_{mn}$. Thus, there’s a unique way of defining $p_m[f]$ for all $f$ such that the first two axioms hold. By the same argument, for every $g$, there’s a unique algebra map sending $p_m$ to $p_m[g]$. Let this map be $f \mapsto f[g]$. ∎
The methods of the proof also suggest how to compute $f[g]$ in practice. Just decompose $f$ in terms of the power-sum basis, apply the third axiom, then decompose $g$ into that same basis and apply the first two axioms.
The same methods can also be used to prove various properties of plethysm. For instance, one can show that plethysm is an associative operation by reducing to the case of power sums, where the claim is obvious.
Note that we’ve been working with $\Lambda$ throughout, but the same methods work for $\Lambda_n$ as well.
Example. For simplicity, we’ll work in $\Lambda_2$.Note 4 Consider the polynomial \[ f(x_1,x_2) = h_2(x_1,x_2) = x_1^2 + x_1 x_2 + x_2^2 \text{.} \] For clarity, I will omit the variables where they are optional. Now, what is $h_2[h_2]$? We first decompose $h_2$ in terms of the power-sum polynomial basis: \[ \begin{split} f(x_1,x_2) &= \frac{1}{2}\big(x_1^2 + 2x_1 x_2 + x_2^2\big) + \frac{1}{2} \big(x_1^2 + x_2^2\big) \\ &= \frac{1}{2} p_1^2 + \frac{1}{2} p_2 \end{split} \] Now we repeatedly apply the axioms to deduce that \[ \begin{split} h_2[h_2] &= \frac{1}{8} p_1^4 + \frac{1}{4} p_1^2 p_2 + \frac{3}{8} p_2^2 + \frac{1}{4} p_4 \\ &= x_1^4 + x_1^3x_2 + 2x_1^2x_2^2 + x_1x_2^3 + x_2^4 \end{split} \] In fact, since we know that symmetric polynomials are expressible as polynomials in the $h_k$, we should be able to express $h_2[h_2]$ as such a polynomial, and indeed, \[ h_2[h_2] = h_2^2 - h_1 h_3 + h_4 \text{.} \] Now let’s fire up a computer and see how far we can stretch these computations.
Some more examples
The computer algebra software Sage has built-in methods to work with the ring of symmetric functions. We create an abstract instance of the ring of symmetric functions over a given base field, after which we can realise it using an explicit basis. Sage has several such bases available, but let’s stick with the power-sum basis for now.
Sym = SymmetricFunctions(QQ)
p = Sym.powersum()
Sym; p
Symmetric Functions over Rational Field Symmetric Functions over Rational Field in the powersum basis
To construct explicit elements of p
, we must specify its
power-sum basis expansion. For instance, consider the following:
f = p[3, 1, 1] + 2*p[2, 2]
The way you should read this is that \[ f = p_1^2 p_3 + 2 p_2^2 \text{.} \] To see this explicitly, we can expand $f$ into a symmetric polynomial in a specified number of variables:
f.expand(2, alphabet = 'x, y')
x^5 + 2*x^4*y + x^3*y^2 + x^2*y^3 + 2*x*y^4 + y^5 + 2*x^4 + 4*x^2*y^2 + 2*y^4
Sage can do conversions from one basis to another.
p = Sym.powersum()
h = Sym.homogeneous()
f = h[4, 1]
p(f)
1/24*p[1, 1, 1, 1, 1] + 1/4*p[2, 1, 1, 1] + 1/8*p[2, 2, 1] + 1/3*p[3, 1, 1] + 1/4*p[4, 1]
Concretely, what this means is that \[ h_1 h_4 = \frac{1}{24} p_1^5 + \frac{1}{4} p_1^3 p_2 + \frac{1}{8} p_1 p_2^2 + \frac{1}{3} p_1^2 p_3 + \frac{1}{4} p_1 p_4 \text{,} \] which in particular holds true upon expanding both sides in $n$ variables.
What’s particularly interesting for our purposes is that Sage is also capable of computing plethysms. In fact, the syntax is conveniently simple:
f = p[5]
g = p[3]
f(g)
p[15]
Let’s take the example we had computed by hand and see what we get:
f = h[2]
h(f(f))
h[2, 2] - h[3, 1] + h[4]
Just as we had found earlier. Notice, however, that there’s no implicit number of variables in the expression; the identity holds true for any number of variables!
Now let us try out a slightly more complicated example. We will see that it shows that plethysms become hopelessly complicated very quickly. Let $f = h_1 h_3$ and $g = h_5$, compute the plethysm $f[g]$, and express the result in terms of the monomial basis. Remember that the monomials form a vector space basis.
h = Sym.homogeneous()
m = Sym.monomial()
f = h[3, 1]
g = h[5]
m(f(g))
Click to show the output!
1955457504*m[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 1183566384*m[2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 716900184*m[2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 434546112*m[2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 263580240*m[2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 159984678*m[2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 97167798*m[2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 59052378*m[2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1] + 35910504*m[2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1] + 21851550*m[2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1] + 13305852*m[2, 2, 2, 2, 2, 2, 2, 2, 2, 2] + 554618064*m[3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 336420084*m[3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 204204000*m[3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 124030368*m[3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 75380886*m[3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 45841033*m[3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] + 27893508*m[3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1] + 16982910*m[3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1] + 10346686*m[3, 2, 2, 2, 2, 2, 2, 2, 2, 1] + 158302144*m[3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 96216736*m[3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 58515856*m[3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 35607698*m[3, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 21679780*m[3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1] + 13207128*m[3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1] + 8050462*m[3, 3, 2, 2, 2, 2, 2, 2, 1, 1] + 4910577*m[3, 3, 2, 2, 2, 2, 2, 2, 2] + 45453408*m[3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 27676572*m[3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 16860942*m[3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1] + 10277195*m[3, 3, 3, 2, 2, 2, 1, 1, 1, 1, 1] + 6267638*m[3, 3, 3, 2, 2, 2, 2, 1, 1, 1] + 3824771*m[3, 3, 3, 2, 2, 2, 2, 2, 1] + 13121696*m[3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1] + 8002286*m[3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1] + 4882602*m[3, 3, 3, 3, 2, 2, 1, 1, 1, 1] + 2980806*m[3, 3, 3, 3, 2, 2, 2, 1, 1] + 1821072*m[3, 3, 3, 3, 2, 2, 2, 2] + 3805937*m[3, 3, 3, 3, 3, 1, 1, 1, 1, 1] + 2324412*m[3, 3, 3, 3, 3, 2, 1, 1, 1] + 1420507*m[3, 3, 3, 3, 3, 2, 2, 1] + 1108642*m[3, 3, 3, 3, 3, 3, 1, 1] + 678262*m[3, 3, 3, 3, 3, 3, 2] + 220384164*m[4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 133945812*m[4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 81461688*m[4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 49572306*m[4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 30183881*m[4, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 18388903*m[4, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1] + 11209494*m[4, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1] + 6837341*m[4, 2, 2, 2, 2, 2, 2, 2, 1, 1] + 4173568*m[4, 2, 2, 2, 2, 2, 2, 2, 2] + 63263200*m[4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 38524024*m[4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 23471854*m[4, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 14308364*m[4, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] + 8726920*m[4, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1] + 5325720*m[4, 3, 2, 2, 2, 2, 2, 1, 1, 1] + 3252268*m[4, 3, 2, 2, 2, 2, 2, 2, 1] + 18264708*m[4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 11140710*m[4, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 6798571*m[4, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1] + 4150899*m[4, 3, 3, 2, 2, 2, 1, 1, 1, 1] + 2535867*m[4, 3, 3, 2, 2, 2, 2, 1, 1] + 1550426*m[4, 3, 3, 2, 2, 2, 2, 2] + 5299826*m[4, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1] + 3237278*m[4, 3, 3, 3, 2, 1, 1, 1, 1, 1] + 1978460*m[4, 3, 3, 3, 2, 2, 1, 1, 1] + 1209978*m[4, 3, 3, 3, 2, 2, 2, 1] + 1544476*m[4, 3, 3, 3, 3, 1, 1, 1, 1] + 944806*m[4, 3, 3, 3, 3, 2, 1, 1] + 578491*m[4, 3, 3, 3, 3, 2, 2] + 452002*m[4, 3, 3, 3, 3, 3, 1] + 25410616*m[4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 15502102*m[4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 9461844*m[4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 5777914*m[4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1] + 3530170*m[4, 4, 2, 2, 2, 2, 1, 1, 1, 1] + 2158232*m[4, 4, 2, 2, 2, 2, 2, 1, 1] + 1320600*m[4, 4, 2, 2, 2, 2, 2, 2] + 7375998*m[4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 4506551*m[4, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1] + 2754634*m[4, 4, 3, 2, 2, 1, 1, 1, 1, 1] + 1684710*m[4, 4, 3, 2, 2, 2, 1, 1, 1] + 1031140*m[4, 4, 3, 2, 2, 2, 2, 1] + 2150906*m[4, 4, 3, 3, 1, 1, 1, 1, 1, 1] + 1315892*m[4, 4, 3, 3, 2, 1, 1, 1, 1] + 805582*m[4, 4, 3, 3, 2, 2, 1, 1] + 493674*m[4, 4, 3, 3, 2, 2, 2] + 629699*m[4, 4, 3, 3, 3, 1, 1, 1] + 385916*m[4, 4, 3, 3, 3, 2, 1] + 185220*m[4, 4, 3, 3, 3, 3] + 2993655*m[4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1] + 1831971*m[4, 4, 4, 2, 1, 1, 1, 1, 1, 1] + 1121628*m[4, 4, 4, 2, 2, 1, 1, 1, 1] + 687218*m[4, 4, 4, 2, 2, 2, 1, 1] + 421529*m[4, 4, 4, 2, 2, 2, 2] + 877146*m[4, 4, 4, 3, 1, 1, 1, 1, 1] + 537492*m[4, 4, 4, 3, 2, 1, 1, 1] + 329696*m[4, 4, 4, 3, 2, 2, 1] + 257978*m[4, 4, 4, 3, 3, 1, 1] + 158477*m[4, 4, 4, 3, 3, 2] + 359448*m[4, 4, 4, 4, 1, 1, 1, 1] + 220667*m[4, 4, 4, 4, 2, 1, 1] + 135700*m[4, 4, 4, 4, 2, 2] + 106246*m[4, 4, 4, 4, 3, 1] + 44026*m[4, 4, 4, 4, 4] + 77861784*m[5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 47435388*m[5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 28915656*m[5, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 17636094*m[5, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 10762248*m[5, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] + 6571103*m[5, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1] + 4014486*m[5, 2, 2, 2, 2, 2, 2, 1, 1, 1] + 2454312*m[5, 2, 2, 2, 2, 2, 2, 2, 1] + 22503712*m[5, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 13734364*m[5, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 8386350*m[5, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 5123271*m[5, 3, 2, 2, 2, 1, 1, 1, 1, 1, 1] + 3131478*m[5, 3, 2, 2, 2, 2, 1, 1, 1, 1] + 1915249*m[5, 3, 2, 2, 2, 2, 2, 1, 1] + 1172378*m[5, 3, 2, 2, 2, 2, 2, 2] + 6539568*m[5, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 3997182*m[5, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1] + 2444302*m[5, 3, 3, 2, 2, 1, 1, 1, 1, 1] + 1495527*m[5, 3, 3, 2, 2, 2, 1, 1, 1] + 915708*m[5, 3, 3, 2, 2, 2, 2, 1] + 1909190*m[5, 3, 3, 3, 1, 1, 1, 1, 1, 1] + 1168513*m[5, 3, 3, 3, 2, 1, 1, 1, 1] + 715650*m[5, 3, 3, 3, 2, 2, 1, 1] + 438726*m[5, 3, 3, 3, 2, 2, 2] + 559607*m[5, 3, 3, 3, 3, 1, 1, 1] + 343094*m[5, 3, 3, 3, 3, 2, 1] + 164792*m[5, 3, 3, 3, 3, 3] + 9093700*m[5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 5559862*m[5, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 3400747*m[5, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1] + 2081085*m[5, 4, 2, 2, 2, 1, 1, 1, 1, 1] + 1274269*m[5, 4, 2, 2, 2, 2, 1, 1, 1] + 780890*m[5, 4, 2, 2, 2, 2, 2, 1] + 2656626*m[5, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1] + 1626414*m[5, 4, 3, 2, 1, 1, 1, 1, 1, 1] + 996195*m[5, 4, 3, 2, 2, 1, 1, 1, 1] + 610613*m[5, 4, 3, 2, 2, 2, 1, 1] + 374687*m[5, 4, 3, 2, 2, 2, 2] + 779309*m[5, 4, 3, 3, 1, 1, 1, 1, 1] + 477747*m[5, 4, 3, 3, 2, 1, 1, 1] + 293164*m[5, 4, 3, 3, 2, 2, 1] + 229488*m[5, 4, 3, 3, 3, 1, 1] + 141024*m[5, 4, 3, 3, 3, 2] + 1084678*m[5, 4, 4, 1, 1, 1, 1, 1, 1, 1] + 665089*m[5, 4, 4, 2, 1, 1, 1, 1, 1] + 408076*m[5, 4, 4, 2, 2, 1, 1, 1] + 250656*m[5, 4, 4, 2, 2, 2, 1] + 319662*m[5, 4, 4, 3, 1, 1, 1, 1] + 196327*m[5, 4, 4, 3, 2, 1, 1] + 120780*m[5, 4, 4, 3, 2, 2] + 94607*m[5, 4, 4, 3, 3, 1] + 131787*m[5, 4, 4, 4, 1, 1, 1] + 81137*m[5, 4, 4, 4, 2, 1] + 39246*m[5, 4, 4, 4, 3] + 3277792*m[5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 2008286*m[5, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 1230962*m[5, 5, 2, 2, 1, 1, 1, 1, 1, 1] + 754902*m[5, 5, 2, 2, 2, 1, 1, 1, 1] + 463308*m[5, 5, 2, 2, 2, 2, 1, 1] + 284694*m[5, 5, 2, 2, 2, 2, 2] + 963606*m[5, 5, 3, 1, 1, 1, 1, 1, 1, 1] + 591109*m[5, 5, 3, 2, 1, 1, 1, 1, 1] + 362838*m[5, 5, 3, 2, 2, 1, 1, 1] + 222955*m[5, 5, 3, 2, 2, 2, 1] + 284328*m[5, 5, 3, 3, 1, 1, 1, 1] + 174700*m[5, 5, 3, 3, 2, 1, 1] + 107512*m[5, 5, 3, 3, 2, 2] + 84255*m[5, 5, 3, 3, 3, 1] + 395813*m[5, 5, 4, 1, 1, 1, 1, 1, 1] + 243197*m[5, 5, 4, 2, 1, 1, 1, 1] + 149579*m[5, 5, 4, 2, 2, 1, 1] + 92168*m[5, 5, 4, 2, 2, 2] + 117336*m[5, 5, 4, 3, 1, 1, 1] + 72268*m[5, 5, 4, 3, 2, 1] + 34985*m[5, 5, 4, 3, 3] + 48692*m[5, 5, 4, 4, 1, 1] + 30100*m[5, 5, 4, 4, 2] + 145492*m[5, 5, 5, 1, 1, 1, 1, 1] + 89599*m[5, 5, 5, 2, 1, 1, 1] + 55276*m[5, 5, 5, 2, 2, 1] + 43404*m[5, 5, 5, 3, 1, 1] + 26838*m[5, 5, 5, 3, 2] + 18150*m[5, 5, 5, 4, 1] + 6840*m[5, 5, 5, 5] + 25197172*m[6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 15391684*m[6, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 9406894*m[6, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 5752068*m[6, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 3519045*m[6, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1] + 2154149*m[6, 2, 2, 2, 2, 2, 1, 1, 1, 1] + 1319588*m[6, 2, 2, 2, 2, 2, 2, 1, 1] + 809144*m[6, 2, 2, 2, 2, 2, 2, 2] + 7338716*m[6, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 4490150*m[6, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 2748487*m[6, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1] + 1683225*m[6, 3, 2, 2, 2, 1, 1, 1, 1, 1] + 1031485*m[6, 3, 2, 2, 2, 2, 1, 1, 1] + 632652*m[6, 3, 2, 2, 2, 2, 2, 1] + 2148230*m[6, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1] + 1316162*m[6, 3, 3, 2, 1, 1, 1, 1, 1, 1] + 806807*m[6, 3, 3, 2, 2, 1, 1, 1, 1] + 494953*m[6, 3, 3, 2, 2, 2, 1, 1] + 304000*m[6, 3, 3, 2, 2, 2, 2] + 631468*m[6, 3, 3, 3, 1, 1, 1, 1, 1] + 387450*m[6, 3, 3, 3, 2, 1, 1, 1] + 237979*m[6, 3, 3, 3, 2, 2, 1] + 186388*m[6, 3, 3, 3, 3, 1, 1] + 114660*m[6, 3, 3, 3, 3, 2] + 2986046*m[6, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 1830115*m[6, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 1122134*m[6, 4, 2, 2, 1, 1, 1, 1, 1, 1] + 688428*m[6, 4, 2, 2, 2, 1, 1, 1, 1] + 422708*m[6, 4, 2, 2, 2, 2, 1, 1] + 259893*m[6, 4, 2, 2, 2, 2, 2] + 878598*m[6, 4, 3, 1, 1, 1, 1, 1, 1, 1] + 539153*m[6, 4, 3, 2, 1, 1, 1, 1, 1] + 331092*m[6, 4, 3, 2, 2, 1, 1, 1] + 203564*m[6, 4, 3, 2, 2, 2, 1] + 259481*m[6, 4, 3, 3, 1, 1, 1, 1] + 159522*m[6, 4, 3, 3, 2, 1, 1] + 98245*m[6, 4, 3, 3, 2, 2] + 76999*m[6, 4, 3, 3, 3, 1] + 361181*m[6, 4, 4, 1, 1, 1, 1, 1, 1] + 222009*m[6, 4, 4, 2, 1, 1, 1, 1] + 136624*m[6, 4, 4, 2, 2, 1, 1] + 84246*m[6, 4, 4, 2, 2, 2] + 107178*m[6, 4, 4, 3, 1, 1, 1] + 66063*m[6, 4, 4, 3, 2, 1] + 32018*m[6, 4, 4, 3, 3] + 44524*m[6, 4, 4, 4, 1, 1] + 27552*m[6, 4, 4, 4, 2] + 1085126*m[6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 666442*m[6, 5, 2, 1, 1, 1, 1, 1, 1, 1] + 409500*m[6, 5, 2, 2, 1, 1, 1, 1, 1] + 251816*m[6, 5, 2, 2, 2, 1, 1, 1] + 155052*m[6, 5, 2, 2, 2, 2, 1] + 321253*m[6, 5, 3, 1, 1, 1, 1, 1, 1] + 197557*m[6, 5, 3, 2, 1, 1, 1, 1] + 121627*m[6, 5, 3, 2, 2, 1, 1] + 75028*m[6, 5, 3, 2, 2, 2] + 95455*m[6, 5, 3, 3, 1, 1, 1] + 58859*m[6, 5, 3, 3, 2, 1] + 28549*m[6, 5, 3, 3, 3] + 132886*m[6, 5, 4, 1, 1, 1, 1, 1] + 81880*m[6, 5, 4, 2, 1, 1, 1] + 50554*m[6, 5, 4, 2, 2, 1] + 39695*m[6, 5, 4, 3, 1, 1] + 24573*m[6, 5, 4, 3, 2] + 16623*m[6, 5, 4, 4, 1] + 49269*m[6, 5, 5, 1, 1, 1, 1] + 30453*m[6, 5, 5, 2, 1, 1] + 18891*m[6, 5, 5, 2, 2] + 14837*m[6, 5, 5, 3, 1] + 6279*m[6, 5, 5, 4] + 362586*m[6, 6, 1, 1, 1, 1, 1, 1, 1, 1] + 223224*m[6, 6, 2, 1, 1, 1, 1, 1, 1] + 137534*m[6, 6, 2, 2, 1, 1, 1, 1] + 84856*m[6, 6, 2, 2, 2, 1, 1] + 52478*m[6, 6, 2, 2, 2, 2] + 108097*m[6, 6, 3, 1, 1, 1, 1, 1] + 66675*m[6, 6, 3, 2, 1, 1, 1] + 41215*m[6, 6, 3, 2, 2, 1] + 32380*m[6, 6, 3, 3, 1, 1] + 20073*m[6, 6, 3, 3, 2] + 45049*m[6, 6, 4, 1, 1, 1, 1] + 27868*m[6, 6, 4, 2, 1, 1] + 17306*m[6, 6, 4, 2, 2] + 13594*m[6, 6, 4, 3, 1] + 5764*m[6, 6, 4, 4] + 16865*m[6, 6, 5, 1, 1, 1] + 10485*m[6, 6, 5, 2, 1] + 5152*m[6, 6, 5, 3] + 5851*m[6, 6, 6, 1, 1] + 3673*m[6, 6, 6, 2] + 7623616*m[7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 4670512*m[7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 2862622*m[7, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 1755355*m[7, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1] + 1076960*m[7, 2, 2, 2, 2, 1, 1, 1, 1, 1] + 661212*m[7, 2, 2, 2, 2, 2, 1, 1, 1] + 406374*m[7, 2, 2, 2, 2, 2, 2, 1] + 2239328*m[7, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 1373862*m[7, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 843250*m[7, 3, 2, 2, 1, 1, 1, 1, 1, 1] + 517878*m[7, 3, 2, 2, 2, 1, 1, 1, 1] + 318336*m[7, 3, 2, 2, 2, 2, 1, 1] + 195956*m[7, 3, 2, 2, 2, 2, 2] + 660758*m[7, 3, 3, 1, 1, 1, 1, 1, 1, 1] + 405893*m[7, 3, 3, 2, 1, 1, 1, 1, 1] + 249526*m[7, 3, 3, 2, 2, 1, 1, 1] + 153591*m[7, 3, 3, 2, 2, 2, 1] + 195699*m[7, 3, 3, 3, 1, 1, 1, 1] + 120447*m[7, 3, 3, 3, 2, 1, 1] + 74271*m[7, 3, 3, 3, 2, 2] + 58251*m[7, 3, 3, 3, 3, 1] + 918218*m[7, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 564270*m[7, 4, 2, 1, 1, 1, 1, 1, 1, 1] + 346932*m[7, 4, 2, 2, 1, 1, 1, 1, 1] + 213484*m[7, 4, 2, 2, 2, 1, 1, 1] + 131553*m[7, 4, 2, 2, 2, 2, 1] + 272293*m[7, 4, 3, 1, 1, 1, 1, 1, 1] + 167549*m[7, 4, 3, 2, 1, 1, 1, 1] + 103227*m[7, 4, 3, 2, 2, 1, 1] + 63736*m[7, 4, 3, 2, 2, 2] + 81035*m[7, 4, 3, 3, 1, 1, 1] + 50011*m[7, 4, 3, 3, 2, 1] + 24289*m[7, 4, 3, 3, 3] + 112806*m[7, 4, 4, 1, 1, 1, 1, 1] + 69552*m[7, 4, 4, 2, 1, 1, 1] + 42980*m[7, 4, 4, 2, 2, 1] + 33751*m[7, 4, 4, 3, 1, 1] + 20918*m[7, 4, 4, 3, 2] + 14158*m[7, 4, 4, 4, 1] + 336742*m[7, 5, 1, 1, 1, 1, 1, 1, 1, 1] + 207365*m[7, 5, 2, 1, 1, 1, 1, 1, 1] + 127788*m[7, 5, 2, 2, 1, 1, 1, 1] + 78855*m[7, 5, 2, 2, 2, 1, 1] + 48776*m[7, 5, 2, 2, 2, 2] + 100468*m[7, 5, 3, 1, 1, 1, 1, 1] + 61975*m[7, 5, 3, 2, 1, 1, 1] + 38312*m[7, 5, 3, 2, 2, 1] + 30103*m[7, 5, 3, 3, 1, 1] + 18661*m[7, 5, 3, 3, 2] + 41897*m[7, 5, 4, 1, 1, 1, 1] + 25917*m[7, 5, 4, 2, 1, 1] + 16096*m[7, 5, 4, 2, 2] + 12641*m[7, 5, 4, 3, 1] + 5361*m[7, 5, 4, 4] + 15694*m[7, 5, 5, 1, 1, 1] + 9755*m[7, 5, 5, 2, 1] + 4791*m[7, 5, 5, 3] + 113701*m[7, 6, 1, 1, 1, 1, 1, 1, 1] + 70197*m[7, 6, 2, 1, 1, 1, 1, 1] + 43401*m[7, 6, 2, 2, 1, 1, 1] + 26904*m[7, 6, 2, 2, 2, 1] + 34168*m[7, 6, 3, 1, 1, 1, 1] + 21164*m[7, 6, 3, 2, 1, 1] + 13164*m[7, 6, 3, 2, 2] + 10346*m[7, 6, 3, 3, 1] + 14369*m[7, 6, 4, 1, 1, 1] + 8944*m[7, 6, 4, 2, 1] + 4402*m[7, 6, 4, 3] + 5446*m[7, 6, 5, 1, 1] + 3419*m[7, 6, 5, 2] + 1925*m[7, 6, 6, 1] + 36080*m[7, 7, 1, 1, 1, 1, 1, 1] + 22348*m[7, 7, 2, 1, 1, 1, 1] + 13882*m[7, 7, 2, 2, 1, 1] + 8667*m[7, 7, 2, 2, 2] + 10937*m[7, 7, 3, 1, 1, 1] + 6818*m[7, 7, 3, 2, 1] + 3364*m[7, 7, 3, 3] + 4650*m[7, 7, 4, 1, 1] + 2925*m[7, 7, 4, 2] + 1791*m[7, 7, 5, 1] + 651*m[7, 7, 6] + 2188648*m[8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 1345162*m[8, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 827099*m[8, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 508821*m[8, 2, 2, 2, 1, 1, 1, 1, 1, 1] + 313248*m[8, 2, 2, 2, 2, 1, 1, 1, 1] + 193061*m[8, 2, 2, 2, 2, 2, 1, 1] + 119195*m[8, 2, 2, 2, 2, 2, 2] + 648914*m[8, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 399350*m[8, 3, 2, 1, 1, 1, 1, 1, 1, 1] + 245908*m[8, 3, 2, 2, 1, 1, 1, 1, 1] + 151568*m[8, 3, 2, 2, 2, 1, 1, 1] + 93569*m[8, 3, 2, 2, 2, 2, 1] + 193189*m[8, 3, 3, 1, 1, 1, 1, 1, 1] + 119069*m[8, 3, 3, 2, 1, 1, 1, 1] + 73491*m[8, 3, 3, 2, 2, 1, 1] + 45469*m[8, 3, 3, 2, 2, 2] + 57747*m[8, 3, 3, 3, 1, 1, 1] + 35711*m[8, 3, 3, 3, 2, 1] + 17401*m[8, 3, 3, 3, 3] + 268394*m[8, 4, 1, 1, 1, 1, 1, 1, 1, 1] + 165456*m[8, 4, 2, 1, 1, 1, 1, 1, 1] + 102086*m[8, 4, 2, 2, 1, 1, 1, 1] + 63086*m[8, 4, 2, 2, 2, 1, 1] + 39089*m[8, 4, 2, 2, 2, 2] + 80310*m[8, 4, 3, 1, 1, 1, 1, 1] + 49608*m[8, 4, 3, 2, 1, 1, 1] + 30720*m[8, 4, 3, 2, 2, 1] + 24147*m[8, 4, 3, 3, 1, 1] + 15002*m[8, 4, 3, 3, 2] + 33582*m[8, 4, 4, 1, 1, 1, 1] + 20809*m[8, 4, 4, 2, 1, 1] + 12951*m[8, 4, 4, 2, 2] + 10175*m[8, 4, 4, 3, 1] + 4332*m[8, 4, 4, 4] + 99449*m[8, 5, 1, 1, 1, 1, 1, 1, 1] + 61449*m[8, 5, 2, 1, 1, 1, 1, 1] + 38025*m[8, 5, 2, 2, 1, 1, 1] + 23594*m[8, 5, 2, 2, 2, 1] + 29953*m[8, 5, 3, 1, 1, 1, 1] + 18569*m[8, 5, 3, 2, 1, 1] + 11562*m[8, 5, 3, 2, 2] + 9089*m[8, 5, 3, 3, 1] + 12622*m[8, 5, 4, 1, 1, 1] + 7864*m[8, 5, 4, 2, 1] + 3875*m[8, 5, 4, 3] + 4795*m[8, 5, 5, 1, 1] + 3014*m[8, 5, 5, 2] + 33984*m[8, 6, 1, 1, 1, 1, 1, 1] + 21068*m[8, 6, 2, 1, 1, 1, 1] + 13100*m[8, 6, 2, 2, 1, 1] + 8187*m[8, 6, 2, 2, 2] + 10325*m[8, 6, 3, 1, 1, 1] + 6444*m[8, 6, 3, 2, 1] + 3185*m[8, 6, 3, 3] + 4399*m[8, 6, 4, 1, 1] + 2770*m[8, 6, 4, 2] + 1699*m[8, 6, 5, 1] + 619*m[8, 6, 6] + 10936*m[8, 7, 1, 1, 1, 1, 1] + 6812*m[8, 7, 2, 1, 1, 1] + 4268*m[8, 7, 2, 2, 1] + 3362*m[8, 7, 3, 1, 1] + 2122*m[8, 7, 3, 2] + 1455*m[8, 7, 4, 1] + 576*m[8, 7, 5] + 3374*m[8, 8, 1, 1, 1, 1] + 2121*m[8, 8, 2, 1, 1] + 1348*m[8, 8, 2, 2] + 1060*m[8, 8, 3, 1] + 471*m[8, 8, 4] + 603064*m[9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 371938*m[9, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 229502*m[9, 2, 2, 1, 1, 1, 1, 1, 1, 1] + 141719*m[9, 2, 2, 2, 1, 1, 1, 1, 1] + 87620*m[9, 2, 2, 2, 2, 1, 1, 1] + 54283*m[9, 2, 2, 2, 2, 2, 1] + 180614*m[9, 3, 1, 1, 1, 1, 1, 1, 1, 1] + 111541*m[9, 3, 2, 1, 1, 1, 1, 1, 1] + 68956*m[9, 3, 2, 2, 1, 1, 1, 1] + 42707*m[9, 3, 2, 2, 2, 1, 1] + 26532*m[9, 3, 2, 2, 2, 2] + 54303*m[9, 3, 3, 1, 1, 1, 1, 1] + 33618*m[9, 3, 3, 2, 1, 1, 1] + 20871*m[9, 3, 3, 2, 2, 1] + 16424*m[9, 3, 3, 3, 1, 1] + 10234*m[9, 3, 3, 3, 2] + 75425*m[9, 4, 1, 1, 1, 1, 1, 1, 1] + 46673*m[9, 4, 2, 1, 1, 1, 1, 1] + 28933*m[9, 4, 2, 2, 1, 1, 1] + 17993*m[9, 4, 2, 2, 2, 1] + 22804*m[9, 4, 3, 1, 1, 1, 1] + 14168*m[9, 4, 3, 2, 1, 1] + 8847*m[9, 4, 3, 2, 2] + 6958*m[9, 4, 3, 3, 1] + 9645*m[9, 4, 4, 1, 1, 1] + 6027*m[9, 4, 4, 2, 1] + 2983*m[9, 4, 4, 3] + 28272*m[9, 5, 1, 1, 1, 1, 1, 1] + 17548*m[9, 5, 2, 1, 1, 1, 1] + 10926*m[9, 5, 2, 2, 1, 1] + 6841*m[9, 5, 2, 2, 2] + 8617*m[9, 5, 3, 1, 1, 1] + 5386*m[9, 5, 3, 2, 1] + 2668*m[9, 5, 3, 3] + 3682*m[9, 5, 4, 1, 1] + 2324*m[9, 5, 4, 2] + 1427*m[9, 5, 5, 1] + 9795*m[9, 6, 1, 1, 1, 1, 1] + 6111*m[9, 6, 2, 1, 1, 1] + 3836*m[9, 6, 2, 2, 1] + 3024*m[9, 6, 3, 1, 1] + 1913*m[9, 6, 3, 2] + 1314*m[9, 6, 4, 1] + 523*m[9, 6, 5] + 3205*m[9, 7, 1, 1, 1, 1] + 2016*m[9, 7, 2, 1, 1] + 1283*m[9, 7, 2, 2] + 1009*m[9, 7, 3, 1] + 450*m[9, 7, 4] + 1012*m[9, 8, 1, 1, 1] + 647*m[9, 8, 2, 1] + 331*m[9, 8, 3] + 314*m[9, 9, 1, 1] + 207*m[9, 9, 2] + 161098*m[10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 99750*m[10, 2, 1, 1, 1, 1, 1, 1, 1, 1] + 61811*m[10, 2, 2, 1, 1, 1, 1, 1, 1] + 38355*m[10, 2, 2, 2, 1, 1, 1, 1] + 23857*m[10, 2, 2, 2, 2, 1, 1] + 14897*m[10, 2, 2, 2, 2, 2] + 48797*m[10, 3, 1, 1, 1, 1, 1, 1, 1] + 30269*m[10, 3, 2, 1, 1, 1, 1, 1] + 18817*m[10, 3, 2, 2, 1, 1, 1] + 11741*m[10, 3, 2, 2, 2, 1] + 14848*m[10, 3, 3, 1, 1, 1, 1] + 9256*m[10, 3, 3, 2, 1, 1] + 5803*m[10, 3, 3, 2, 2] + 4570*m[10, 3, 3, 3, 1] + 20608*m[10, 4, 1, 1, 1, 1, 1, 1] + 12820*m[10, 4, 2, 1, 1, 1, 1] + 8006*m[10, 4, 2, 2, 1, 1] + 5031*m[10, 4, 2, 2, 2] + 6317*m[10, 4, 3, 1, 1, 1] + 3964*m[10, 4, 3, 2, 1] + 1975*m[10, 4, 3, 3] + 2715*m[10, 4, 4, 1, 1] + 1722*m[10, 4, 4, 2] + 7832*m[10, 5, 1, 1, 1, 1, 1] + 4896*m[10, 5, 2, 1, 1, 1] + 3081*m[10, 5, 2, 2, 1] + 2430*m[10, 5, 3, 1, 1] + 1542*m[10, 5, 3, 2] + 1061*m[10, 5, 4, 1] + 425*m[10, 5, 5] + 2761*m[10, 6, 1, 1, 1, 1] + 1742*m[10, 6, 2, 1, 1] + 1112*m[10, 6, 2, 2] + 876*m[10, 6, 3, 1] + 393*m[10, 6, 4] + 924*m[10, 7, 1, 1, 1] + 592*m[10, 7, 2, 1] + 304*m[10, 7, 3] + 302*m[10, 8, 1, 1] + 199*m[10, 8, 2] + 99*m[10, 9, 1] + 34*m[10, 10] + 42070*m[11, 1, 1, 1, 1, 1, 1, 1, 1, 1] + 26173*m[11, 2, 1, 1, 1, 1, 1, 1, 1] + 16308*m[11, 2, 2, 1, 1, 1, 1, 1] + 10190*m[11, 2, 2, 2, 1, 1, 1] + 6398*m[11, 2, 2, 2, 2, 1] + 12912*m[11, 3, 1, 1, 1, 1, 1, 1] + 8060*m[11, 3, 2, 1, 1, 1, 1] + 5054*m[11, 3, 2, 2, 1, 1] + 3193*m[11, 3, 2, 2, 2] + 3993*m[11, 3, 3, 1, 1, 1] + 2518*m[11, 3, 3, 2, 1] + 1264*m[11, 3, 3, 3] + 5528*m[11, 4, 1, 1, 1, 1, 1] + 3468*m[11, 4, 2, 1, 1, 1] + 2193*m[11, 4, 2, 2, 1] + 1730*m[11, 4, 3, 1, 1] + 1105*m[11, 4, 3, 2] + 762*m[11, 4, 4, 1] + 2138*m[11, 5, 1, 1, 1, 1] + 1353*m[11, 5, 2, 1, 1] + 868*m[11, 5, 2, 2] + 683*m[11, 5, 3, 1] + 309*m[11, 5, 4] + 772*m[11, 6, 1, 1, 1] + 497*m[11, 6, 2, 1] + 257*m[11, 6, 3] + 267*m[11, 7, 1, 1] + 177*m[11, 7, 2] + 92*m[11, 8, 1] + 33*m[11, 9] + 10829*m[12, 1, 1, 1, 1, 1, 1, 1, 1] + 6779*m[12, 2, 1, 1, 1, 1, 1, 1] + 4258*m[12, 2, 2, 1, 1, 1, 1] + 2690*m[12, 2, 2, 2, 1, 1] + 1715*m[12, 2, 2, 2, 2] + 3379*m[12, 3, 1, 1, 1, 1, 1] + 2131*m[12, 3, 2, 1, 1, 1] + 1356*m[12, 3, 2, 2, 1] + 1072*m[12, 3, 3, 1, 1] + 690*m[12, 3, 3, 2] + 1473*m[12, 4, 1, 1, 1, 1] + 938*m[12, 4, 2, 1, 1] + 606*m[12, 4, 2, 2] + 478*m[12, 4, 3, 1] + 219*m[12, 4, 4] + 584*m[12, 5, 1, 1, 1] + 378*m[12, 5, 2, 1] + 197*m[12, 5, 3] + 219*m[12, 6, 1, 1] + 146*m[12, 6, 2] + 80*m[12, 7, 1] + 30*m[12, 8] + 2772*m[13, 1, 1, 1, 1, 1, 1, 1] + 1751*m[13, 2, 1, 1, 1, 1, 1] + 1114*m[13, 2, 2, 1, 1, 1] + 717*m[13, 2, 2, 2, 1] + 885*m[13, 3, 1, 1, 1, 1] + 568*m[13, 3, 2, 1, 1] + 371*m[13, 3, 2, 2] + 293*m[13, 3, 3, 1] + 396*m[13, 4, 1, 1, 1] + 259*m[13, 4, 2, 1] + 137*m[13, 4, 3] + 163*m[13, 5, 1, 1] + 110*m[13, 5, 2] + 65*m[13, 6, 1] + 26*m[13, 7] + 713*m[14, 1, 1, 1, 1, 1, 1] + 457*m[14, 2, 1, 1, 1, 1] + 297*m[14, 2, 2, 1, 1] + 197*m[14, 2, 2, 2] + 236*m[14, 3, 1, 1, 1] + 156*m[14, 3, 2, 1] + 84*m[14, 3, 3] + 110*m[14, 4, 1, 1] + 75*m[14, 4, 2] + 48*m[14, 5, 1] + 21*m[14, 6] + 187*m[15, 1, 1, 1, 1, 1] + 123*m[15, 2, 1, 1, 1] + 83*m[15, 2, 2, 1] + 66*m[15, 3, 1, 1] + 46*m[15, 3, 2] + 33*m[15, 4, 1] + 16*m[15, 5] + 51*m[16, 1, 1, 1, 1] + 35*m[16, 2, 1, 1] + 25*m[16, 2, 2] + 20*m[16, 3, 1] + 11*m[16, 4] + 15*m[17, 1, 1, 1] + 11*m[17, 2, 1] + 7*m[17, 3] + 5*m[18, 1, 1] + 4*m[18, 2] + 2*m[19, 1] + m[20]
Clearly not something we could’ve done by hand!
Schur functors
Just for a moment, we will forget about symmetric functions to turn our attention to Schur functors. Let $G$ be a finite group, and let $V$ be a finite-dimensional $G$-representation over an implicit base field $k$, which for convenience we will assume to be of characteristic $0$. You may recall that the tensor product $V \otimes V$ admits a decomposition \[ V \otimes V \simeq \operatorname{Sym}^2(V) \oplus \operatorname{Alt}^2(V) \text{,} \] where $\operatorname{Sym}^2(V)$ and $\operatorname{Alt}^2(V)$ are the symmetric and alternating square of $V$. Schur functors form a common generalisation of symmetric and alternating powers that allows for analogous decompositions of the $n$-fold tensor product $V^{\otimes n}$.
Typicaly, Schur functors are defined in terms of Young tableaux, but we will give an alternative definition that ties up better to the next section. Let $M$ be an irreducible $k$-representation of the $n$-th symmetric group $\Sigma_n$. Then we define the Schur functor $S^M$ to be the functor sending $V$ to $(M \otimes_k V^{\otimes n})_{\Sigma_n}$, where the $\Sigma_n$-action on $V^{\otimes n}$ is taken to be the obvious one that permutes the simple tensors. Now recall that the irreducible rational $\Sigma_n$-representations are entirely classified, and may be labelled by the partitions of $n$. If an irreducible representation $M$ corresponds to a partition $\lambda$, you will more commonly find the notation $S^\lambda$ in the literature.
Example. If $M$ is the trivial $\Sigma_n$-representation, corresponding to the partition $\lambda = (1,\ldots,1)$, then $S^\lambda = \operatorname{Sym}^n$. If $M$ is the sign representation, corresponding to the partition $\lambda = (n)$, then $S^\lambda = \operatorname{Alt}^n$.
Now let’s connect up this theory with symmetric functions.
Lemma. Let $\rho \colon G \to \mathrm{GL}(V)$ be a representation of $G$ on a $k$-vector space $V$, and assume that $k$ is algebraically closed. Let $\chi_V$ be the character of $V$, so that $\chi_V(g)$ is the sum $\mu_1 + \cdots + \mu_d$ of eigenvalues of $\rho(g)$. Then $\chi_{S^\lambda(V)}(g) = s_\lambda(\mu_1,\ldots,\mu_d)$, where $s_\lambda$ denotes the Schur polynomial for the partition $\lambda$ of $n$.
The only proof I know is explicit, and as a result, somewhat tedious. It can be found as Theorem 6.3(3) of Fulton–Harris’ Representation Theory.
At this point, there is an obvious thing that we can do with Schur functors: we can compose them! Can we perhaps describe $S^{\lambda_1} \circ S^{\lambda_2}$ in terms of single Schur functors in some way or other?
Lemma. With the notation as in the previous lemma, we have \[ \chi_{S^{\lambda_1} S^{\lambda_2}(V)}(g) = s_{\lambda_1}[s_{\lambda_2}](\mu_1,\ldots,\mu_d) \text{.} \]
This result appears to be well-known but I’m unable to find a reference for it. If you find one let me know.
The consequence of all this is that iterated Schur functors decompose in the same way that the plethysm of their associated Schur polynomials do. Let’s see an example of this in action.
Example. Take $S^{\mu_1} = S^{\mu_2} = S^{(1,1)} = \operatorname{Sym}^2$. I claim that this composition can be decomposed as \[ \begin{split} \operatorname{Sym}^2 \operatorname{Sym}^2(V) &\simeq S^{(2,2)}(V) \oplus S^{(4)}(V) \\ &\simeq \big(\operatorname{Sym}^2(V) \otimes \operatorname{Sym}^2(V)\big) \ominus \big(\operatorname{Sym}^3(V) \otimes V\big) \oplus \operatorname{Sym}^4(V) \end{split} \] Here, ‘$\ominus$’ should be interpreted to mean that the summand should be added on both sides for the equation to hold true, though it can also interpreted more literally as a statement about virtual representations. To verify the claim, by the discussion above we need only compute the relevant plethysm decompositions, one of which we had seen before as an example:
s = Sym.schur()
h = Sym.homogeneous()
f = h[2]
s(f(f)); h(f(f))
s[2, 2] + s[4] h[2, 2] - h[3, 1] + h[4]
An obvious categorification
The definition of Schur functor as given makes sense in a much broader context. Let $\mathcal{C}$ be a symmetric monoidal $\infty$-category with finite colimits. Let $M$ be a $\Sigma_n$-equivariant object in $\mathcal{C}$, or equivalently, an object in $\mathrm{Fun}(B\Sigma_n,\mathcal{C})$. Then the Schur functor $S^M$ may be defined as \[ S^M(X) = (M \otimes X^{\otimes n})_{h\Sigma_n} \text{,} \] where the homotopy orbits are defined as the colimit over the obvious $B\Sigma_n$-shaped diagram.
Example. If we take $\mathcal{C}$ to be the $1$-category of $G$-representations over a field $k$, then we effectively find back our original notion of Schur functors in representation theory, except that the objects $M$ are allowed to be a bit more general: they can be any $\Sigma_n$-equivariant object in $\mathcal{C}$. That said, in characteristic $0$ this increased generality is not profound, since $S^M$ distributes over sums and $\mathcal{C}$ is semisimple.
Example. There is an obvious derived analogue of the previous example, in which we take $\mathcal{C}$ to be the derived $\infty$-category of $G$-representations over $k$. Equivalently, $\mathcal{C}$ is the $\infty$-category of $k$-module spectra with a (naive) $G$-action. If $k$ is of characteristic $0$, then the Schur functors are effectively the same as their underived counterparts because homotopy orbits preserve discrete objects. In modular characteristic, this is no longer the case; in fact, homotopy orbits will typically send discrete objects to unbounded ones. However, as we will soon see, the derived Schur functors behave more like their characteristic-$0$ counterpart than the underived Schur functors do.
Example. Take $\mathcal{C}$ to be the $1$-category $\mathrm{Top}$ of unpointed topological spaces (not the $\infty$-category of $\infty$-groupoids), and let $M$ be the point with the trivial $\Sigma_n$-action. Then $S^M(X)$ is the $n$-th symmetric power $X^{\times n} / \Sigma_n$. In the literature, this space is often denoted by $\mathrm{SP}^n(X)$. For example, a typical gluing diagram argument will tell you that $\mathrm{SP}^2(S^1)$ is the Möbius strip.
In view of our earlier work, an obvious question now arises: How do we describe the composition of Schur functors?
Goodwillie calculus
With a little bit of squinting, one may observe that the functor \[ S^M(X) = (M \otimes X^{\otimes n})_{h\Sigma_n} \] looks an awful lot like the monomial function \[ f(x) = \frac{M x^n}{n!} \text{.} \] Just as how the number $M$ arises as the $n$-th derivative of $f$ at $0$, so too we might hope that the object $M$ is the $n$-th derivative of $S^M$. Making this vague thought precise is done by the theory of Goodwillie calculus.
The goal of this theory is to associate to a functor $F \colon \mathcal{C} \to \mathcal{D}$ of nice enough $\infty$-categories a Taylor tower \[ \cdots \to P_n(F) \to P_{n-1}(F) \to \cdots \to P_0(F) \text{,} \] where
- $P_n(F)$ should be regarded as the $n$-th Taylor approximation of $F$;
- the fibre $D_n(F)$ of $P_n(F) \to P_{n-1}(F)$ is ‘homogeneous’ of degree $n$ in that \[ D_n(F) \colon X \mapsto (\partial_n F \otimes X^{\otimes n})_{h\Sigma_n} \text{,} \] for some $\Sigma_n$-equivariant object $\partial_n F$ that we call the $n$-th derivative of $F$;
- and, ideally, $F$ can be recovered as $\varprojlim P_n(F)$.
The theory of Goodwillie calculus effectively succeeds in these goals when $F$ is a functor between stable $\infty$-categories. For unstable categories, such as the $\infty$-category $\mathcal{S}$ of spaces, there is still an interesting theory, but the story becomes far more complicated. Notably, even a functor as simple as the identity functor $\operatorname{Id} \colon \mathcal{S} \to \mathcal{S}$ ends up having incredibly complicated derivatives.
For our purposes, what is particularly nice about Goodwillie calculus is that, like in ordinary calculus, derivatives adhere to chain rules and product rules. The general theory for chain rules is quite involved,Note 5 but for us it suffices to restrict attention to a stable $\infty$-category $\mathcal{C}$ and endofunctors $F \colon \mathcal{C} \to \mathcal{C}$ whose Taylor towers split, meaning that $F$ can be expressed as \[ F(X) = \bigoplus_{n = 1}^{\infty} (\partial_n F \otimes X^{\otimes n})_{h \Sigma_n} \text{.} \] If $F$ and $G$ are two such endofunctors, then the derivatives of $FG$ and $F \otimes G$ are effectively ‘what you’d expect’ from calculus: writing $[n]$ for $\{1,\ldots,n\}$, we have \[ \partial_n (F G) = \bigoplus_{\text{partitions of $[n]$}} \partial_k F \otimes \partial_{n_1} G \otimes \cdots \otimes \partial_{n_k} G \text{,} \] where $n_1,\ldots,n_k$ are the sizes of the terms in a given partition; and \[ \partial_n(F \otimes G) = \bigoplus_{X \subseteq [n]} \partial_{|X|} F \otimes \partial_{n - |X|} G \text{.} \] The $\Sigma_n$-action is again ‘what you’d expect’, though it is a bit tough to put the action into words. There is an obvious action of $\Sigma_n$ on both the set of partitions of $[n]$ and on the set of subsets of $[n]$, inducing an action that ‘permutes’ the summands in both expressions above. However, there is an additional action on each of the individual summands, because the subsets of $[n]$ themselves get permuted as well.
Why care? Because Schur functors are precisely $n$-homogeneous polynomials, and so in order to investigate their composition, we simply have to analyse the relevant derivatives. To see this in action, recall the identity \[ \operatorname{Sym}^2 \operatorname{Sym}^2(V) \simeq \big(\operatorname{Sym}^2(V) \otimes \operatorname{Sym}^2(V)\big) \ominus \big(\operatorname{Sym}^3(V) \otimes V\big) \oplus \operatorname{Sym}^4(V) \] that we had proved earlier, and let’s prove it using Goodwillie calculus. As before, the $\ominus$ isn’t well-defined as it stands. For now, just put that summand on the other side of the equation, albeit the cost of some aesthetics. We will get back to this point in the next section.
Lemma. For any stable $\infty$-category $\mathcal{C}$, there is an equivalence of endofunctors \[ (\operatorname{Sym}^2 \circ \operatorname{Sym}^2) \oplus (\operatorname{Sym}^3 \otimes \operatorname{Id} ) \simeq (\operatorname{Sym}^2 \otimes \operatorname{Sym}^2) \oplus \operatorname{Sym}^4 \text{.} \]
Proof: Both sides are $4$-homogeneous functors, and so it suffices to compare their fourth derivative. We consider each summand separately. Using the chain rule, we find that \[ \partial_4 (\operatorname{Sym}^2 \circ \operatorname{Sym}^2) \simeq \bigoplus_{\substack{\{12\},\{34\} \\ \{13\},\{24\} \\ \{14\}, \{23\} }} \big({\partial_2 \operatorname{Sym}^2} \otimes {\partial_2 \operatorname{Sym}^2} \otimes {\partial_2 \operatorname{Sym}^2}\big) \text{.} \] Because the input functors are $2$-homogeneous, the summation is taken over all partitions of $\{1,2,3,4\}$ into two parts of size $2$, and there are three such partitions. Now recall that $\partial_2 \operatorname{Sym}^2 \simeq \mathbb{1}_{\mathcal{C}}$ with trivial $\Sigma_2$-action, so the above equation simplifies to \[ \partial_4 (\operatorname{Sym}^2 \circ \operatorname{Sym}^2) \simeq \bigoplus_{\substack{\{12\},\{34\} \\ \{13\},\{24\} \\ \{14\}, \{23\} }} \mathbb{1}_{\mathcal{C}} \text{.} \] This also simplifies the $\Sigma_4$-action: all it does is permute the three summands according to the tautological $\Sigma_4$-action on the set of partitions.
We analyse the other three components in the exact same way: \[ \begin{split} \partial_4 (\operatorname{Sym}^3 \otimes \operatorname{Id}) &\simeq \bigoplus_{\substack{\{1,2,3\},\{1,2,4\}, \\ \{1,3,4\},\{2,3,4\}}} \mathbb{1}_{\mathcal{C}} \\ \partial_4 (\operatorname{Sym}^2 \otimes \operatorname{Sym}^2) &\simeq \bigoplus_{\substack{\{12\},\{13\},\{14\},\\ \{23\},\{24\},\{34\} }} \mathbb{1}_{\mathcal{C}} \\ \partial_4 \operatorname{Sym}^4 &\simeq \mathbb{1}_{\mathcal{C}} \end{split} \] Assembling the derivatives, we see that both sides of the equation yield an object $(\mathbb{1}_{\mathcal{C}})^{\oplus 7}$, though we still need to verify that the $\Sigma_4$-actions are compatible. On both sides, the action arise by permuting the variables, so it suffices to check that the underlying size-$7$ $\Sigma_4$-sets are isomorphic. This is indeed the case, though not obviously so; the isomorphism is quite noncanonical: both sides split up into four irreducible summands: two trivial summands, one summand corresponding to the standard representation of $\Sigma_4$, and one summand corresponding to the two-dimensional irreducible representation of $\Sigma_4$. ∎
Because the derivatives of symmetric powers have trivial action, the action on the derivatives of their composites will always be a permutation action, so that an identity can always be reduced to an identification of $\Sigma_n$-sets. The luxury that this brings is that any such identity will hold true regardless of the ambient $\infty$-category. For other Schur functors, this is no longer the case, and at the very least one should expect decompositions of such Schur functors not to hold for every characteristic.
Loose ends
There are many points of detail that we have not expanded upon. Let me outline a few of them.
One minor loose end I should point out is the algorithmic aspect of the theory. I have made liberal use of Sage to produce decompositions of symmetric polynomials in terms of different bases, without worrying about what goes on under the hood. How exactly does Sage implement the algebra, and what algorithms are used to efficiently compute plethysms and their decompositions?
A big thing that we effectively left open is how the theory works for unstable $\infty$-categories. As mentioned, things become significantly complicated, and even functors as simple as $\operatorname{Id}$ have infinitely many derivatives, so it’s unlikely that this approach will concretely tell us much about iterated Schur functors. Even in the case of spaces it’s not clear how, for instance, iterated symmetric powers behave.
In the case of representations, Schur functors reduce to Schur polynomials upon taking traces. More generally, we can ask how Schur functors on a given symmetric monoidal $\infty$-category decategorify. Endomorphisms of dualisable objects in a symmetric monoidal $\infty$-category have a trace landing in $\operatorname{End}(\mathbb{1}_{\mathcal{C}})$ — how do they transform under Schur functors?
Given a nice enough (stable) $\infty$-category $\mathcal{C}$, one might consider the $\infty$-category $\mathrm{Schur}(\mathcal{C})$ of Schur functors on $\mathcal{C}$, which for instance we may define as a full subcategory of $\mathrm{Fun}(\mathcal{C},\mathcal{C})$ on the objects $S^M$. In the case that $\mathcal{C}$ is the $1$-category of $G$-representations over a field $k$ of characteristic $0$, this category is the free symmetric monoidal idempotent-complete $k$-linear category on one object, and its $K_0$ is the ring of symmetric functions over $k$. Can we generalise this?
Let’s denote by $\mathsf{Cat}_{\mathrm{perf}}$ the category of small, stable and idempotent-complete $\infty$-categories and exact functors. Let $\mathcal{C}$ be a commutative algebra object in $\mathsf{Cat}_{\mathrm{perf}}$. Then we might expect $\mathrm{Schur}(\mathcal{C})$ to be the free algebra in $\mathsf{Cat}_{\mathrm{perf}}$ over $\mathcal{C}$ generated by one object. With a bit of squinting, $\mathcal{C}$ is effectively just a categorified ring (or $2$-ring for short), so that $\mathrm{Schur}(\mathcal{C})$ is the free $\mathcal{C}$-algebra on a single generator. This makes perfect sense; after all, the free $k$-algebra on a single generator is the ring of polynomial functions.
There’s an obvious multivariate generalisation of Schur functors. These would be of the form \[ S(X_1,\ldots,X_n) = (M \otimes X_1^{\otimes d_1} \otimes \cdots \otimes X_n^{\otimes d_n})_{h(\Sigma_{d_1} \times \cdots \times \Sigma_{d_n})} \] for some $(\Sigma_{d_1} \times \cdots \times \Sigma_{d_n})$-equivariant object $M$. In view of the discussion above it may a reasonable guess that these functors assemble into what should be affine $n$-space in categorified algebraic geometry. These functors are interesting already in the case of representation theory over a general field $k$. Yes, if $k = \mathbb{C}$, then the irreducible representations of a product are a tensor product of irreducible representations of the constituents, so that a multivariate Schur functor is merely a product of univariate ones; but once one considers either non-algebraically closed fields or fields of modular characteristic, then this is no longer the case.
One final thing to get out of the way is that we have consistently dealt with $\ominus$ by putting the summand on the other side of the equation. At the level of $\pi_0$, an alternative approach is to simply group complete, which in the case of representation theory simply means passing to virtual representations. There may well be a categorification of this approach. That is, there may be a group completion functor $\mathsf{CMon}(\mathsf{Cat}_{\mathrm{perf}}) \to \mathsf{AbGrp}(\mathsf{Cat}_{\mathrm{perf}})$, inevitably defined as the left adjoint to the forgetful functor, which should reduce to the usual algebraic K-theory spectrum upon passing to the core. This, too, I will leave for someone else to figure out.
Footnotes
- To be pedantic, this limit must be taken in the category of graded rings rather than in the category of rings; a sequence such as \[1 + \sum_i x_i + \sum_{i_1 < i_2} x_{i_1} x_{i_2} + \sum_{i_1 < i_2 < i_3} x_{i_1} x_{i_2} x_{i_3} + \cdots \] is not an element of $\Lambda$.
- ‘Rational’ might not mean what you think it means. The meaning is not of importance for us anyway.
- This is one point where the restriction to a base field of characteristic $0$ becomes relevant. As mentioned, the power-sum polynomials fail to be an integral basis, and hence fail in characteristic $p$ as well.
- The simplicity is mostly for psychological comfort. As a matter of fact the exact same decomposition holds for any number of variables.
- In fact, it seems that the theory has not been worked out entirely. Notably, Jacob Lurie labels the chain rule as a conjecture in his massive tome Higher Algebra — in fact, it appears to be the only result stated as a conjecture in the entire work.