intros.
case n.
exact
(forall p : 0 = n, {foo : unit | eq_rec _ (fun z => Terms z) Tnil _ p = H}).
intros.
exact
(forall p : S n0 = n,
{t : Term * Terms n0 |
eq_rec _ (fun z => Terms z) (Tcons n0 (fst t) (snd t)) _ p = H}).
Defined.

Lemma consTerms :
forall (n : nat) (x : Terms (S n)),
{t : Term * Terms n | Tcons n (fst t) (snd t) = x}.