Hint Extern 1 (lc_co (g_AbsCong _ _ _)) =>
  let x1 := fresh in
  pick_fresh x1;
  apply (lc_g_AbsCong_exists x1).Hint Extern 1 (lc_co (g_CAbsCong _ _ _)) =>
  let c1 := fresh in
  pick_fresh c1;
  apply (lc_g_CAbsCong_exists c1).

Lemma tm_subst_tm_co_open_co_wrt_co : forall g2 a1 g1 x1, lc_tm a1 -> tm_subst_tm_co a1 x1 (open_co_wrt_co g2 g1) = open_co_wrt_co (tm_subst_tm_co a1 x1 g2) (tm_subst_tm_co a1 x1 g1).