Macaulay2 » Documentation
Packages » SchurRings :: toE
next | previous | forward | backward | up | index | toc

toE -- Elementary symmetric (e-) basis representation

Description

Given a symmetric function f, the function toE yields a representation of f as a polynomial in the elementary symmetric functions.

If f is an element of a Schur ring S then the output fe is an element of the Symmetric ring associated to S (see symmetricRing).

i1 : R = symmetricRing 7;
i2 : toE(h_3*e_3)

      3                2
o2 = e e  - 2e e e  + e
      1 3     1 2 3    3

o2 : R
i3 : S = schurRing(s,4)

o3 = S

o3 : SchurRing
i4 : toE S_{3,2,1}

               2    2
o4 = e e e  - e  - e e
      1 2 3    3    1 4

o4 : QQ[e ..e , p ..p , h ..h ]
         1   4   1   4   1   4

This also works over tensor products of Symmetric/Schur rings.

i5 : R = schurRing(r, 4, EHPVariables => (a,b,c));
i6 : S = schurRing(R, s, 2, EHPVariables => (x,y,z));
i7 : T = schurRing(S, t, 3);
i8 : A = symmetricRing T;
i9 : f = (r_1+s_1+t_1)^2

o9 = t  + t    + (2r  s  + 2r s  )t  + (s  + s    + 2r s  + (r  +
      2    1,1      () 1     1 ()  1     2    1,1     1 1     2  
     ------------------------------------------------------------------------
     r   )s  )t
      1,1  ()  ()

o9 : T
i10 : toE f

       2                    2            2
o10 = e  + (2x  + 2a )e  + x  + 2a x  + a
       1      1     1  1    1     1 1    1

o10 : A

Variant bases. When f lives in a SchurRing with GroupActing in $\{$"Sp", "O", "RatGL", "SL"$\}$ or Basis => "Monomial", the output is obtained by treating the partition labels of f as plain Schur labels and applying the Jacobi-Trudi determinant. This is not the same as the symmetric function representing the character of the underlying irrep. To obtain the character expansion, first call toS to get the plain GL Schur expansion, and then compose with toE: toE(toS f).

i11 : Sp = schurRing(QQ, sp, 3, GroupActing => "Sp");
i12 : toE sp_{2,1}

o12 = e e  - e
       1 2    3

o12 : QQ[e ..e , p ..p , h ..h ]
          1   3   1   3   1   3
i13 : toE toS sp_{2,1}

o13 = e e  - e  - e
       1 2    3    1

o13 : QQ[e ..e , p ..p , h ..h ]
          1   3   1   3   1   3

Composing toE with toS lets you convert an arbitrary $e$/$h$/$p$-expression into the $e$-basis via the Schur basis, which is sometimes numerically cleaner than Newton's identities.

i14 : R = symmetricRing(QQ,4);
i15 : toE toS (e_1 * h_2 + p_3)

        3
o15 = 2e  - 4e e  + 3e
        1     1 2     3

o15 : R
i16 : toE toS (h_2^2)

       4     2      2
o16 = e  - 2e e  + e
       1     1 2    2

o16 : R

The names of the output variables are controlled by EHPVariables; toE writes its result in the first slot of that triple.

i17 : Rxyz = symmetricRing(QQ, 4, EHPVariables => (x,y,z));
i18 : toE(y_3)

       3
o18 = x  - 2x x  + x
       1     1 2    3

o18 : Rxyz
i19 : toE(z_2)

       2
o19 = x  - 2x
       1     2

o19 : Rxyz

Stable rings. If f lives in a rank-infinite SchurRing (created with numgens => infinity), toE raises an error: the associated symmetric ring can only be constructed at finite rank. Use specialize to fix a rank first.

i20 : Sinf = schurRing(QQ, u, infinity);
i21 : try toE u_{2,1} else "error: stable ring has no symmetricRing"

o21 = error: stable ring has no symmetricRing
i22 : toE specialize(u_{2,1}, 3)

o22 = e e  - e
       1 2    3

o22 : QQ[e ..e , p ..p , h ..h ]
          1   3   1   3   1   3

See also

Ways to use toE:

  • toE(RingElement)

For the programmer

The object toE is a method function.


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