Sage: Ticket #14654: implement flow polytopes
https://trac.sagemath.org/ticket/14654
<p>
Flow polytopes (or cones) of a directed graph is a polytope formed by assigning a nonnegative flow to each of edges of the graph such that the flow is conserved on internal vertices, and there is a unit of flow entering the sources and leaving the sinks.
</p>
<p>
The faces and volume of these polytopes are of interest. Examples of these polytopes are the Chan-Robbins-Yuen polytope and the Pitman-Stanley polytope.
</p>
<p>
Implement a class for these polytopes to compute the faces and the volume (maybe using <a class="closed ticket" href="https://trac.sagemath.org/ticket/13249" title="defect: Volume computation of polyhedra (closed: fixed)">#13249</a> or implementing known triangulations of them).
</p>
en-usSagehttps://trac.sagemath.org/chrome/site/logo_sagemath_trac.png
https://trac.sagemath.org/ticket/14654
Trac 1.1.6jdemeyerTue, 13 Aug 2013 15:35:53 GMTmilestone changed
https://trac.sagemath.org/ticket/14654#comment:1
https://trac.sagemath.org/ticket/14654#comment:1
<ul>
<li><strong>milestone</strong>
changed from <em>sage-5.11</em> to <em>sage-5.12</em>
</li>
</ul>
Ticketvbraun_spamThu, 30 Jan 2014 21:20:52 GMTmilestone changed
https://trac.sagemath.org/ticket/14654#comment:2
https://trac.sagemath.org/ticket/14654#comment:2
<ul>
<li><strong>milestone</strong>
changed from <em>sage-6.1</em> to <em>sage-6.2</em>
</li>
</ul>
TicketchapotonThu, 06 Mar 2014 17:00:03 GMTtype, milestone changed
https://trac.sagemath.org/ticket/14654#comment:3
https://trac.sagemath.org/ticket/14654#comment:3
<ul>
<li><strong>type</strong>
changed from <em>PLEASE CHANGE</em> to <em>enhancement</em>
</li>
<li><strong>milestone</strong>
changed from <em>sage-6.2</em> to <em>sage-wishlist</em>
</li>
</ul>
TicketchapotonFri, 07 Mar 2014 13:38:39 GMTcommit, branch set
https://trac.sagemath.org/ticket/14654#comment:4
https://trac.sagemath.org/ticket/14654#comment:4
<ul>
<li><strong>commit</strong>
set to <em>33472ec876b496cd45955fa7578e20faeca1b1fc</em>
</li>
<li><strong>branch</strong>
set to <em>u/chapoton/14654</em>
</li>
</ul>
<p>
New commits:
</p>
<table class="wiki">
<tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=33472ec876b496cd45955fa7578e20faeca1b1fc"><span class="icon"></span>33472ec</a></td><td><code>trac #14654 compute the flow polytope of a digraph</code>
</td></tr></table>
TicketchapotonMon, 08 Sep 2014 18:57:31 GMTowner, cc, component, summary changed
https://trac.sagemath.org/ticket/14654#comment:5
https://trac.sagemath.org/ticket/14654#comment:5
<ul>
<li><strong>owner</strong>
changed from <em>sage-combinat</em> to <em>graphcomponentowner</em>
</li>
<li><strong>cc</strong>
<em>ncohen</em> added
</li>
<li><strong>component</strong>
changed from <em>combinatorics</em> to <em>graph theory</em>
</li>
<li><strong>summary</strong>
changed from <em>implement class for flow polytopes</em> to <em>implement flow polytopes</em>
</li>
</ul>
TicketdarijThu, 30 Oct 2014 05:20:43 GMT
https://trac.sagemath.org/ticket/14654#comment:6
https://trac.sagemath.org/ticket/14654#comment:6
<p>
Might I suggest to put this either into a digraph class or into <code>src/sage/geometry/polyhedron/library.py</code>?
</p>
TicketncohenThu, 30 Oct 2014 08:41:03 GMT
https://trac.sagemath.org/ticket/14654#comment:7
https://trac.sagemath.org/ticket/14654#comment:7
<p>
Yepyep.
</p>
<p>
This should probably be a digraph method. It should also appear in <code>polytopes.<tab></code> I guess.
</p>
<p>
Nathann
</p>
TicketncohenThu, 30 Oct 2014 08:45:19 GMT
https://trac.sagemath.org/ticket/14654#comment:8
https://trac.sagemath.org/ticket/14654#comment:8
<p>
(You can also write the code in geometry/polyhedron and create a fake digraph function that calls it, btw)
</p>
<p>
Also, the docstring mentions sources/sinks but the code never heard of it.
</p>
<p>
Nathann
</p>
TicketjdemeyerThu, 30 Oct 2014 09:17:33 GMT
https://trac.sagemath.org/ticket/14654#comment:9
https://trac.sagemath.org/ticket/14654#comment:9
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/14654#comment:6" title="Comment 6">darij</a>:
</p>
<blockquote class="citation">
<p>
Might I suggest to put this either into a digraph class or into <code>src/sage/geometry/polyhedron/library.py</code>?
</p>
</blockquote>
<p>
On the other hand, beware of another <code>src/sage/graphs/generic_graph.py</code> which just contains too much stuff.
</p>
<p>
Note that you can <code>import</code> methods into classes just the same way as you can <code>import</code> other stuff.
</p>
TicketgitFri, 31 Oct 2014 14:44:39 GMTcommit changed
https://trac.sagemath.org/ticket/14654#comment:10
https://trac.sagemath.org/ticket/14654#comment:10
<ul>
<li><strong>commit</strong>
changed from <em>33472ec876b496cd45955fa7578e20faeca1b1fc</em> to <em>1b57c82f1eae104a3f6675f2f08c26e529f33f68</em>
</li>
</ul>
<p>
Branch pushed to git repo; I updated commit sha1. New commits:
</p>
<table class="wiki">
<tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=e1266237d227be509e1a252c13323e1b87f91b28"><span class="icon"></span>e126623</a></td><td><code>Merge branch 'u/chapoton/14654' of trac.sagemath.org:sage into 14654</code>
</td></tr><tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=1b57c82f1eae104a3f6675f2f08c26e529f33f68"><span class="icon"></span>1b57c82</a></td><td><code>trac #14654 flow polytope as a method of digraphs</code>
</td></tr></table>
TicketdarijFri, 31 Oct 2014 14:47:40 GMT
https://trac.sagemath.org/ticket/14654#comment:11
https://trac.sagemath.org/ticket/14654#comment:11
<p>
Why import <code>line_graph</code>?
</p>
TicketncohenFri, 31 Oct 2014 14:49:09 GMT
https://trac.sagemath.org/ticket/14654#comment:12
https://trac.sagemath.org/ticket/14654#comment:12
<p>
(please don't create a file for a 10 lines function)
</p>
TicketgitFri, 31 Oct 2014 15:04:08 GMTcommit changed
https://trac.sagemath.org/ticket/14654#comment:13
https://trac.sagemath.org/ticket/14654#comment:13
<ul>
<li><strong>commit</strong>
changed from <em>1b57c82f1eae104a3f6675f2f08c26e529f33f68</em> to <em>1cbe9656be3255a956e3fcc19ab67cb5273ab928</em>
</li>
</ul>
<p>
Branch pushed to git repo; I updated commit sha1. New commits:
</p>
<table class="wiki">
<tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=1cbe9656be3255a956e3fcc19ab67cb5273ab928"><span class="icon"></span>1cbe965</a></td><td><code>trac #14654 inclusion into digraph.py</code>
</td></tr></table>
TicketdarijFri, 31 Oct 2014 15:17:44 GMT
https://trac.sagemath.org/ticket/14654#comment:14
https://trac.sagemath.org/ticket/14654#comment:14
<p>
(BTW, digraph.py for some reason imports deprecation without needing it.)
</p>
TicketncohenFri, 31 Oct 2014 15:18:37 GMT
https://trac.sagemath.org/ticket/14654#comment:15
https://trac.sagemath.org/ticket/14654#comment:15
<blockquote class="citation">
<p>
(BTW, digraph.py for some reason imports deprecation without needing it.)
</p>
</blockquote>
<p>
Oh. Well, let's remove it then. Here or somewhere else.
</p>
<p>
Nathann
</p>
TicketgitFri, 31 Oct 2014 16:13:06 GMTcommit changed
https://trac.sagemath.org/ticket/14654#comment:16
https://trac.sagemath.org/ticket/14654#comment:16
<ul>
<li><strong>commit</strong>
changed from <em>1cbe9656be3255a956e3fcc19ab67cb5273ab928</em> to <em>a1fa21827894719e987b1ac3e41527e92df43f68</em>
</li>
</ul>
<p>
Branch pushed to git repo; I updated commit sha1. New commits:
</p>
<table class="wiki">
<tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=a1fa21827894719e987b1ac3e41527e92df43f68"><span class="icon"></span>a1fa218</a></td><td><code>trac #14654 remove deprecation import</code>
</td></tr></table>
TicketchapotonFri, 31 Oct 2014 17:07:43 GMTstatus changed
https://trac.sagemath.org/ticket/14654#comment:17
https://trac.sagemath.org/ticket/14654#comment:17
<ul>
<li><strong>status</strong>
changed from <em>new</em> to <em>needs_review</em>
</li>
</ul>
<p>
I do not know how to add this as a method of <code>polytopes</code>
</p>
TicketncohenFri, 31 Oct 2014 20:51:28 GMT
https://trac.sagemath.org/ticket/14654#comment:18
https://trac.sagemath.org/ticket/14654#comment:18
<p>
It seems that what appears in <code>polytopes.<tab></code> are the functions defined in <code>sage.geometry.polyhedron.library.Polytopes</code>.
</p>
<p>
Also, since you changed the status to <code>needs_review</code>: the documentation of <code>DiGraph.flow_polytope</code> mentions a source and a sink with a non-null flow, while the function only takes one argument, i.e. the graph.... Is that normal ? <code>O_o</code>
</p>
<p>
Nathann
</p>
TicketchapotonFri, 31 Oct 2014 21:07:20 GMT
https://trac.sagemath.org/ticket/14654#comment:19
https://trac.sagemath.org/ticket/14654#comment:19
<p>
Replying to <a class="ticket" href="https://trac.sagemath.org/ticket/14654#comment:18" title="Comment 18">ncohen</a>:
</p>
<blockquote class="citation">
<p>
It seems that what appears in <code>polytopes.<tab></code> are the functions defined in <code>sage.geometry.polyhedron.library.Polytopes</code>.
</p>
</blockquote>
<p>
Yes, but is there a way to just import the function as a method <code>polytopes.flow_polytope</code> ?
</p>
<blockquote class="citation">
<p>
Also, since you changed the status to <code>needs_review</code>: the documentation of <code>DiGraph.flow_polytope</code> mentions a source and a sink with a non-null flow, while the function only takes one argument, i.e. the graph.... Is that normal ? <code>O_o</code>
</p>
</blockquote>
<p>
Well, for quiver guys like me, a source is a vertex with only outgoing edges, and a sink with only incoming edges. Maybe you give them other names. So there is no need to provide them as arguments. Of course one needs to have as many sources as sinks for the flow polytope to make sense. Every source gets an input of 1 and every sink an output of 1.
</p>
TicketncohenFri, 31 Oct 2014 21:22:17 GMT
https://trac.sagemath.org/ticket/14654#comment:20
https://trac.sagemath.org/ticket/14654#comment:20
<p>
Yo !
</p>
<blockquote class="citation">
<p>
Yes, but is there a way to just import the function as a method <code>polytopes.flow_polytope</code> ?
</p>
</blockquote>
<p>
There is, but it may be a bit awkard for in one version the function takes a graph as an argument, and in the other <code>polytopes.flow_polytope(G)</code> it needs to be provided explicitly... But maybe that is not a problem.
</p>
<p>
About importing the method:
</p>
<pre class="wiki">sage: class A:
....: def hey(self):
....: print self
sage: A.hey(1)
...
TypeError: unbound method hey() must be called with A instance as first argument (got Integer instance instead)
sage: A.hey.__func__(1)
1
</pre><p>
But I am afraid that it does not preserve the docstring...
</p>
<p>
On the other hand it is possible to take a 'normal' function and make a copy of it inside of a class. You have many functions like that at the end of <code>graphs/graph.py</code>
</p>
<blockquote class="citation">
<p>
Well, for quiver guys like me, a source is a vertex with only outgoing edges, and a sink with only incoming edge. Maybe you give them other names. So there is no need to provide them as arguments. Of course one needs to have as many sources as sinks for the flow polytope to make sense. Every source gets an input of 1 and every sink an output of 1.
</p>
</blockquote>
<p>
Oh I see <code>O_o</code>
</p>
<p>
Well, for graph guys like me we expect the sources to be explicitly given, like in <code>GenericGraph.flow</code>.
</p>
<p>
HMmmm... Well, if you are positive that this is the standard that people who call this method would expect, could you make it a bit clearer for the graph guys ? Something like:
</p>
<pre class="wiki">... and there is a unit of flow entering the sources (i.e. vertices of indegree 0) and leaving the sinks (i.e. vertices of outdegree 0)
</pre><p>
The point is that I would understand if you talk about "the sinks/sources of a graph", but in the context of flow problem we expect the sources/sinks to be specific vertices. Could you also add a sentence about the necessity to have as many sinks as sources ?
</p>
<p>
Thaaaaaaanks and sorry for that ! Different people, different standards <code>^^;</code>
</p>
<p>
Nathann
</p>
TicketgitSat, 01 Nov 2014 07:43:37 GMTcommit changed
https://trac.sagemath.org/ticket/14654#comment:21
https://trac.sagemath.org/ticket/14654#comment:21
<ul>
<li><strong>commit</strong>
changed from <em>a1fa21827894719e987b1ac3e41527e92df43f68</em> to <em>f0309ebc481de9b3cffda40807197c9390615ff8</em>
</li>
</ul>
<p>
Branch pushed to git repo; I updated commit sha1. New commits:
</p>
<table class="wiki">
<tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=f0309ebc481de9b3cffda40807197c9390615ff8"><span class="icon"></span>f0309eb</a></td><td><code>trac #14654 reviewer's comments</code>
</td></tr></table>
TicketchapotonSat, 01 Nov 2014 17:42:03 GMTauthor changed
https://trac.sagemath.org/ticket/14654#comment:22
https://trac.sagemath.org/ticket/14654#comment:22
<ul>
<li><strong>author</strong>
changed from <em>ahmorales</em> to <em>Frédéric Chapoton</em>
</li>
</ul>
TicketncohenSun, 02 Nov 2014 22:14:41 GMT
https://trac.sagemath.org/ticket/14654#comment:23
https://trac.sagemath.org/ticket/14654#comment:23
<p>
Helloooooo !
</p>
<p>
Sorry for having delayed this patch for so long. I am about to leave for a couple of months and I had a lot of things to attend to <code>T_T</code>
</p>
<p>
I found a way to make this <code>polytopes.<tab></code> thing work. Wasn't that hard after all. I also merged the branch with the latest release.
</p>
<p>
It seems all good to go, still I have one question: from the way your code is written, a digraph obtained from "any digraph + an isolated vertex" has an empty flow polyhedron. I don't think that it is the expected behaviour, but might it be what you want for your applications ?
</p>
<p>
Nathann
</p>
<p>
(the additional commits are to be found at public/14654)
</p>
TicketgitMon, 03 Nov 2014 19:33:30 GMTcommit changed
https://trac.sagemath.org/ticket/14654#comment:24
https://trac.sagemath.org/ticket/14654#comment:24
<ul>
<li><strong>commit</strong>
changed from <em>f0309ebc481de9b3cffda40807197c9390615ff8</em> to <em>d74ca66ad183162f85ea4479810ba5909cbeec19</em>
</li>
</ul>
<p>
Branch pushed to git repo; I updated commit sha1. New commits:
</p>
<table class="wiki">
<tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=1a5325d41e6f1ddb799cd4d6a40b65d67eaa4be4"><span class="icon"></span>1a5325d</a></td><td><code>trac #14654: Merged with 6.4.rc1</code>
</td></tr><tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=11fee988f3dc9ac7847b16943831a79c95ffddee"><span class="icon"></span>11fee98</a></td><td><code>trac #14654: polytopes.<tab></code>
</td></tr><tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=d74ca66ad183162f85ea4479810ba5909cbeec19"><span class="icon"></span>d74ca66</a></td><td><code>trac #14654 case of isolated points (both source and sink)</code>
</td></tr></table>
TicketchapotonMon, 03 Nov 2014 19:35:43 GMT
https://trac.sagemath.org/ticket/14654#comment:25
https://trac.sagemath.org/ticket/14654#comment:25
<p>
Thanks a lot, Nathann, for all the time you spend on my tickets.
</p>
<p>
I have made a modification that takes care of isolated points by considering them as both sources and sinks, and so letting a flow of 1 silently going through them.
</p>
TicketdarijMon, 03 Nov 2014 19:41:54 GMT
https://trac.sagemath.org/ticket/14654#comment:26
https://trac.sagemath.org/ticket/14654#comment:26
<p>
Hmm. I don't like the idea that the sources and the sinks are inferred. I'd prefer to have the user provide them (and letting the code infer them only if so required), as I can see myself applying such a method for various sink-source configurations on a single graph, and it looks strange to build a new graph every time.
</p>
<p>
(I was planning to make these changes myself soon enough, once I'm done with Gelfand-Tsetlin and Berenstein-Zelevinsky polytopes, but I caught something last week and now all I'm swamped with work.)
</p>
TicketncohenFri, 21 Nov 2014 03:16:30 GMT
https://trac.sagemath.org/ticket/14654#comment:27
https://trac.sagemath.org/ticket/14654#comment:27
<p>
.......soooooooooooo ???
</p>
<p>
Nathann
</p>
TicketncohenFri, 19 Dec 2014 17:33:57 GMT
https://trac.sagemath.org/ticket/14654#comment:28
https://trac.sagemath.org/ticket/14654#comment:28
<p>
Darij ? Do you have any plans to implement the change you mentionned ? You left your comment 7 weeks ago and this ticket is "on hold" since...
</p>
<p>
Nathann
</p>
TicketdarijFri, 19 Dec 2014 19:10:10 GMT
https://trac.sagemath.org/ticket/14654#comment:29
https://trac.sagemath.org/ticket/14654#comment:29
<p>
OOPS, please don't regard my comments as blockers! I indeed wanted to do changes, but then I noticed that the polytopes class doesn't work the way I want it to and all these changes have to wait for my other patch, which has to wait for my end-of-term work... so this might take some time. Meanwhile, feel free to review and merge this patch -- whatever I want to change I will change later with my BZ polytopes patch.
</p>
TicketncohenFri, 19 Dec 2014 19:17:34 GMTstatus changed; reviewer set
https://trac.sagemath.org/ticket/14654#comment:30
https://trac.sagemath.org/ticket/14654#comment:30
<ul>
<li><strong>status</strong>
changed from <em>needs_review</em> to <em>positive_review</em>
</li>
<li><strong>reviewer</strong>
set to <em>Nathann Cohen</em>
</li>
</ul>
<p>
Okay, then let it get in. And you are welcome to make those source/sinks explicit, it also feels more natural to me <code>;-)</code>
</p>
<p>
Cheers,
</p>
<p>
Nathann
</p>
TickettscrimSat, 03 Jan 2015 03:00:17 GMTcommit, branch, milestone changed
https://trac.sagemath.org/ticket/14654#comment:31
https://trac.sagemath.org/ticket/14654#comment:31
<ul>
<li><strong>commit</strong>
changed from <em>d74ca66ad183162f85ea4479810ba5909cbeec19</em> to <em>703016840815038fe79b466d67bb297a8fd43042</em>
</li>
<li><strong>branch</strong>
changed from <em>u/chapoton/14654</em> to <em>u/tscrim/flow_polytopes-14654</em>
</li>
<li><strong>milestone</strong>
changed from <em>sage-wishlist</em> to <em>sage-6.5</em>
</li>
</ul>
<p>
I allowed myself to make the trivial change for speed: <code>len(ins) == 0</code> to <code>not ins</code>.
</p>
<hr />
<p>
New commits:
</p>
<table class="wiki">
<tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=3aadd397fb9803830a705610aeaefa4af07d589a"><span class="icon"></span>3aadd39</a></td><td><code>Merge branch 'u/chapoton/14654' of trac.sagemath.org:sage into u/tscrim/flow_polytopes-14654</code>
</td></tr><tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=703016840815038fe79b466d67bb297a8fd43042"><span class="icon"></span>7030168</a></td><td><code>Minor speedup tweak.</code>
</td></tr></table>
TicketvbraunSat, 03 Jan 2015 21:51:31 GMTstatus changed
https://trac.sagemath.org/ticket/14654#comment:32
https://trac.sagemath.org/ticket/14654#comment:32
<ul>
<li><strong>status</strong>
changed from <em>positive_review</em> to <em>needs_work</em>
</li>
</ul>
<pre class="wiki">File "src/sage/combinat/cluster_algebra_quiver/quiver.py", line 162, in sage.combinat.cluster_algebra_quiver.quiver.ClusterQuiver
Failed example:
Q = ClusterQuiver([[1,1]])
Expected:
Traceback (most recent call last):
...
ValueError: The input DiGraph contains a loop
Got:
<BLANKLINE>
Traceback (most recent call last):
File "/mnt/disk/home/release/Sage/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 488, in _run
self.compile_and_execute(example, compiler, test.globs)
File "/mnt/disk/home/release/Sage/local/lib/python2.7/site-packages/sage/doctest/forker.py", line 850, in compile_and_execute
exec(compiled, globs)
File "<doctest sage.combinat.cluster_algebra_quiver.quiver.ClusterQuiver[37]>", line 1, in <module>
Q = ClusterQuiver([[Integer(1),Integer(1)]])
File "sage/misc/lazy_import.pyx", line 383, in sage.misc.lazy_import.LazyImport.__call__ (build/cythonized/sage/misc/lazy_import.c:3398)
return self._get_object()(*args, **kwds)
File "/mnt/disk/home/release/Sage/local/lib/python2.7/site-packages/sage/combinat/cluster_algebra_quiver/quiver.py", line 342, in __init__
dg = DiGraph( data )
File "/mnt/disk/home/release/Sage/local/lib/python2.7/site-packages/sage/graphs/digraph.py", line 716, in __init__
deprecation(15706, "You created a graph with loops from a list. "+
NameError: global name 'deprecation' is not defined
**********************************************************************
1 item had failures:
2 of 41 in sage.combinat.cluster_algebra_quiver.quiver.ClusterQuiver
[227 tests, 2 failures, 2.01 s]
----------------------------------------------------------------------
sage -t --warn-long 38.5 src/sage/combinat/cluster_algebra_quiver/quiver.py # 2 doctests failed
</pre>
TicketdarijSat, 03 Jan 2015 22:44:44 GMTstatus, commit, branch changed
https://trac.sagemath.org/ticket/14654#comment:33
https://trac.sagemath.org/ticket/14654#comment:33
<ul>
<li><strong>status</strong>
changed from <em>needs_work</em> to <em>needs_review</em>
</li>
<li><strong>commit</strong>
changed from <em>703016840815038fe79b466d67bb297a8fd43042</em> to <em>187d1d8a216d763ae4c3af3ce5c4f449d5720c74</em>
</li>
<li><strong>branch</strong>
changed from <em>u/tscrim/flow_polytopes-14654</em> to <em>u/darij/flow_polytopes-14654</em>
</li>
</ul>
<p>
New commits:
</p>
<table class="wiki">
<tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=8b3f5826823450ce855198d0b616eef3fa3b0a5a"><span class="icon"></span>8b3f582</a></td><td><code>reverted a merge-incompatible change</code>
</td></tr><tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=187d1d8a216d763ae4c3af3ce5c4f449d5720c74"><span class="icon"></span>187d1d8</a></td><td><code>customize order of edges + customize sources and sinks</code>
</td></tr></table>
TicketdarijSat, 03 Jan 2015 22:46:00 GMT
https://trac.sagemath.org/ticket/14654#comment:34
https://trac.sagemath.org/ticket/14654#comment:34
<p>
Sorry guys, just added some more complexity. I do not particularly trust <code>self.edges()</code> to be consistent, let alone reasonable, about the order in which it outputs edges. And sources and sinks are now specifiable by the user.
</p>
TicketchapotonMon, 02 Mar 2015 20:42:19 GMTcommit, branch changed
https://trac.sagemath.org/ticket/14654#comment:35
https://trac.sagemath.org/ticket/14654#comment:35
<ul>
<li><strong>commit</strong>
changed from <em>187d1d8a216d763ae4c3af3ce5c4f449d5720c74</em> to <em>37ef5cbd6aaa4bc4938f55b420c7db15933322d4</em>
</li>
<li><strong>branch</strong>
changed from <em>u/darij/flow_polytopes-14654</em> to <em>u/chapoton/14654</em>
</li>
</ul>
<p>
Ok, I have just added the word "optional" in a few places. I would have prefered more simplicity, but nevertheless this seems to be good to go. If somebody else agrees, please set it to positive review.
</p>
<hr />
<p>
New commits:
</p>
<table class="wiki">
<tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=586cf135302d77e3b4a056b3d15f4c9c8c0bb4cb"><span class="icon"></span>586cf13</a></td><td><code>Merge branch 'u/darij/flow_polytopes-14654' into 6.6.b2</code>
</td></tr><tr><td><a class="ext-link" href="http://git.sagemath.org/sage.git/commit/?id=37ef5cbd6aaa4bc4938f55b420c7db15933322d4"><span class="icon"></span>37ef5cb</a></td><td><code>trac #14654 make more clear that ends and edges are optional in flow_polytope</code>
</td></tr></table>
TicketdarijMon, 02 Mar 2015 20:45:04 GMT
https://trac.sagemath.org/ticket/14654#comment:36
https://trac.sagemath.org/ticket/14654#comment:36
<p>
I definitely agree with your "optional"s -- they can never hurt. Does this mean I should set the ticket to positive_review?
</p>
TickettscrimMon, 02 Mar 2015 21:29:51 GMTstatus, reviewer changed
https://trac.sagemath.org/ticket/14654#comment:37
https://trac.sagemath.org/ticket/14654#comment:37
<ul>
<li><strong>status</strong>
changed from <em>needs_review</em> to <em>positive_review</em>
</li>
<li><strong>reviewer</strong>
changed from <em>Nathann Cohen</em> to <em>Nathann Cohen, Darij Grinberg, Travis Scrimshaw</em>
</li>
</ul>
<p>
In short, yes (although I've just done it :P).
</p>
TicketchapotonTue, 03 Mar 2015 13:16:33 GMTmilestone changed
https://trac.sagemath.org/ticket/14654#comment:38
https://trac.sagemath.org/ticket/14654#comment:38
<ul>
<li><strong>milestone</strong>
changed from <em>sage-6.5</em> to <em>sage-6.6</em>
</li>
</ul>
TicketvbraunTue, 03 Mar 2015 20:46:14 GMTstatus, branch changed; resolution set
https://trac.sagemath.org/ticket/14654#comment:39
https://trac.sagemath.org/ticket/14654#comment:39
<ul>
<li><strong>status</strong>
changed from <em>positive_review</em> to <em>closed</em>
</li>
<li><strong>resolution</strong>
set to <em>fixed</em>
</li>
<li><strong>branch</strong>
changed from <em>u/chapoton/14654</em> to <em>37ef5cbd6aaa4bc4938f55b420c7db15933322d4</em>
</li>
</ul>
Ticket