#17408: Faster transitive_reduction (=> faster Poset creation)
-------------------------+-------------------------------------------------
       Reporter:         |        Owner:
  ncohen                 |       Status:  needs_review
           Type:         |    Milestone:  sage-6.5
  enhancement            |   Resolution:
       Priority:  major  |    Merged in:
      Component:  graph  |    Reviewers:
  theory                 |  Work issues:
       Keywords:  poset  |       Commit:
        Authors:         |  ce577a909e3ac2835f975cc9515b54459174e8ca
  Nathann Cohen          |     Stopgaps:
Report Upstream:  N/A    |
         Branch:         |
  u/ncohen/17408         |
   Dependencies:         |
-------------------------+-------------------------------------------------

Comment (by nbruin):

 Replying to [comment:12 ncohen]:

 > What we would need as you say is a class exactly like Poset without the
 parent infrastructure, but how could we implement that with the smallest
 amount of copy/paste ?

 It would require some thought and some major refactoring. The natural
 structure to me would seem to have a base class that does not inherit from
 UniqueRepresentation that implements all the basic stuff and then
 (hopefully) use multiple inheritance to equip this with the requisite
 parent stuff for the "full Parent POSet". If there are things that are
 incompatible between a usable "fast POSet" and a "full parent POSet" then
 the useful thing should probably inherit separately from the common base
 class.

 The "full parent poset" __init__ would probably require some trickery to
 allow instantiation of a full parent from a fast poset (if that's
 required). Quite possibly, you'd be better off with a !UniqueFactory
 there, so that you have better control over what the construction is keyed
 under.

--
Ticket URL: <http://trac.sagemath.org/ticket/17408#comment:14>
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/d/optout.

Reply via email to