(*
Definition word_inv : Elt -> Word :=
  [e:Elt]
    (<Word>Case e of
        (* natural *) [n:nat]nil
        (* couple  *) [a:Elt][b:Elt]nil
	(* up      *) [e:Ensf]nil
	(* word    *) [w:Word]w
    end ).
*)

Definition word_inv (e : Elt) : Word :=
  match e with
  | word w => w
  | _ => nil
  end.

(* Specifications: *)
Lemma add_add : forall (a b : Elt) (c d : Ensf), a = b -> c = d -> add a c = add b d.
Lemma couple_couple : forall a b c d : Elt, a = b -> c = d -> couple a c = couple b d.
Lemma word_word : forall a b : Word, a = b -> word a = word b.
Lemma word_word_inv : forall a b : Word, word a = word b -> a = b.