Slight modification of the partial-order algorithm so that it does not remove itself in the set of elements bigger than it if it is indeed the case.
Slight modification of the partial-order algorithm so that it does not
remove itself in the set of elements bigger than it if it is indeed
the case.

This does not impact the warning issued when the recursivity is not
mutual but this produces a result consistent with the unary case when
the order is reflexive (i.e. results of the form (x,Inr[x,y]) happens
also in the mutual case to indicate a cycle x<=y<=x while before we
had results of the form (x,Inr[x]) only in the unary case). I.e.:

Before:
(x,[y]),(y,[x]) -> (x,Inr[]),(y,Inl x)
(x,[x]) -> (x,Inr[x])

Now:
(x,[y]),(y,[x]) -> (x,Inr[x]),(y,Inl x)
(x,[x]) -> (x,Inr[x])

gares/coq,Zimmi48/coq,coq/coq,ejgallego/coq,JasonGross/coq,ejgallego/coq,gares/coq,SkySkimmer/coq,gares/coq,gares/coq,Zimmi48/coq,ejgallego/coq,ejgallego/coq,JasonGross/coq,JasonGross/coq,coq/coq,JasonGross/coq,coq/coq,silene/coq,coq/coq,silene/coq,SkySkimmer/coq,SkySkimmer/coq,Zimmi48/coq,silene/coq,SkySkimmer/coq,gares/coq,Zimmi48/coq