Proof with try subst; repeat inv_step; eauto 10 using step.
intros Hst1. revert t2. induction Hst1; intros t2 Ht2...
- destruct (IHHst1 _ H2)... destruct H as (? & [])...
- destruct (IHHst1 _ H2)... destruct H as (? & [])...
Qed.

(* Specifications: *)
Lemma parametric_semi_confluence s t1 t2 n :
s ≻ t1 -> s ≻^n t2 -> exists k l u, k <= n /\ l <= 1 /\ t1 ≻^k u /\ t2 ≻^l u /\ 1 + k = n + l.
Lemma parametric_confluence s t1 t2 m n :
s ≻^m t1 -> s ≻^n t2 -> exists k l u, k <= n /\ l <= m /\ t1 ≻^k u /\ t2 ≻^l u /\ m + k = n + l.
Lemma confluence s t1 t2 : s ≻* t1 -> s ≻* t2 -> exists u, t1 ≻*u /\ t2 ≻* u.
Definition evaluatesin n s t := (s ≻^n t /\ lam t).