Opened 10 years ago

Closed 10 years ago

# Fixes to symmetric functions

Reported by: Owned by: Anne Schilling Sage Combinat CC user major sage-5.4 combinatorics symmetric functions Sage Combinat CC user, Mike Zabrocki sage-5.4.beta2 Anne Schilling, Mike Zabrocki Mike Zabrocki, Anne Schilling N/A #13404

This patch implements the following fixes to symmetric functions:

• HL creation operator for k-Schur functions
• it fixes omega for k-Schur functions for generic t
• it changes the multiplication for k-Schur functions for generic t, so that the result stays in the k-bounded subspace if possible and lifts to symmetric functions otherwise
• it moves coproduct_by_coercion to SymmetricFunctionAlgebra_generic and inserts a coproduct function in KBoundedSubspaceBases, ElementMethods?
• it fixes the coersion between the Jack P and Pq basis; this was previously extremely slow, for example for
sage: Sym = SymmetricFunctions(FractionField(QQ['t']))
sage: Qp = Sym.jack().Qp()
sage: P = Sym.jack().P()
sage: P(Qp[2,1])
((-192*t^3+192*t^2-192*t+192)/(-64*t^3-224*t^2-224*t-64))*JackP[1, 1, 1]
+ ((128*t^2-64*t+80)/(64*t^2+64*t+16))*JackP[2, 1] + ((8*t-8)/(8*t+4))*JackP[3]

• it fixes the coproduct for Jack symmetric functions

Apply:

### comment:1 Changed 10 years ago by Anne Schilling

Description: modified (diff)

### comment:2 Changed 10 years ago by Nicolas M. Thiéry

Speaking of fixes/improvements for symmetric functions: the current code is not perfectly consistent for the naming of the bases:

sage: S = SymmetricFunctions(QQ['q,t'].fraction_field())
sage: S.s()
Symmetric Function Algebra over Fraction Field of Multivariate Polynomial Ring in q, t over Rational Field, Schur symmetric functions as basis
sage: S.macdonald().P()
Symmetric Functions over Fraction Field of Multivariate Polynomial Ring in q, t over Rational Field in the realization MacdonaldPolynomials_p

And indeed in the code, S.s()._repr_ comes from SymmetricFunctionAlgebra_classical, where as S.macdonald().P()._repr_ comes from generic with_realization code.

What about moving (in this ticket, or later), the _repr_ from SymmetricFunctionAlgebra_classical to SymmetricFunctionsBases??

A bit of fiddling with ._basis might be needed to get the string 'Macdonald P symmetric functions' right, but this should not be too bad.

Cheers,

Nicolas

PS: as a side effect, this would help me a bit with my functorial construction patch, as it currently breaks the naming of the macdo/llt/hl basis, and would not anymore with the changes above.

### comment:3 follow-up:  4 Changed 10 years ago by Anne Schilling

Description: modified (diff) new → needs_review

### comment:4 in reply to:  3 Changed 10 years ago by Anne Schilling

Hi Mike,

I made all changes we discussed by e-mail. Could you have a look?

Anne

### comment:5 follow-up:  6 Changed 10 years ago by Mike Zabrocki

Status: needs_review → positive_review

All tests pass and the documentation looks good. Nicolas, we can address the {{repr}} changes in another patch. -Mike

Version 1, edited 10 years ago by Mike Zabrocki (previous) (next) (diff)

### comment:6 in reply to:  5 ; follow-up:  7 Changed 10 years ago by Anne Schilling

Thank you, Mike! Same comments as on 12140.

### comment:7 in reply to:  6 Changed 10 years ago by Anne Schilling

Removed trailing white spaces.

### comment:8 Changed 10 years ago by Anne Schilling

Dependencies: → #5457

### comment:9 Changed 10 years ago by Mike Zabrocki

Status: positive_review → needs_work

After discussion, another addition to make will be coproduct method on k-Schur bases.

### comment:10 Changed 10 years ago by Mike Zabrocki

Description: modified (diff) needs_work → needs_review

I implemented coproduct on k-Schur functions. This required moving coproduct_by_coercion to the class SymmetricFunctionAlgebra_generic . Please test and review.

### comment:11 follow-up:  12 Changed 10 years ago by Anne Schilling

Authors: Anne Schilling → Anne Schilling, Mike Zabrocki modified (diff) Mike Zabrocki → Mike Zabrocki, Anne Schilling

### comment:12 in reply to:  11 Changed 10 years ago by Anne Schilling

Hi Mike,

Thanks for the addition! I made some more changes to the doc explanations (there was still a reference to monomial symmetric functions even though coproduct_by_coercion was moved to sfa.py). I also added some further tests for k-Schurs and LLTs. Both patches are now folded, so please only

Apply: trac_13399-sf-as.patch

All tests pass on sage_5.3.rc0 + two additional 5457 patches. No idea what the current version of sage is that we are supposed to test against!

Best,

Anne

### comment:13 follow-up:  14 Changed 10 years ago by Anne Schilling

Dependencies: #5457 → #13404

### comment:14 in reply to:  13 Changed 10 years ago by Anne Schilling

Rebased with respect to #13404. More additions regarding Jack polynomials are pending!

### comment:15 follow-up:  16 Changed 10 years ago by Anne Schilling

Description: modified (diff)

### comment:16 in reply to:  15 Changed 10 years ago by Anne Schilling

Hi Mike,

I folded the previous 13399 patch with the changes to jack.py. For me all tests pass and the documentation looks good. Please set a positive review if you are satisfied!

Anne

### comment:17 follow-up:  18 Changed 10 years ago by Mike Zabrocki

Description: modified (diff) needs_review → positive_review

I changed two minor things in the doc strings indicating that coercion was done through the homogeneous basis. All doc tests pass on sage-5.3.rc1 + dependency patches. It looks good and I give it a positive review.

### comment:18 in reply to:  17 Changed 10 years ago by Anne Schilling

Apply: trac_13399-sf-as.3.patch