Macaulay2 » Documentation
Packages » SchurRings :: scalarProduct(RingElement,RingElement)
next | previous | forward | backward | up | index | toc

scalarProduct(RingElement,RingElement) -- Standard scalar product of symmetric functions

Description

Given symmetric functions f1 and f2, the method computes the standard Hall pairing between f1 and f2.

i1 : R = symmetricRing(QQ,5);
i2 : S = schurRing R

o2 = S

o2 : SchurRing
i3 : scalarProduct(h_5,p_5)

o3 = 1

o3 : QQ
i4 : scalarProduct(S_{4,1},p_5)

o4 = -1

o4 : QQ

Indeed, the coefficients of s_5 and s_{4,1} in the s-basis expansion of p_5 are as computed above:

i5 : toS p_5

o5 = s  - s    + s      - s        + s
      5    4,1    3,1,1    2,1,1,1    1,1,1,1,1

o5 : S

The pairing <e_n, p_n> equals (-1)^{n-1}, reflecting the sign character of the symmetric group:

i6 : scalarProduct(e_2, p_2)

o6 = -1

o6 : QQ
i7 : scalarProduct(e_3, p_3)

o7 = 1

o7 : QQ
i8 : scalarProduct(e_4, p_4)

o8 = -1

o8 : QQ

The pairing <s_\lambda, h_\mu> recovers the Kostka number K_{\lambda,\mu}, the number of semistandard Young tableaux of shape \lambda and content \mu. We cross-check this against kostkaNumber:

i9 : scalarProduct(S_{3,2}, h_2*h_2*h_1) == kostkaNumber({3,2}, {2,2,1})

o9 = true
i10 : scalarProduct(S_{3,2}, h_1^5) == kostkaNumber({3,2}, {1,1,1,1,1})

o10 = true
i11 : scalarProduct(S_{4,1}, h_3*h_2) == kostkaNumber({4,1}, {3,2})

o11 = true

See also

Ways to use this method:


The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/SchurRings.m2:7397:0.