Hello Anne,

> Second of all, I did not write the poset code.
> As far as I know, it was written by Peter Jipsen and Franco Saliola. I
used the poset code in the new class LinearExtensions in
> combinat/posets/linear_extensions.py

I see.

Well, Anne, regardless of that it we need your help.

I hope that I gave in my first message a good explanation of why the
current design cannot work. The __init__ (and so the __eq__) depends on
both an unlabeled HasseDiagram and a list of labels, and there is not a
unique way to obtain these two elements from a labelled Hasse Diagram.

Thus, as Erik noticed, we need to split this Poset class into two:
- On one side a Poset class that only takes a labelled Hasse Diagram as
input
- On the other side a PosetWithLinearExtension that takes a Poset and a
linear extension of it as input.

I do not think that we can have the two in one class as it is now, as some
things cannot work for both at once, like equality.

I tried many times to solve the problem myself: I created #14019 two years
ago (and we discussed it together), and I tried to solve it now again. But
the truth is that I do not know where and how this information is used, so
I kept on coding something, only to notice later that my design would not
work, and had to start from scratch again.

I have been told that you were the one who needed the feature for something
you do related to Markov chain, so surely you know how it works better than
anybody here.

We also need your help for during last week Jori Mäntysalo has been writing
a lot of Poset code to fix bugs and add new features:

http://trac.sagemath.org/ticket/16984
http://trac.sagemath.org/ticket/17050
http://trac.sagemath.org/ticket/17022
http://trac.sagemath.org/ticket/17004
http://trac.sagemath.org/ticket/16985
http://trac.sagemath.org/ticket/16873
http://trac.sagemath.org/ticket/17051
http://trac.sagemath.org/ticket/17037
http://trac.sagemath.org/ticket/17036
http://trac.sagemath.org/ticket/16892

And there are other tickets of his that I need to review today.

Anne, we need a Poset class that we understand and can work with, and right
now the Posets carry this linear extension that does not belong there. It
is a lot of work to do that when you do not know the code. You use it and
know it, so please help us and dissociate those classes. Otherwise we are
just stuck with a code we do not understand, cannot change and cannot
remove.

Thanks,

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

Reply via email to