Corollary no_co_in_erased_tm : forall B g,
 open_tm_wrt_co (erase B) g = erase B.Definition close_tm_rec_erase_tm := fun x => proj1 (close_tm_erase_all x).Definition close_co_rec_erase_tm := fun x => proj1 (close_co_erase_all x).

Lemma subst_tm_erase : forall a x, (forall b, tm_subst_tm_tm (erase a) x (erase b) = erase (tm_subst_tm_tm a x b)) /\ (forall b, tm_subst_tm_brs (erase a) x (erase b) = erase (tm_subst_tm_brs a x b)) /\ (forall g:co, True) /\ (forall p, tm_subst_tm_constraint (erase a) x (erase p) = erase (tm_subst_tm_constraint a x p)).