Hint Resolve subst_exp_spec : lngen.
(* begin hide *)

(* Specifications: *)
Lemma subst_exp_subst_exp_mutual :
(forall e1 e2 e3 x2 x1,
x2 `notin` fv_exp e2 ->
x2 <> x1 ->
subst_exp e2 x1 (subst_exp e3 x2 e1) = subst_exp (subst_exp e2 x1 e3) x2 (subst_exp e2 x1 e1)).
Lemma subst_exp_subst_exp_mutual :
(forall e1 e2 e3 x2 x1,
x2 `notin` fv_exp e2 ->
x2 <> x1 ->
subst_exp e2 x1 (subst_exp e3 x2 e1) = subst_exp (subst_exp e2 x1 e3) x2 (subst_exp e2 x1 e1)).