Inductive order : Set :=
  | L : order
  | E : order
  | G : order.Inductive order : Set :=
  | L : order
  | E : order
  | G : order.Inductive order : Set :=
  | L : order
  | E : order
  | G : order.Inductive order : Set :=
  | L : order
  | E : order
  | G : order.Definition comparison (v1 v2 : nat) :=
  match Lt_eq_Gt v1 v2 return order with
  | First _ => L
  | Second _ => E
  | Third _ => G
  end.

Lemma inv_comparisonE : forall v1 v2 : nat, Compare_Nat.comparison v1 v2 = E -> v1 = v2.