#12630: Add representations of quivers and quiver algebras to sage
-------------------------------------+-------------------------------------
Reporter: JStarx | Owner: AlexGhitza
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-6.2
Component: algebra | Resolution:
Keywords: algebra, quiver, | Merged in:
module, days49 | Reviewers: Simon King
Authors: Jim Stark, Simon | Work issues:
King, Mathieu Guay-Paquet, Aladin | Commit:
Virmaux | 72fb2eb71459f4ac76b0d922a7ad788c660a8017
Report Upstream: N/A | Stopgaps:
Branch: |
u/SimonKing/ticket/12630 |
Dependencies: #12412, #12413, |
#14806, #15491, #15623 |
-------------------------------------+-------------------------------------
Comment (by ncohen):
Yo !
> HEY, I thought ''you'' are the guy who doesn't like to have the graph
namespace polluted `;-P`
Well, we still have to add methods from time to time, don't we ?
> That's the point. It seems that there are two different notions of
"paths of a graph". One notion is "sequence of vertices that are met along
the path", another notion is "sequence of directed edges that are
travelled along the path".
>
> If I see that correctly, the current implementation of `all_paths()` for
digraphs does the former, but the path-semigroup relies on the latter.
>
> So, let me re-formulate my question to you.
> 1. Do you want a new method called, say, `DiGraph.all_quiver_paths()` or
`DiGraph.all_arrow_sequences()` that returns what the path semigroup
needs?
What about `DiGraph.all_paths(edges=True)` ?
> 2. Do you want me to replace the current `DiGraph.all_paths()` so that
it returns what the path semigroup needs?
You are a free man and if I complain a lot I don't own the graph code. I
just care about it. This `all_paths` function has probably been created
because somebody needed it, and if you just replace it with what you need
instead we are going nowhere.
> 3. Do you want that the path semigroup computes its underlying data on
its own, without introducing a new method of `DiGraph`?
Well, you are free to do whatever you want with the code of this
semigroup. Right now the `all_paths` method returns a list of paths (be it
with vertices or edges), and if you want to do anything fast with your
semigroup you probably need to implement your own data structure to store
it better.
If it is a data structure which is efficient to store path independently
of what you do with it semigroup structure, well, then it should probably
be called `AllPaths` or something rather than semigroup. Then, your semi-
group can use this data structure, by class inheritance or anything you
like.
> I'd be surprised if you answer "yes" to 1., and shocked if you replied
"yes" to 2. Thus, I suppose you prefer 3., but perhaps I am mistaken.
I thought 2) was a joke, but I answered it seriously just in case. The
answer to 3 depends on what you do with the paths : how do you plan on
storing them ? A list is probably the worst you can do `^^;`
Nathann
--
Ticket URL: <http://trac.sagemath.org/ticket/12630#comment:167>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/groups/opt_out.