Helloooooooooooooo everybody !!!

I spent many hours fighting with Posets under Sage. I enjoyed it a lot, but
I can already tell that it gets on Florent's and Nicolas' nerves, and so I
was thinking of whether I should put an end to it. For their sake.

Here's the problem. With comments.

-------------------------------
Building the poset from a DiGraph defined on integers :
sage: g = DiGraph([(1,2),(1,3),(2,4),(3,4)])
sage: p = Poset(g)

Is 3 in the poset ?

sage: 3 in p
True

Of course it is !

sage: list(p)
[1, 2, 3, 4]
sage: 3 in list(p)
False

Not it is not ! So what the hell is this list [1,2,3,4] that we get as a
result to list(p) ?

sage: map(type,list(p))
[<class
'sage.combinat.posets.elements.FinitePoset_with_category.element_class'>,
<class
'sage.combinat.posets.elements.FinitePoset_with_category.element_class'>,
<class
'sage.combinat.posets.elements.FinitePoset_with_category.element_class'>,
<class
'sage.combinat.posets.elements.FinitePoset_with_category.element_class'>]

O_O;;;

sage: p.cover_relations()
[[1, 2], [1, 3], [2, 4], [3, 4]]
sage: [1,3] in p.cover_relations()
False
sage: (1,3) in p.cover_relations()
False

And of course :

sage: p.hasse_diagraph() == g
False
------------------------

WELL. I personally consider that this behaviour is totally crazy, and I
often say so (very loud, and very frequently. Just come eat with us anyday
at lunch and I will probably complain about that, or about LaTeX). This
being said, I also heard that it may possibly make sense in a very sick
logic, and that the correction of some code may actually depend on that.

I personally think that having this as the default behaviour of Poset is
*madness*. I personally *ONLY* use Posets with he flag "facade = True" when
I do not forget it, and lose half an hour when I do forget it. What would
you think of making it the default behaviour of Poset ? This way, normal
people could use a Poset without having to know what a facade is. Without
having to hear about parents, elements, the .value() method and all.
I mean. Why the hell should this stay the default behaviour ?

Thank you for listening. Very soon, I hope to convince you that the way
Poset.relabel is written is an insult to computer science. I think I may
already have convinced Florent Hivert of the sin this method is.

Nathann

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To post to this group, send email to sage-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-devel+unsubscr...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.


Reply via email to