>    Suppose you have function A that calls function B a lot over a loop, and
> both of them can take advantage of the canonical labeling of the DiGraph. If
> you do not have a HasseDiagram class, then A would have to convert the
> canonical labeling, then convert back every time it called B, which would
> have to unconvert, do it's operation.

class Poset:

    def A():
        for i in ZZ:
             self._B()

    def _B():
        # works on the digraph self._hasse_diagram, taking advantage
of its labelling

I do not see where the problem is. It requires a helper function _B a
in the current design (where _B would be a HasseDiagram method), and
for the other functions that do not need to "call a function that
takes advantage of the labelling" (whatever that means) we would need
only one function (which is 99% of the time).

I still do not see what makes HasseDiagram mandatory. To clear any
misunderstanding, look at the following ticket:

    http://trac.sagemath.org/ticket/19659

It implements a Poset function that "takes advantage of the diagram's
labelling" and we don't need any HasseDiagram method, so I do not know
what you are talking about.

Nathann

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

Reply via email to