> I would have guessed that P.to_graph() returns a digraph.

Then you expected either P.hasse_diagram() or
P.hasse_diagram().transitive_closure().

> Could there be just Graph(Poset) and maybe even DiGraph(Poset)?

Same problem, we would not know "which graph" or "which digraph" it
represents. With P.hasse_diagram() or P.comparability_graph() we know.
[1]

> What is actually a Hasse diagram? A graph with vertices labeled as
> integers from 0 to n-1, some positioning information used for plot(), what
> else?

Sage contains a HasseDiagram class that is not meant for users (many
unchecked assumptions, like the 0..n-1 labelling). When you execute
P.hasse_diagram() you get a digraph whose vertices are list(P).

More information there: http://en.wikipedia.org/wiki/Hasse_diagram

Also, if you have an acyclic digraph D, then Poset(D).hasse_diagram()
== D.transitive_reduction()

Nathann

[1] We could even have an exception raised in case of Graph(P) that
mention those methods.

-- 
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 http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to