Hecke Character Basis

The basis of symmetric functions given by characters of the Hecke algebra (of type \(A\)).

AUTHORS:

  • Travis Scrimshaw (2017-08): Initial version
sage.combinat.sf.hecke.HeckeCharacter

Basis of the symmetric functions that gives the characters of the Hecke algebra in analogy to the Frobenius formula for the symmetric group.

Consider the Hecke algebra \(H_n(q)\) with quadratic relations

\[T_i^2 = (q - 1) T_i + q.\]

Let \(\mu\) be a partition of \(n\) with length \(\ell\). The character \(\chi\) of a \(H_n(q)\)-representation is completely determined by the elements \(T_{\gamma_{\mu}}\), where

\[\gamma_{\mu} = (\mu_1, \ldots, 1) (\mu_2 + \mu_1, \ldots, 1 + \mu_1) \cdots (n, \ldots, 1 + \sum_{i < \ell} \mu_i),\]

(written in cycle notation). We define a basis of the symmetric functions by

\[\bar{q}_{\mu} = \sum_{\lambda \vdash n} \chi^{\lambda}(T_{\gamma_{\mu}}) s_{\lambda}.\]

INPUT:

  • sym – the ring of symmetric functions
  • q – (default: 'q') the parameter \(q\)

EXAMPLES:

sage: q = ZZ['q'].fraction_field().gen()
sage: Sym = SymmetricFunctions(q.parent())
sage: qbar = Sym.hecke_character(q)
sage: qbar[2] * qbar[3] * qbar[3,1]
qbar[3, 3, 2, 1]

sage: s = Sym.s()
sage: s(qbar([2]))
-s[1, 1] + q*s[2]
sage: s(qbar([4]))
-s[1, 1, 1, 1] + q*s[2, 1, 1] - q^2*s[3, 1] + q^3*s[4]
sage: qbar(s[2])
(1/(q+1))*qbar[1, 1] + (1/(q+1))*qbar[2]
sage: qbar(s[1,1])
(q/(q+1))*qbar[1, 1] - (1/(q+1))*qbar[2]

sage: s(qbar[2,1])
-s[1, 1, 1] + (q-1)*s[2, 1] + q*s[3]
sage: qbar(s[2,1])
(q/(q^2+q+1))*qbar[1, 1, 1] + ((q-1)/(q^2+q+1))*qbar[2, 1]
 - (1/(q^2+q+1))*qbar[3]

We compute character tables for Hecke algebras, which correspond to the transition matrix from the \(\bar{q}\) basis to the Schur basis:

sage: qbar.transition_matrix(s, 1)
[1]
sage: qbar.transition_matrix(s, 2)
[ q -1]
[ 1  1]
sage: qbar.transition_matrix(s, 3)
[  q^2    -q     1]
[    q q - 1    -1]
[    1     2     1]
sage: qbar.transition_matrix(s, 4)
[      q^3      -q^2         0         q        -1]
[      q^2   q^2 - q        -q    -q + 1         1]
[      q^2 q^2 - 2*q   q^2 + 1  -2*q + 1         1]
[        q   2*q - 1     q - 1     q - 2        -1]
[        1         3         2         3         1]

We can do computations with a specialized \(q\) to a generic element of the base ring. We compute some examples with \(q = 2\):

sage: qbar = Sym.qbar(q=2)
sage: s = Sym.schur()
sage: qbar(s[2,1])
2/7*qbar[1, 1, 1] + 1/7*qbar[2, 1] - 1/7*qbar[3]
sage: s(qbar[2,1])
-s[1, 1, 1] + s[2, 1] + 2*s[3]

REFERENCES: