Schur symmetric functions

class sage.combinat.sf.schur.SymmetricFunctionAlgebraElement_schur(A, x)
expand(n, alphabet='x')

Expands the symmetric function as a symmetric polynomial in n variables.

EXAMPLES:

sage: s = SFASchur(QQ)
sage: a = s([2,1])
sage: a.expand(2)
x0^2*x1 + x0*x1^2
sage: a.expand(3)
x0^2*x1 + x0*x1^2 + x0^2*x2 + 2*x0*x1*x2 + x1^2*x2 + x0*x2^2 + x1*x2^2
sage: a.expand(4)
x0^2*x1 + x0*x1^2 + x0^2*x2 + 2*x0*x1*x2 + x1^2*x2 + x0*x2^2 + x1*x2^2 + x0^2*x3 + 2*x0*x1*x3 + x1^2*x3 + 2*x0*x2*x3 + 2*x1*x2*x3 + x2^2*x3 + x0*x3^2 + x1*x3^2 + x2*x3^2
sage: a.expand(2, alphabet='y')
y0^2*y1 + y0*y1^2
sage: a.expand(2, alphabet=['a','b'])
a^2*b + a*b^2
sage: s([1,1,1,1]).expand(3)
0
omega()

Returns the image of self under the Frobenius / omega automorphism.

EXAMPLES:

sage: s = SFASchur(QQ)
sage: s([2,1]).omega()
s[2, 1]
sage: s([2,1,1]).omega()
s[3, 1]
scalar(x)

Returns the standard scalar product between self and x.

Note that the Schur functions are self-dual with respect to this scalar product. They are also lower-triangularly related to the monomial symmetric functions with respect to this scalar product.

EXAMPLES:

sage: s = SFASchur(ZZ)
sage: a = s([2,1])
sage: b = s([1,1,1])
sage: c = 2*s([1,1,1])
sage: d = a + b
sage: a.scalar(a)
1
sage: b.scalar(b)
1
sage: b.scalar(a)
0
sage: b.scalar(c)
2
sage: c.scalar(c)
4
sage: d.scalar(a)
1
sage: d.scalar(b)
1
sage: d.scalar(c)
2
sage: m = SFAMonomial(ZZ)
sage: p4 = Partitions(4)
sage: l = [ [s(p).scalar(m(q)) for q in p4] for p in p4]
sage: matrix(l)
[ 1  0  0  0  0]
[-1  1  0  0  0]
[ 0 -1  1  0  0]
[ 1 -1 -1  1  0]
[-1  2  1 -3  1]
class sage.combinat.sf.schur.SymmetricFunctionAlgebra_schur(R)
__init__(R)

TESTS:

sage: s = SFASchur(QQ)
sage: s == loads(dumps(s))
True
_multiply(left, right)

TESTS:

sage: s = SFASchur(QQ)
sage: a = s([2,1]) + 1; a
s[] + s[2, 1]
sage: a^2   # indirect doctest
s[] + 2*s[2, 1] + s[2, 2, 1, 1] + s[2, 2, 2] + s[3, 1, 1, 1] + 2*s[3, 2, 1] + s[3, 3] + s[4, 1, 1] + s[4, 2]
sage: QQx.<x> = QQ[]
sage: s = SFASchur(QQx)
sage: a = x^2*s([2,1]) + 2*x; a
2*x*s[] + x^2*s[2, 1]
sage: a^2
4*x^2*s[] + 4*x^3*s[2, 1] + x^4*s[2, 2, 1, 1] + x^4*s[2, 2, 2] + x^4*s[3, 1, 1, 1] + 2*x^4*s[3, 2, 1] + x^4*s[3, 3] + x^4*s[4, 1, 1] + x^4*s[4, 2]
sage: len(s([2,1])^8) #long
1485
sage: len(s([2,1])^9) #long
2876
sage: 0*s([2,1])
0
dual_basis(scalar=None, scalar_name='', prefix=None)

The dual basis to the Schur basis with respect to the standard scalar product is the Schur basis since it is self-dual.

EXAMPLES:

sage: s = SFASchur(QQ)
sage: ds = s.dual_basis()
sage: s is ds
True
is_schur_basis()

EXAMPLES:

sage: s = SFASchur(QQ)
sage: s.is_schur_basis()
True

Previous topic

Classical symmetric functions.

Next topic

Monomial symmetric functions

This Page