On 2012-10-25, Florent Hivert wrote: > Hi, > > With Nathann, we just got the following behavior: > > sage: p = Poset(((0,1,2),[(0,1),(0,2)]), facade=True) > sage: pp = p.relabel({0:0, 1:2, 2:1}) > sage: p == pp > False > > so relabeling by an automorphism doesn't return the same poset ! Note however > that: Note further that you still get
sage: p.is_isomorphic(pp) True sage: pp.is_isomorphic(p) True Also, sage: p.hasse_diagram()==pp.hasse_diagram() True > > sage: Poset(((0,1,2),[(0,1),(0,2)])) == Poset(((0,2,1),[(0,2),(0,1)])) > True > sage: Poset(((0,1,2),[(0,1),(0,2)]), facade=True) == > Poset(((0,2,1),[(0,2),(0,1)]), facade=True) > True > > So during construction Sage is able to recognize equal Posets. I'm not it probably treats collections of elements as sets, that's why you get identical things. That '==' returns False on p==pp above seems like a bug, not sure where. > sure how to deal with this and the following remark of the documentation: > > .. note:: > > As can be seen in the above examples, the default linear > extension of ``Q`` is that of ``P`` after relabelling. In > particular, ``P`` and ``Q`` share the same internal Hasse > diagram. > > Adding uniqueness and this means that all isomorphic posets must share the > same underlying hasse_diagram. I don't think this is a good idea. Why? Isomorphic posets do have the same Hasse diagram. Why not share it then? > > So I'm not sure what to do here. > > Cheers, > > Florent > -- You received this message because you are subscribed to the Google Groups "sage-combinat-devel" group. To post to this group, send email to sage-combinat-devel@googlegroups.com. To unsubscribe from this group, send email to sage-combinat-devel+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sage-combinat-devel?hl=en.