#12630: Add representations of quivers and quiver algebras to sage
-------------------------------------+-------------------------------------
       Reporter:  JStarx             |        Owner:  AlexGhitza
           Type:  enhancement        |       Status:  needs_work
       Priority:  major              |    Milestone:  sage-5.13
      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                            |  fda4012f91c357f3db86fb07271573886ad0da74
Report Upstream:  N/A                |     Stopgaps:
         Branch:                     |
  u/SimonKing/ticket/12630           |
   Dependencies:  #12412, #12413,    |
  #14806                             |
-------------------------------------+-------------------------------------
Changes (by SimonKing):

 * commit:   => fda4012f91c357f3db86fb07271573886ad0da74


Old description:

> This will add classes dealing with quivers, quiver algebras,
> representations of quivers, elements of these representations,
> homomorphisms between these representations, and spaces of homomorphisms
> between these representations.
>
> There's a lot here that is really easily computable.  We can compute
> socles, quotients, radicals, duals, and more for any finite dimensional
> representation.  We can compute projective covers of modules so
> Auslander-Rieten translations have been implemented and there's certainly
> potential for future enhancements dealing with homology and cohomology.
> There's only so much I can say here but everything is fully documented
> and should be self explanatory.
>
> Two shortcomings are that quivers need to be acyclic (to keep things
> finite dimensional) and this code does not handle quivers with relations.
> As far as quivers with relations go there are comments in the code
> detailing what should be done to implement that.  It's well within the
> reach of Sage, I just don't have the time to do it at the moment.
>
> __Apply__
>
> The second patch is supposed to split the code into chewable bits (so
> that maintenance and cythonization will become easier), introduces a
> parent structure for the paths of a quiver (namely: a free small
> category), makes paths inherit from Element (but ''not'' from
> `UniqueRepresentation`!) and fixes some tests. The third patch uses
> Sage's infrastructure for morphisms and homsets of representations, and
> it reduces the pollution of the global namespace.
>
> * [attachment:trac_12630_quivers_v2.patch]
> * [attachment:trac12630_refactor_code.patch]
> * [attachment:trac12630-quiver_representation.patch]

New description:

 This will add classes dealing with quivers, quiver algebras,
 representations of quivers, elements of these representations,
 homomorphisms between these representations, and spaces of homomorphisms
 between these representations.

 There's a lot here that is really easily computable.  We can compute
 socles, quotients, radicals, duals, and more for any finite dimensional
 representation.  We can compute projective covers of modules so Auslander-
 Rieten translations have been implemented and there's certainly potential
 for future enhancements dealing with homology and cohomology.  There's
 only so much I can say here but everything is fully documented and should
 be self explanatory.

 Two shortcomings are that quivers need to be acyclic (to keep things
 finite dimensional) and this code does not handle quivers with relations.
 As far as quivers with relations go there are comments in the code
 detailing what should be done to implement that.  It's well within the
 reach of Sage, I just don't have the time to do it at the moment.

 __About the commits__

 The second commit is supposed to split the code into chewable bits (so
 that maintenance and cythonization will become easier), introduces a
 parent structure for the paths of a quiver (namely: a free small
 category), makes paths inherit from Element (but ''not'' from
 `UniqueRepresentation`!) and fixes some tests. The third commit uses
 Sage's infrastructure for morphisms and homsets of representations, and it
 reduces the pollution of the global namespace.

--

Comment:

 I want to finally get this ticket off my plate. So, as a starter, I was
 turning the three patches into three commits of a git branch. Next, I need
 to read the preceding comments again, and fix the code accordingly.
 ----
 New commits:
 ||[[http://git.sagemath.org/sage.git/commit/?id=fda4012|fda4012]]||#12630:
 Use existing Sage infrastructure for quiver representations and their
 homspaces and morphisms||
 
||[[http://git.sagemath.org/sage.git/commit/?id=ff82cf0|ff82cf0]]||Implementation
 of quivers as associative magmas||
 ||[[http://git.sagemath.org/sage.git/commit/?id=4cbb1b0|4cbb1b0]]||trac
 #12630 Add representations of quivers and quiver algebras||

--
Ticket URL: <http://trac.sagemath.org/ticket/12630#comment:141>
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.

Reply via email to