Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

An interface to Anders Buch's Littlewood-Richardson Calculator lrcalc #10333

Closed
mwhansen opened this issue Nov 26, 2010 · 49 comments
Closed

An interface to Anders Buch's Littlewood-Richardson Calculator lrcalc #10333

mwhansen opened this issue Nov 26, 2010 · 49 comments

Comments

@mwhansen
Copy link
Contributor

The attached patch, and spkg implements an interface to Anders Buch's Littlewood-Richardson Calculator lrcalc

The "Littlewood-Richardson Calculator" is a C library for fast
computation of Littlewood-Richardson (LR) coefficients and products of
Schubert polynomials. It handles single LR coefficients, products of
and coproducts of Schur functions, skew Schur functions, and
fusion products. All of the above are achieved by counting LR
(skew)-tableaux (also called Yamanouchi (skew)-tableaux) of
appropriate shape and content by iterating through them.
Additionally, lrcalc handles products of Schubert polynomials.

The web page of lrcalc is: http://math.rutgers.edu/~asbuch/lrcalc/

Here is a short extract of the doc:

EXAMPLES::

    sage: import sage.libs.lrcalc.lrcalc as lrcalc

Compute a single Littlewood-Richardson coefficient::

    sage: lrcalc.lrcoef([3,2,1],[2,1],[2,1])              #optional - lrcalc
    2

Compute a product of Schur functions; return the coefficients in the Schur expansion::

    sage: lrcalc.mult([2,1], [2,1])                       #optional - lrcalc
    {[3, 3]: 1, [4, 2]: 1, [3, 1, 1, 1]: 1, [4, 1, 1]: 1, [2, 2, 2]: 1, [3, 2, 1]: 2, [2, 2, 1, 1]: 1}

Add optional package attachment: lrcalc-1.1.6beta.spkg

Apply: attachment: trac_10333-lrcalc-final.patch

Making lrcalc into a standard package in the next Sage release is the topic of the followup ticket: #11563

CC: @sagetrac-sage-combinat @asbuch @saliola

Component: packages: optional

Keywords: spkg package, Schubert calculus, Littlewood-Richardson, days30

Author: Mike Hansen, Anders Buch, Nicolas M. Thiéry, Anne Schilling

Reviewer: Nicolas M. Thiéry, Anne Schilling

Merged: sage-5.0.beta2

Issue created by migration from https://trac.sagemath.org/ticket/10333

@anneschilling
Copy link

comment:3

Together with Anders Buch, I went through this patch at Sage Days 30 and checked all functionalities. We added further doctests and also access to fusion coefficients (which was not in the previous version of this patch).

From the mathematical point of view, I give this a positive review. Could someone please do a quick technical review of the patch?

Thanks!

Anne

Apply: trac_10333-lrcalc-final.patch

@anneschilling
Copy link

Reviewer: Anne Schilling

@anneschilling anneschilling modified the milestones: sage-4.7, sage-4.7.1 May 6, 2011
@anneschilling
Copy link

Changed keywords from none to spkg package, Schubert calculus, Littlewood-Richardson

@anneschilling
Copy link

comment:5

I fixed some more typos and omissions on the doctest.

Positive review on the mathematics and features.

Could someone complete the technical review?

Cheers,

Anne

@anneschilling
Copy link

Changed keywords from spkg package, Schubert calculus, Littlewood-Richardson to spkg package, Schubert calculus, Littlewood-Richardson, days30

@fchapoton
Copy link
Contributor

comment:7

for the bot:

Apply: trac_10333-lrcalc-final.patch

@anneschilling
Copy link

Changed author from Mike Hansen to Mike Hansen, Anders Buch, Nicolas Thiery, Anne Schilling

@anneschilling
Copy link

Changed reviewer from Anne Schilling to Nicolas Thiery, Anne Schilling

@nthiery
Copy link
Contributor

nthiery commented Jun 28, 2011

comment:9

Hi,

I used the occasion to do something I had promissed Anders a while ago: namely to add a standard GNU build system (autoconf/automake) to the original lrcalc sources. With this, the SPKG becomes trivial. I'll upload shortly a preversion of it. If Anders agrees with the changes, and once he will have done an official release, I'll upload a final version of the spkg.

Mike: could you review now the three little files: SPKG.txt, spkg-install and spkg-check? Those are unlikely to change.

@nthiery

This comment has been minimized.

@nthiery nthiery changed the title Add an optional interface for lrcalc An interface to Anders Buch's Littlewood-Richardson Calculator lrcalc Jun 28, 2011
@nthiery

This comment has been minimized.

@nthiery
Copy link
Contributor

nthiery commented Jun 28, 2011

comment:12

I fixed a couple tiny typos in lrcalc.pyx, and uploaded an updated patch. For me this part is good to go.

@nthiery

This comment has been minimized.

@nthiery
Copy link
Contributor

nthiery commented Jul 1, 2011

comment:13

According to the vote on http://groups.google.com/group/sage-devel/browse_thread/thread/2e7114375f6f88a5/, there is a consensus on making lrcalc a standard package, after a one release probation period in order to follow the official rule. See: #11563

@anneschilling
Copy link

comment:14

Can we now set a positive review on this patch?

Anne

