Hi Simon,

On Mon, Apr 29, 2013 at 03:18:59PM +0000, Simon King wrote:
> Let me try to rephrase the question: Since we already have DiGraph, why should
> we have *two* separate classes, namely for quiver-the-digraph and for
> quiver-the-associative-magma? Why not just use DiGraph for quiver-the-digraph?

I definitely see your point about not multiplying the number of
classes for no reason. The executive summary of the rant below is: I
am very happy with your proposal; just don't call the parent of the
paths "Quiver" but "QuiverPathMonoid" (or something similar) and don't
inherit from DiGraph.

Long version: we have four kinds of objects:

(1) Digraphs
(2) Quivers
(3) monoids of paths in a quiver (a better name is to be found since it's
    not exactly a monoid, but that's orthogonal to the discussion).
(4) path algebras of quivers

(1) and (2) are related by a isa relation: "a quiver is a digraph". So
we could use the same class to model both quivers and digraphs. Or
have a class Quiver that inherit from DiGraph.

(3) on the other hand should definitely be a separate class: the
"monoid of paths in a quiver" is not a quiver and reciprocally.

(4) idem

Now the question is what should be the main entry point for users.

If I recall correctly, at Sage Days 40 it was though better to not use
DiGraph as main entry point, because this would mean polluting the
namespace of DiGraph with many representation theoretical methods like
"projective modules".


So the options are:

- Implement the class Quiver, and use it as main entry point:

  sage: Quiver(...).projective_modules()

- Use something like QuiverPathMonoid as main entry point

  sage: QuiverPathMonoid(...).projective_modules()

- Use something like QuiverPathAlgebra as main entry point

  sage: QuiverPathAlgebra(...).projective_modules()

I guess I'd lean for the latter, but without strong preference.

> Is your functorial construction patch on trac?

No. It's in the Sage-Combinat queue. I won't waste time uploading it
on trac until it's in a reasonably final. Or more likely, I'll do the
final development using the new workflow and GIT.

> I couldn't use the category of monoids for obvious reasons. So, I
> would use the category of magmas---no problem for now.

Cool!

Cheers,
                                Nicolas
--
Nicolas M. ThiƩry "Isil" <nthi...@users.sf.net>
http://Nicolas.Thiery.name/

-- 
You received this message because you are subscribed to the Google Groups 
"sage-combinat-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-combinat-devel+unsubscr...@googlegroups.com.
To post to this group, send email to sage-combinat-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-combinat-devel?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to