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
class sage.combinat.sf.hecke.HeckeCharacter(sym, q='q')

Bases: sage.combinat.sf.multiplicative.SymmetricFunctionAlgebra_multiplicative

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 Hn(q) with quadratic relations

T2i=(q1)Ti+q.

Let μ be a partition of n with length . The character χ of a Hn(q)-representation is completely determined by the elements Tγμ, where

γμ=(μ1,,1)(μ2+μ1,,1+μ1)(n,,1+i<μi),

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

ˉqμ=λnχλ(Tγμ)sλ.

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 ˉ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:

coproduct_on_generators(r)

Return the coproduct on the generator ˉqr of self.

Define the coproduct on ˉqr by

Δ(ˉqr)=ˉq0ˉqr+(q1)r1j=1ˉqjˉqrj+ˉqrˉq0.

EXAMPLES:

sage: q = ZZ['q'].fraction_field().gen()
sage: Sym = SymmetricFunctions(q.parent())
sage: qbar = Sym.hecke_character()
sage: s = Sym.s()
sage: qbar[2].coproduct()
qbar[] # qbar[2] + (q-1)*qbar[1] # qbar[1] + qbar[2] # qbar[]