Section BoolOrder.
Implicit Types (x y : bool).
Fact bool_display : unit. Proof. exact: tt. Qed.
Fact andbE x y : x && y = if (x < y)%N then x else y.
Fact trans : transitive le.
Definition porderMixin := LePOrderMixin (rrefl _) refl anti trans.
Canonical porderType := POrderType disp3 (T * T') porderMixin.

Lemma ltEprod x y : (x < y) = [&& x != y, x.1 <= y.1 & x.2 <= y.2].