sagemath / sage

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

Snake graph perfect matching formula for cluster variables from surfaces #16310

Open cc6b51a1-a453-4261-a2f3-40d311f6708f opened 10 years ago

cc6b51a1-a453-4261-a2f3-40d311f6708f commented 10 years ago

branch for this ticket: u/egunawan/16310snake (currently at Sage 8.9beta3)

Enhancement to the cluster_algebra_quiver package: User can define a cluster algebra seed by entering a cluster triangulation class T of a surface. User can then compute the T-expansion of an arc or loop gamma by entering the arcs of T that gamma crosses.

The algorithm used is the perfect matching formula from the following papers: "Positivity for cluster algebras from surfaces" http://arxiv.org/abs/0906.0748 (section 4). "Bases for cluster algebras from surfaces" http://arxiv.org/abs/1110.4364 (section 3).

Related snake graph class ticket: See https://github.com/sagemath/sage-prod/issues/19160

CC: @fchapoton @sagetrac-khlee @kelleye @tscrim @sagetrac-gmoose05

Component: combinatorics

Keywords: days64, days64.5, days65, cluster algebras, triangulations, sagedays@icerm

Author: Emily Gunawan, Elizabeth Kelley

Branch/Commit: u/egunawan/16310snake @ a2e8a8c

Reviewer: Gregg Musiker, Travis Scrimshaw

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

cc6b51a1-a453-4261-a2f3-40d311f6708f commented 9 years ago

Changed keywords from days64, cluster algebras, triangulations to days64, days64.5, cluster algebras, triangulations

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

Changed commit from e6d196d to 3bf3d33

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

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

3bf3d33Ticket 16310: Add figures for principal coefficients (symmetric difference in snake graph matchings). Computation not included yet.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

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

3852d42Add coefficients. Does not work yet
db80469Ticket 16310: complete computation for the coefficients, but we seem to have chosen the opposite convention for coefficients.
47a0c41Ticket 16310: Finish computation for principal coefficients. Need more tests for loops and self-folded triangulation involving coefficients. ALSO: switch to the opposite convention to go from triangulations to matrix in order to match the choice of minimal matching in [MSW: Positivity paper]
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 3bf3d33 to 47a0c41

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

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

4081189Ticket 16310: Add coefficients for cases where arc crosses self-folded triangles.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 47a0c41 to 4081189

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

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

0acd113Ticket 16310: Fix bug for the case of generalized arc which has crosses the same arc as the first and last crossing. Add test for this case.
c18f653Ticket 16310: Complete doc and add more examples/tests.
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 4081189 to c18f653

1adc0eef-8957-46d9-975b-2dd71dfbd9ba commented 9 years ago
comment:41

Documentation won't build for me. Can't easily see what the problem is from the error, though.

fchapoton commented 9 years ago
comment:42

looks like some unicode problem (hidden space characters, long dashes, whatever..)

cc6b51a1-a453-4261-a2f3-40d311f6708f commented 9 years ago
comment:43

What happened was that I added this word in the documentation:

Salomón

After I replaced the "ó" with a plain "o", make doc was successful.

cc6b51a1-a453-4261-a2f3-40d311f6708f commented 9 years ago

Changed keywords from days64, days64.5, cluster algebras, triangulations to days64, days64.5, days65, cluster algebras, triangulations

fchapoton commented 9 years ago
comment:44

please commit the change and push the branch here

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

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

15ef751Ticket 16310: clean up doc. Remove o' which causes error in doc
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from c18f653 to 15ef751

cc6b51a1-a453-4261-a2f3-40d311f6708f commented 9 years ago
comment:46

Fyi, one of the reasons why I haven't set this to "need review" is that major changes to the cluster algebra package are coming (during Sage Days 64.5 last week) and I will need to adjust the ClusterTriangulation class to these changes.

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

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

833fd3816310: add test for a bug involving Markov quiver generalized ordinary arc
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 15ef751 to 833fd38

fchapoton commented 9 years ago
comment:48
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

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

fbf94d716310: so that Kevin can draw pictures on html docs, we replace drawing.show() with return drawing.plot() except for the cluster_algebra_quiver.surface.LaurentExpansionFromSurface. Need to work on the draw_lifted_arc() method.
5d3aae816310: Fix bug, when orientation of first tile of snake graph is negative, def GetMinimalMatching should return (0,1,0,1) or (0,0,0,1).
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 833fd38 to 5d3aae8

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

Changed commit from 5d3aae8 to 87125c0

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

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

87125c016310: change doc test so that tests will still pass in 6.8beta3. Do not merge to version after 6.7 yet. We will change the labels are mapped to variables so that they do not depend on the sort function (we will do this after the cluster algebra package revamp is finished).
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 9 years ago

Changed commit from 87125c0 to a7e03b7

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

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

a7e03b716310:change to tile_flip_max = len(G) in the function GetAllMatchings(). Starting from the minimal matching G of the snake graph, all matchings are found by flipping G once,twice,...,len(G) many times.
fchapoton commented 8 years ago
comment:52

Authors and Reviewers fields must me filled with full names.

cc6b51a1-a453-4261-a2f3-40d311f6708f commented 8 years ago

Description changed:

--- 
+++ 
@@ -1,8 +1,10 @@
-my branch for this ticket: u/egunawan/snakegraph
-(fetch or pull this branch from Sage 6.7 master branch)
+branch for this ticket: u/egunawan/snakegraph
+(currently at Sage 6.7 master branch)

 Enhancement to the cluster_algebra_quiver package: User can define a cluster algebra seed by entering a cluster triangulation class T of a surface. User can then compute the T-expansion of an arc or loop gamma by entering the arcs of T  that gamma crosses. 

 The algorithm used is the perfect matching formula from the following papers:
 "Positivity for cluster algebras from surfaces" http://arxiv.org/abs/0906.0748 (section 4).
 "Bases for cluster algebras from surfaces" http://arxiv.org/abs/1110.4364 (section 3).
