Opened 8 years ago

Last modified 17 months ago

#6629 new defect

Implement the abstract ring of multivariate polynomials, with several bases (Schur schubert, ...)

Reported by: nthiery Owned by: VivianePons
Priority: major Milestone: sage-7.2
Component: combinatorics Keywords: multivariate polynomials, schubert polynomials, non symmetric polynomials, days54
Cc: sage-combinat, VivianePons, tscrim Merged in:
Authors: Viviane Pons Reviewers:
Report Upstream: N/A Work issues:
Branch: public/combiat/6629-new-version (Commits) Commit: 46b6841f0b7ceb9877063c44230f25bf9b63b529
Dependencies: Stopgaps:

Description (last modified by VivianePons)

We build an implantation of polynomials as formal sum of exponents. This allows to work on any number of variables with some easy morphism. We use some actions of Weyl group on the exponents to create operators (especially divided difference operators).

These operators allow us to build different bases that comes from geometry and have nice combinatorial description.

Attachments (1)

trac_6629-multivariate-polynomials-on-several-bases-vp.patch (342.9 KB) - added by VivianePons 5 years ago.

Download all attachments as: .zip

Change History (20)

comment:1 Changed 5 years ago by VivianePons

  • Authors set to Viviane Pons
  • Cc VivianePons added
  • Description modified (diff)
  • Owner changed from mhansen to VivianePons
  • Report Upstream set to N/A

comment:2 Changed 5 years ago by VivianePons

the patch apply on 5.6 and is mostly working. It is not yet ready for review though, it needs more tests and docs and possibly a few fixes.

comment:3 Changed 5 years ago by jferreira

What is the status of this ticket? Is it still in development?

comment:4 Changed 5 years ago by VivianePons

Yes, sorry for taking such a long time but this is a big implementation and I work on it only when I have time (which is not so often). My plan is to finish a first version of it on the upcoming Sage days in Paris and find someone to work on the review. In the meantime, the patch is working already and some people use it.

comment:5 Changed 5 years ago by VivianePons

Just attached the last version of the patch to apply on Sage 5.9

comment:6 Changed 4 years ago by jdemeyer

  • Milestone changed from sage-5.11 to sage-5.12

comment:7 Changed 4 years ago by VivianePons

  • Branch set to public/combinat/6629-Schubert-Grothendieck-Key-polynomials
  • Commit set to 066a1b9dd3dfc521ee097e144bc9cf02abb7643d

New commits:

[changeset:066a1b9]typo fix
[changeset:2149df9]#6629 Implement the abstract ring of multivariate polynomials, with several bases (monomials, Schur schubert, Demazure ...)

comment:8 Changed 4 years ago by tscrim

  • Cc tscrim added
  • Keywords days54 added

comment:9 Changed 4 years ago by git

  • Commit changed from 066a1b9dd3dfc521ee097e144bc9cf02abb7643d to e0118458589d794f4566cf3dec26dd69e5d6fd59

Branch pushed to git repo; I updated commit sha1. New commits:

e011845Merge branch 'master' into 6629-Schubert-Grothendieck-Key-polynomials

comment:10 Changed 4 years ago by vbraun_spam

  • Milestone changed from sage-6.1 to sage-6.2

comment:11 Changed 4 years ago by git

  • Commit changed from e0118458589d794f4566cf3dec26dd69e5d6fd59 to 933a033b0555ed39570078e9d594282feaeab007

Branch pushed to git repo; I updated commit sha1. New commits:

933a033Merge remote-tracking branch 'origin/develop' into polynomials

comment:12 Changed 4 years ago by vbraun_spam

  • Milestone changed from sage-6.2 to sage-6.3

comment:13 Changed 3 years ago by vbraun_spam

  • Milestone changed from sage-6.3 to sage-6.4

comment:14 Changed 20 months ago by git

  • Commit changed from 933a033b0555ed39570078e9d594282feaeab007 to b92a96e4a03cd1be423bb8d035d265e8a697227b

Branch pushed to git repo; I updated commit sha1. New commits:

b92a96eMerge branch 'public/combinat/6629-Schubert-Grothendieck-Key-polynomials' of trac.sagemath.org:sage into public/combinat/6629-Schubert-Grothendieck-Key-polynomials

comment:15 Changed 20 months ago by tscrim

  • Milestone changed from sage-6.4 to sage-7.2

comment:16 Changed 18 months ago by git

  • Commit changed from b92a96e4a03cd1be423bb8d035d265e8a697227b to 0271f6713b72d069b1097a2b0338f3186c4b53e3

Branch pushed to git repo; I updated commit sha1. New commits:

b70d426Merge branch 'public/combinat/6629-Schubert-Grothendieck-Key-polynomials' of trac.sagemath.org:sage into public/combinat/6629-Schubert-Grothendieck-Key-polynomials
0271f67Trying to make things work again. Not there yet.

comment:17 Changed 17 months ago by tscrim

Viviane, when you get a chance, could you push the code that you currently have or are you still working on this?

comment:18 Changed 17 months ago by VivianePons

  • Branch changed from public/combinat/6629-Schubert-Grothendieck-Key-polynomials to public/combiat/6629-new-version
  • Commit changed from 0271f6713b72d069b1097a2b0338f3186c4b53e3 to 46b6841f0b7ceb9877063c44230f25bf9b63b529

Just pushed my latest code. Mostly everything is working but the tests and examples are all messed up (and, for some reason, I still cannot run any tests).

I have simplified many things, removing useless classes and so on. Now, I consider the monomial basis to be a "generator", I call it x and write:

sage: A.<x> = MultivariatePolynomialAlgebra(QQ)
sage: x[1,2,3] + x[2,3]
x[2, 3, 0] + x[1, 2, 3]

I think it makes more sense and it is more natural to use. The goal is to hide the inner mechanics as much as possible. "New example" are written in this manner, old ones still use the m notation.

All basis are combinatorial free module using a common "key wrapper" class that handles lists and ambient space basis elements.

In terms of mathematical meaning, remember that all bases are indexed by vectors, for Grothendieck and Schubert, they correspond to the Lehmer code of the permutation.

The only part that is not working is the "Double polynomial" one, but it's quite independent from the rest.

I let you have a look at it, it's not finished yet. Feel free to change it if you feel like it. I will be on holidays for the next 2 weeks.


New commits:

e0d9682Merge remote-tracking branch 'origin/public/combinat/6629-Schubert-Grothendieck-Key-polynomials' into local-6629
d9c033aWork in progress: simplifying the structure, cleaning stuff, writting docs
1db580dRefactoring / commenting, Work in progress
7805a1eMerge branch 'develop' into local-6629-wip
43d86b0Merge branch 'local-6629-wip' into local-6629-wip2
a40f3a8small fixes
f777a78Merge branch 'local-6629-wip2' into local-6629-7.3
46b6841Fixing some broken things

comment:19 Changed 17 months ago by tscrim

Thank you Viviane, I appreciate it. I will take a look at it soon and pass it along to the REU students. Enjoy your holidays!

Note: See TracTickets for help on using tickets.