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 co_subst_co_tm_degree_tm_wrt_co_co_subst_co_brs_degree_brs_wrt_co_co_subst_co_co_degree_co_wrt_co_co_subst_co_constraint_degree_constraint_wrt_co_mutual : (forall a1 g1 c1 n1, degree_tm_wrt_co n1 a1 -> degree_co_wrt_co n1 g1 -> degree_tm_wrt_co n1 (co_subst_co_tm g1 c1 a1)) /\ (forall brs1 g1 c1 n1, degree_brs_wrt_co n1 brs1 -> degree_co_wrt_co n1 g1 -> degree_brs_wrt_co n1 (co_subst_co_brs g1 c1 brs1)) /\ (forall g1 g2 c1 n1, degree_co_wrt_co n1 g1 -> degree_co_wrt_co n1 g2 -> degree_co_wrt_co n1 (co_subst_co_co g2 c1 g1)) /\ (forall phi1 g1 c1 n1, degree_constraint_wrt_co n1 phi1 -> degree_co_wrt_co n1 g1 -> degree_constraint_wrt_co n1 (co_subst_co_constraint g1 c1 phi1)).