+
+We decided to try to break this ticket into smaller (and easier-to-read) parts. See https://github.com/sagemath/sage-prod/issues/19160
cc6b51a1-a453-4261-a2f3-40d311f6708f commented 8 years ago

Changed author from egunawan to Emily Gunawan

cc6b51a1-a453-4261-a2f3-40d311f6708f commented 8 years ago

Changed reviewer from gmoose05 to Gregg Musiker, Travis Scrimshaw

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

Changed commit from a7e03b7 to 1b5ada8

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

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

1b5ada8Merge to 6.8 master. Merge branch 'u/egunawan/snakegraph' of git://trac.sagemath.org/sage into perfmatchingformula
cc6b51a1-a453-4261-a2f3-40d311f6708f commented 8 years ago
comment:56

I am aware that this version (after merging with Sage 6.8) does not pass doctests, but I push it here so that Kyu-Hwan can use it right away.

5e838a06-ad16-4485-8376-8b45d6bff273 commented 8 years ago
comment:57

Made minor edits to make most of the ClusterTriangulation package work in Sage 7.3. The mutation method doesn't work.

5e838a06-ad16-4485-8376-8b45d6bff273 commented 8 years ago

Changed branch from u/egunawan/snakegraph to u/mattmills/snakegraph

fchapoton commented 7 years ago
comment:58

for python3 compatibility, do not use xrange (you can do "from six.moves import range" if you need an iterator)

and use the python3 syntax for print:

https://wiki.sagemath.org/Python3-compatible%20code


New commits:

60875c8Add ClusterTriangulation
cc40431A
f790709A
84b36ddMade minor edits to make ClusterTriangulation compatible with Sage 7.3. Mutation method doesn't work, but most other methods do.
fchapoton commented 7 years ago

Changed commit from 1b5ada8 to 84b36dd

1150906c-a05e-4119-a7ed-67cf7ad87ccf commented 6 years ago

Changed commit from 84b36dd to 01cb18f

1150906c-a05e-4119-a7ed-67cf7ad87ccf commented 6 years ago

Changed keywords from days64, days64.5, days65, cluster algebras, triangulations to days64, days64.5, days65, cluster algebras, triangulations, sagedays@icerm

1150906c-a05e-4119-a7ed-67cf7ad87ccf commented 6 years ago

Changed branch from u/mattmills/snakegraph to u/gh-kelleye/16310

1150906c-a05e-4119-a7ed-67cf7ad87ccf commented 6 years ago
comment:59

Merge to 8.2


Last 10 new commits:

ee3720bImprove error message on OSX
9cff292Better diagnostic if ssh key is invalid
a20328bSkip empty ssh key lines
491b640Handle the case where we checkout local branch that is not on ticket
271380bFix error message
3e73af8Rename http://trac.sagemath.org -> https
03fbd12Make xmlrpc requests over https
a0942dbAlso switch the python3 codepath to https
bd94c31Update fileserver paths for release management
01cb18fAllow x.y.z version numbers
1150906c-a05e-4119-a7ed-67cf7ad87ccf commented 6 years ago

Changed author from Emily Gunawan to Emily Gunawan, Elizabeth Kelley

cc6b51a1-a453-4261-a2f3-40d311f6708f commented 6 years ago
comment:60

Correction for merging to 8.2


New commits:

af89a54merged to 8.2
cc6b51a1-a453-4261-a2f3-40d311f6708f commented 6 years ago

Description changed:

--- 
+++ 
@@ -1,5 +1,5 @@
-branch for this ticket: u/egunawan/snakegraph
-(currently at Sage 6.7 master branch)
+branch for this ticket: u/egunawan/16310snake82
+(currently at Sage 8.2 master)

 Enhancement to the cluster_algebra_quiver package: User can define a cluster algebra seed by entering a cluster triangulation class T of a surface. User can then compute the T-expansion of an arc or loop gamma by entering the arcs of T  that gamma crosses. 

@@ -7,4 +7,4 @@
 "Positivity for cluster algebras from surfaces" http://arxiv.org/abs/0906.0748 (section 4).
 "Bases for cluster algebras from surfaces" http://arxiv.org/abs/1110.4364 (section 3).

-We decided to try to break this ticket into smaller (and easier-to-read) parts. See https://github.com/sagemath/sage-prod/issues/19160
+Related snake graph class ticket: See https://github.com/sagemath/sage-prod/issues/19160
cc6b51a1-a453-4261-a2f3-40d311f6708f commented 6 years ago

Changed branch from u/gh-kelleye/16310 to u/egunawan/16310snake82

cc6b51a1-a453-4261-a2f3-40d311f6708f commented 6 years ago

Changed commit from 01cb18f to af89a54

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

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

1b3c18ccontinue merging to 8.2. reduce doctest failures
7ed8c4ca-6d56-4ae9-953a-41e42b4ed313 commented 6 years ago

Changed commit from af89a54 to 1b3c18c

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

Changed commit from 1b3c18c to 5e0c55e

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

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

8663643fix example to explain ClusterSeed will refresh cluster to the initial x0, ..., xn
1548d09set use f poly flag to true
e74be29set use f poly flag to true
04baa31Fixed some doctest errors
5e0c55eMerge branch 'u/gh-kelleye/16310_07-27-18' of git://trac.sagemath.org/sage into u/egunawan/16310snake82