Hint Extern 1 (lc_exp (abs _)) =>
let x1 := fresh in
pick_fresh x1;
apply (lc_abs_exists x1).

(* Specifications: *)
Lemma lc_body_exp_wrt_exp :
forall e1 e2,
body_exp_wrt_exp e1 ->
lc_exp e2 ->
lc_exp (open_exp_wrt_exp e1 e2).
Lemma lc_body_exp_wrt_exp :
forall e1 e2,
body_exp_wrt_exp e1 ->
lc_exp e2 ->
lc_exp (open_exp_wrt_exp e1 e2).