Section shorthands.
Variables (x y: e).
Definition Elt: Prop := Ecmp _ x y = Lt.
Definition Egt: Prop := Ecmp _ x y = Gt.
Definition Ele: Prop := Ecmp _ x y <> Gt.
Definition Ege: Prop := Ecmp _ x y <> Lt.
Definition Eltb: bool := match Ecmp _ x y with Lt => true | _ => false end.
Definition Egtb: bool := match Ecmp _ x y with Gt => true | _ => false end.
Definition Eleb: bool := match Ecmp _ x y with Gt => false | _ => true end.
Definition Egeb: bool := match Ecmp _ x y with Lt => false | _ => true end.
Proof with auto.
assert (Ecmp e x x = CompOpp (Ecmp e x x)).
apply Ecmp_sym.
destruct (Ecmp e x x); try discriminate...
Qed.

Lemma Ecmp_inv_sym x y c: Ecmp e x y <> CompOpp c -> Ecmp e y x <> c.