@nathanncohen
Copy link
Mannequin

nathanncohen mannequin commented Oct 1, 2011

comment:15

(pending an answer, if no one knows whether this ticket should be reviewed...)

@anneschilling
Copy link

comment:16

Replying to @nathanncohen:

(pending an answer, if no one knows whether this ticket should be reviewed...)

As far as I know, everything is fine with the ticket except that Nicolas is waiting for confirmation from Anders Buch about the spkg. Nicolas, is everything ok now on this front?

Anne

@jdemeyer
Copy link

comment:32

One more thing: the spkg should follow the format of http://sagemath.org/doc/developer/producing_spkgs.html#the-file-spkg-txt. In particular, the Changelog should be formatted differently.

@nthiery
Copy link
Contributor

nthiery commented Jan 24, 2012

Final spkg

@nthiery
Copy link
Contributor

nthiery commented Jan 24, 2012

comment:33

Attachment: lrcalc-1.1.6beta.spkg.gz

Replying to @jdemeyer:

One more thing: the spkg should follow the format of http://sagemath.org/doc/developer/producing_spkgs.html#the-file-spkg-txt. In particular, the Changelog should be formatted differently.

Oops. Thanks for spotting this. I updated the spkg accordingly. Do you mind reviewing the new SPKG.txt?

@jdemeyer
Copy link

comment:34

Actually, the documentation still doesn't work:

/mnt/usb1/scratch/jdemeyer/merger/sage-5.0.beta2/devel/sage/doc/en/reference/sage/libs/lrcalc/lrcalc.rst:7: WARNING: autodoc can't import/find module 'sage.libs.lrcalc.lrcalc', it reported error: "No module named lrcalc", please check your spelling and sys.path
/mnt/usb1/scratch/jdemeyer/merger/sage-5.0.beta2/local/lib/python2.7/site-packages/sage/misc/edit_module.py:docstring of sage.misc.edit_module.edit_devel:14: WARNING: Inline interpreted text or phrase reference start-string without end-string.

@nthiery
Copy link
Contributor

nthiery commented Jan 24, 2012

comment:35

Replying to @jdemeyer:

Actually, the documentation still doesn't work:

/mnt/usb1/scratch/jdemeyer/merger/sage-5.0.beta2/devel/sage/doc/en/reference/sage/libs/lrcalc/lrcalc.rst:7: WARNING: autodoc can't import/find module 'sage.libs.lrcalc.lrcalc', it reported error: "No module named lrcalc", please check your spelling and sys.path
/mnt/usb1/scratch/jdemeyer/merger/sage-5.0.beta2/local/lib/python2.7/site-packages/sage/misc/edit_module.py:docstring of sage.misc.edit_module.edit_devel:14: WARNING: Inline interpreted text or phrase reference start-string without end-string.

I don't understand. Why is this lrcalc.rst file generated, whereas no such file is generated for, e.g. the analoguous sage/numerical/backends/coin_backend.pyx?

@jhpalmieri
Copy link
Member

comment:36

When I click on attachment: trac_10333-lrcalc-final.patch, it still has a line adding sage/libs/lrcalc/lrcalc to doc/en/reference/libs.rst. That's presumably the problem.

@anneschilling
Copy link

comment:37

Replying to @jhpalmieri:

When I click on attachment: trac_10333-lrcalc-final.patch, it still has a line adding sage/libs/lrcalc/lrcalc to doc/en/reference/libs.rst. That's presumably the problem.

Nicolas, could you please also put the updated patch on the sage-combinat server.

Thanks,

Anne

@nthiery
Copy link
Contributor

nthiery commented Jan 24, 2012

comment:38

Attachment: trac_10333-lrcalc-final.patch.gz

Replying to @jhpalmieri:

When I click on attachment: trac_10333-lrcalc-final.patch, it still has a line adding sage/libs/lrcalc/lrcalc to doc/en/reference/libs.rst. That's presumably the problem.

What's the heck? How did I do this?

Oh well; fixed. Thanks for spotting it!

@nthiery
Copy link
Contributor

nthiery commented Jan 24, 2012

comment:39

Nicolas, could you please also put the updated patch on the sage-combinat server.

Done.

@nthiery
Copy link
Contributor

nthiery commented Jan 24, 2012

comment:40

Jeroen: I let you set back the positive review. Sorry for all the back and forth.

@anneschilling
Copy link

comment:41

Replying to @nthiery:

Jeroen: I let you set back the positive review. Sorry for all the back and forth.

The line referring to doc/en/reference/libs.rst seems to be gone now, so I set this back to positive review. Hopefully it will work now!

Anne

@jdemeyer
Copy link

jdemeyer commented Feb 2, 2012

Merged: sage-5.0.beta2

@nthiery
Copy link
Contributor

nthiery commented Feb 2, 2012

comment:43

Yippee :-)

Thanks everyone!

@jdemeyer
Copy link

Changed author from Mike Hansen, Anders Buch, Nicolas Thiery, Anne Schilling to Mike Hansen, Anders Buch, Nicolas M. Thiéry, Anne Schilling

@jdemeyer
Copy link

Changed reviewer from Nicolas Thiery, Anne Schilling to Nicolas M. Thiéry, Anne Schilling

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants