Characters of the symmetric group as bases of the symmetric functions#
Just as the Schur functions are the irreducible characters of \(Gl_n\) and form a basis of the symmetric functions, the irreducible symmetric group character basis are the irreducible characters of of \(S_n\) when the group is realized as the permutation matrices.
REFERENCES:
R. Orellana, M. Zabrocki, Symmetric group characters as symmetric functions, arXiv 1510.00438.
- class sage.combinat.sf.character.Character_generic(Sym, basis_name=None, prefix=None, graded=True)[source]#
- class sage.combinat.sf.character.InducedTrivialCharacterBasis(Sym)[source]#
Bases:
Character_generic
The induced trivial symmetric group character basis of the symmetric functions.
This is a basis of the symmetric functions that has the property that
self(la).character_to_frobenius_image(n)
is equal toh([n-sum(la)]+la)
.It has the property that the (outer) structure constants are the analogue of the stable Kronecker coefficients on the complete basis.
This basis is introduced in [OZ2015].
EXAMPLES:
sage: Sym = SymmetricFunctions(QQ) sage: s = Sym.s() sage: h = Sym.h() sage: ht = SymmetricFunctions(QQ).ht() sage: st = SymmetricFunctions(QQ).st() sage: ht(s[2,1]) ht[1, 1] + ht[2, 1] - ht[3] sage: s(ht[2,1]) s[1] - 2*s[1, 1] - 2*s[2] + s[2, 1] + s[3] sage: ht(h[2,1]) ht[1] + 2*ht[1, 1] + ht[2, 1] sage: h(ht[2,1]) h[1] - 2*h[1, 1] + h[2, 1] sage: st(ht[2,1]) st[] + 2*st[1] + st[1, 1] + 2*st[2] + st[2, 1] + st[3] sage: ht(st[2,1]) ht[1] - ht[1, 1] + ht[2, 1] - ht[3] sage: ht[2]*ht[1,1] ht[1, 1] + 2*ht[1, 1, 1] + ht[2, 1, 1] sage: h[4,2].kronecker_product(h[4,1,1]) h[2, 2, 1, 1] + 2*h[3, 1, 1, 1] + h[4, 1, 1] sage: s(st[2,1]) 3*s[1] - 2*s[1, 1] - 2*s[2] + s[2, 1] sage: st(s[2,1]) st[] + 3*st[1] + 2*st[1, 1] + 2*st[2] + st[2, 1] sage: st[2]*st[1] st[1] + st[1, 1] + st[2] + st[2, 1] + st[3] sage: s[4,2].kronecker_product(s[5,1]) s[3, 2, 1] + s[3, 3] + s[4, 1, 1] + s[4, 2] + s[5, 1]
>>> from sage.all import * >>> Sym = SymmetricFunctions(QQ) >>> s = Sym.s() >>> h = Sym.h() >>> ht = SymmetricFunctions(QQ).ht() >>> st = SymmetricFunctions(QQ).st() >>> ht(s[Integer(2),Integer(1)]) ht[1, 1] + ht[2, 1] - ht[3] >>> s(ht[Integer(2),Integer(1)]) s[1] - 2*s[1, 1] - 2*s[2] + s[2, 1] + s[3] >>> ht(h[Integer(2),Integer(1)]) ht[1] + 2*ht[1, 1] + ht[2, 1] >>> h(ht[Integer(2),Integer(1)]) h[1] - 2*h[1, 1] + h[2, 1] >>> st(ht[Integer(2),Integer(1)]) st[] + 2*st[1] + st[1, 1] + 2*st[2] + st[2, 1] + st[3] >>> ht(st[Integer(2),Integer(1)]) ht[1] - ht[1, 1] + ht[2, 1] - ht[3] >>> ht[Integer(2)]*ht[Integer(1),Integer(1)] ht[1, 1] + 2*ht[1, 1, 1] + ht[2, 1, 1] >>> h[Integer(4),Integer(2)].kronecker_product(h[Integer(4),Integer(1),Integer(1)]) h[2, 2, 1, 1] + 2*h[3, 1, 1, 1] + h[4, 1, 1] >>> s(st[Integer(2),Integer(1)]) 3*s[1] - 2*s[1, 1] - 2*s[2] + s[2, 1] >>> st(s[Integer(2),Integer(1)]) st[] + 3*st[1] + 2*st[1, 1] + 2*st[2] + st[2, 1] >>> st[Integer(2)]*st[Integer(1)] st[1] + st[1, 1] + st[2] + st[2, 1] + st[3] >>> s[Integer(4),Integer(2)].kronecker_product(s[Integer(5),Integer(1)]) s[3, 2, 1] + s[3, 3] + s[4, 1, 1] + s[4, 2] + s[5, 1]
- class sage.combinat.sf.character.IrreducibleCharacterBasis(Sym)[source]#
Bases:
Character_generic
The irreducible symmetric group character basis of the symmetric functions.
This is a basis of the symmetric functions that has the property that
self(la).character_to_frobenius_image(n)
is equal tos([n-sum(la)]+la)
.It should also have the property that the (outer) structure constants are the analogue of the stable Kronecker coefficients on the Schur basis.
This basis is introduced in [OZ2015].
EXAMPLES:
sage: Sym = SymmetricFunctions(QQ) sage: s = Sym.s() sage: h = Sym.h() sage: ht = SymmetricFunctions(QQ).ht() sage: st = SymmetricFunctions(QQ).st() sage: st(ht[2,1]) st[] + 2*st[1] + st[1, 1] + 2*st[2] + st[2, 1] + st[3] sage: ht(st[2,1]) ht[1] - ht[1, 1] + ht[2, 1] - ht[3] sage: s(st[2,1]) 3*s[1] - 2*s[1, 1] - 2*s[2] + s[2, 1] sage: st(s[2,1]) st[] + 3*st[1] + 2*st[1, 1] + 2*st[2] + st[2, 1] sage: st[2]*st[1] st[1] + st[1, 1] + st[2] + st[2, 1] + st[3] sage: s[4,2].kronecker_product(s[5,1]) s[3, 2, 1] + s[3, 3] + s[4, 1, 1] + s[4, 2] + s[5, 1] sage: st[1,1,1].counit() -1 sage: all(sum(c*st(la)*st(mu).antipode() for ....: ((la,mu),c) in st(ga).coproduct())==st(st(ga).counit()) ....: for ga in Partitions(3)) True
>>> from sage.all import * >>> Sym = SymmetricFunctions(QQ) >>> s = Sym.s() >>> h = Sym.h() >>> ht = SymmetricFunctions(QQ).ht() >>> st = SymmetricFunctions(QQ).st() >>> st(ht[Integer(2),Integer(1)]) st[] + 2*st[1] + st[1, 1] + 2*st[2] + st[2, 1] + st[3] >>> ht(st[Integer(2),Integer(1)]) ht[1] - ht[1, 1] + ht[2, 1] - ht[3] >>> s(st[Integer(2),Integer(1)]) 3*s[1] - 2*s[1, 1] - 2*s[2] + s[2, 1] >>> st(s[Integer(2),Integer(1)]) st[] + 3*st[1] + 2*st[1, 1] + 2*st[2] + st[2, 1] >>> st[Integer(2)]*st[Integer(1)] st[1] + st[1, 1] + st[2] + st[2, 1] + st[3] >>> s[Integer(4),Integer(2)].kronecker_product(s[Integer(5),Integer(1)]) s[3, 2, 1] + s[3, 3] + s[4, 1, 1] + s[4, 2] + s[5, 1] >>> st[Integer(1),Integer(1),Integer(1)].counit() -1 >>> all(sum(c*st(la)*st(mu).antipode() for ... ((la,mu),c) in st(ga).coproduct())==st(st(ga).counit()) ... for ga in Partitions(Integer(3))) True