proposition: Lemma cdo_gleP x y: gle canonical_doubleton_order x y <-> [\/ (x = C0 /\ y = C0), (x = C1 /\ y = C1) | (x = C0 /\ y = C1)].
proof: Proof. split; first by case/set3_P; move => h;rewrite(pr1_def h)(pr2_def h); in_TP4. case; move=> [-> ->]; apply /set3_P; in_TP4. Qed.
imports: mathcomp(ssreflect ssrfun ssrbool eqtype ssrnat)