(* Need the mutual induction scheme for the next lemma! *)
Scheme nom_val_ind' := Induction for nom_val Sort Prop
 with  nom_env_ind' := Induction for nom_env Sort Prop.Combined Scheme nom_mutual from nom_val_ind', nom_env_ind'.

(* Specifications: *)
Lemma nom_val_to_exp_lc_mutual : (forall v, lc_exp (nom_val_to_exp v)) /\ (forall rho, forall e, lc_exp e -> lc_exp (nom_envsubst rho e)).
Lemma nom_val_to_exp_lc : forall v, lc_exp (nom_val_to_exp v).
Lemma nom_envsubst_lc : (forall rho, forall e, lc_exp e -> lc_exp (nom_envsubst rho e)).
Lemma nom_soundness_val : forall v, bigstep (nom_val_to_exp v) (nom_val_to_exp v).
Lemma completeness : forall e v rho, bigstep (nom_envsubst rho (nom_to_exp e)) (nom_val_to_exp v) -> exists n, nom_interp n e rho = val _ v.