Opened 11 years ago

Last modified 8 years ago

#5457 closed enhancement

Refactor symmetric functions and k-bounded subspace — at Version 25

Reported by: nthiery Owned by: mhansen
Priority: major Milestone: sage-5.4
Component: combinatorics Keywords: symmetric functions, days38, sd40
Cc: sage-combinat, saliola, bump, chrisjamesberg, zabrocki, SimonKing Merged in:
Authors: Mike Zabrocki, Anne Schilling, Jason Bandlow Reviewers: Dan Bump, Franco Saliola
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: #11563, #13109 Stopgaps:

Description (last modified by bump)

This patch restructures the implementation of symmetric functions in sage

The new implementation makes use of multiple realizations and the category framework. The new access to symmetric functions is via

sage: Sym = SymmetricFunctions(QQ)

Further new features that are implemented:

  • The ring of symmetric functions is now endowed with a Hopf algebra structure. The coproduct and antipode are implemented (which were missing before).
  • A tutorial on how to use symmetric functions in sage is included at the beginning of sf.py which is also accessible via
    sage: SymmetricFunctions??
    
  • Symmetric functions should now work a lot better with respect to specializing parameters like q and t for Hall-Littlewood, Jack and Macdonald symmetric functions. Certain functionalities before this change were broken or not possible.
  • Documentation was added to LLT polynomials (which had very sparse documentation previously).
  • The k-bounded subspace of the ring of symmetric function was implemented. The k-Schur functions now live in the k-bounded subspace rather than in the ring of symmetric functions as before.

This patch gained tremendously by the tutorial on symmetric functions written by Jason Bandlow and Nicolas Thiery, a draft on the k-bounded subspace by Jason Bandlow, and code multiple realizations written by Franco Saliola.

See also http://groups.google.com/group/sage-devel/msg/a49f3288fca1b75c

Apply

Change History (25)

comment:1 Changed 11 years ago by nthiery

  • Description modified (diff)

comment:2 Changed 11 years ago by nthiery

  • Cc sage-combinat added

comment:3 Changed 8 years ago by aschilling

  • Dependencies set to 13109
  • Report Upstream set to N/A

comment:4 Changed 8 years ago by aschilling

  • Dependencies 13109 deleted

comment:5 Changed 8 years ago by aschilling

  • Authors set to Mike Zabrocki, Anne Schilling
  • Description modified (diff)
  • Keywords symmetric functions sd38 sd40 added
  • Reviewers set to Dan Bump, Franco Saliola
  • Summary changed from Refactor symmetric functions to Refactor symmetric functions and k-bounded subspace

comment:6 Changed 8 years ago by aschilling

  • Cc saliola bump chrisjamesberg added

comment:7 Changed 8 years ago by aschilling

  • Cc zabrocki added

comment:8 Changed 8 years ago by aschilling

  • Status changed from new to needs_review

comment:9 Changed 8 years ago by aschilling

  • Status changed from needs_review to needs_work

comment:10 Changed 8 years ago by aschilling

Hi Mike,

I finished the doctests for the following files:

  • schur.py
  • homogeneous.py
  • elementrary.py
  • powersum.py
  • monomial.py
  • classical.py
  • dual.py
  • multiplicative.py
  • orthotriang.py
  • sf.py

In particular, at the beginning of sf.py I incorporated the tutorial that Jason and Nicolas wrote (which was further down the queue) and updated it. I marked them there as coauthors in that file.

This leaves the doctests for

  • hall_littlewood.py
  • jack.py
  • llt.py
  • macdonald.py
  • ns_macdonald.py
  • sfa.py

which I suppose you will do in the next couple of days? In particular, in the sfa.py the deprecation warnings need to be activated which I have not yet done.

Best,

Anne

comment:11 Changed 8 years ago by aschilling

  • Authors changed from Mike Zabrocki, Anne Schilling to Mike Zabrocki, Anne Schilling, Jason Bandlow

comment:12 Changed 8 years ago by vbraun

  • Dependencies set to #11563

comment:13 Changed 8 years ago by vbraun

  • Dependencies changed from #11563 to #11563, #13109

comment:14 follow-up: Changed 8 years ago by aschilling

  • Description modified (diff)

comment:15 in reply to: ↑ 14 ; follow-up: Changed 8 years ago by aschilling

Hi Mike,

I completed the doctests for sfa.py and also rebased everything on top of 13109. Please put your changes to

  • hall_littlewood.py
  • jack.py
  • llt.py
  • macdonald.py

on top of the current patch trac_5457-symmetric_functions-mz.patch. Unfortunately we need to abandon the sage-combinat queue for the moment since it would be very cumbersome to keep it backward compatible with 13109. I will send you a separate e-mail on how to proceed.

Cheers,

Anne

comment:16 in reply to: ↑ 15 Changed 8 years ago by aschilling

Ok, patch is ready for review! It should apply and run cleanly on sage.5.2.rc0!

Anne

comment:17 Changed 8 years ago by aschilling

  • Status changed from needs_work to needs_review

comment:19 Changed 8 years ago by SimonKing

  • Cc SimonKing added

comment:20 follow-up: Changed 8 years ago by aschilling

Hi Dan!

Thank you very much for your comments on the failing doctests in

  • devel/sage/sage/algebras/nil_coxeter_algebra.py
  • devel/sage/sage/categories/realizations.py

They are fixed in the updated version of the patch. I do not get failures for

  • devel/sage/sage/sandpiles/sandpile.py

on my machine.

lolita-4:sandpiles anne$ sage -t sandpile.py sage -t "devel/sage-sf/sage/sandpiles/sandpile.py"

[19.0 s]


All tests passed! Total time for all tests: 19.0 seconds

Anne

comment:21 in reply to: ↑ 20 Changed 8 years ago by bump

Replying to aschilling:

Hi Dan!

Thank you very much for your comments on the failing doctests in

  • devel/sage/sage/algebras/nil_coxeter_algebra.py
  • devel/sage/sage/categories/realizations.py

They are fixed in the updated version of the patch. I do not get failures for

  • devel/sage/sage/sandpiles/sandpile.py

on my machine.

I also get a doctest failure in sandpile.py with unpatched sage-5.2.rc0 so this failure is not caused by the patch.

Last edited 8 years ago by bump (previous) (diff)

comment:22 Changed 8 years ago by bump

Applies cleanly to sage-5.2 and passes all tests.

comment:23 follow-up: Changed 8 years ago by aschilling

  • Description modified (diff)

comment:24 in reply to: ↑ 23 Changed 8 years ago by aschilling

The attached review patch trac_5457-review-as.patch incorporates most of the comments that Dan Bump raised in e-mail conversations.

Anne

comment:25 Changed 8 years ago by bump

  • Description modified (diff)
  • Status changed from needs_review to positive_review

This patch is a huge step forward for symmetric functions.

In addition to normal testing I spent quite a bit of time and privately sent comments (mainly on documentation) that have been taken into account in trac_5457-review-as.patch. I'm changing the status to positive review.

Note: See TracTickets for help on using tickets.