sagemath / sage

Main repository of SageMath
https://www.sagemath.org
Other
1.45k stars 481 forks source link

Implement web basis elements of rings of SL_3 invariants, as in work of Kuperberg and Fomin-Pylyavskyy #25901

Open hughrthomas opened 6 years ago

hughrthomas commented 6 years ago

Implement various things to help study rings of SL_3 invariants, as in the paper by Fomin and Pylyavskyy, arXiv:1210.1888. In particular:

CC: @tscrim

Component: combinatorics

Keywords: sagedays@icerm, web basis, cluster algebra, SL_3 invariants, Grassmannians

Author: Véronique Bazier-Matte, Guillaume Douville, Hugh Thomas

Branch/Commit: public/web_sl3_minimal @ 8a67001

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

mantepse commented 6 years ago
comment:2

see #25173 for an implementation (warning: it's an attached file, not a branch) of some of the algorithms, including display.

hughrthomas commented 6 years ago
comment:3

Hi Martin, thanks for getting in touch, and thanks for sharing your code. There isn't a whole lot of overlap with what we have done so far, since we have focussed on actually drawing the web as a planar graph (which is fiddly to do, but nice to have, I think) and calculating the web invariant (which we have made some efforts to do fast, so as to be able to calculate the invariant for reasonably large webs).

I am very much open to advice or suggestions about what should be done about combining this code with yours and/or organizing this code for inclusion into Sage.

I am attaching the current state of the files so people can see them at the Sagedays, even though they are not really in a state for public distribution yet.

hughrthomas commented 6 years ago

Attachment: web-10.sage.gz

fchapoton commented 4 years ago

Commit: 2d8e7f2

fchapoton commented 4 years ago
comment:4

Attachment: web-10.spyx.gz

J'ai fait une branche..


New commits:

2d8e7f2a minimal branch for SL3 webs
fchapoton commented 4 years ago

Branch: public/web_sl3_minimal

fchapoton commented 4 years ago
comment:5

What would be a non-trivial example of input for the "Web" class ?

hughrthomas commented 4 years ago
comment:6

InitState is an n-tuple of 0,1, or -1; InitColor is an n-tuple of 1 or -1. (The example input which uses [1,2,3,4] as the InitState doesn't make any sense.)

Not every pair of n-tuples will work. The example on page 8 of https://arxiv.org/pdf/q-alg/9712046.pdf is InitState=(1,1,0,0,-1,0,-1), InitColor=(1,-1,1,-1,1,1,1).

Let me mention that the code for calculating the invariant performs about as well as using the generic graph-colouring code which exists in Sage, so the calculation of the invariant should be rewritten to use that code.

mkoeppe commented 4 years ago
comment:7

I'd recommend to add documentation like this to the docstrings...

7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 4 years ago

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

0f1b166a minimal branch for SL3 webs
8a67001various fixes, more doctests
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 4 years ago

Changed commit from 2d8e7f2 to 8a67001

mkoeppe commented 3 years ago
comment:11

Setting new milestone based on a cursory review of ticket status, priority, and last modification date.