Definition Typing_weakening  := first  typing_weakening_mutual.
Definition PropWff_weakening := second typing_weakening_mutual.
Definition Iso_weakening     := third  typing_weakening_mutual.
Definition DefEq_weakening   := fourth typing_weakening_mutual.
End ext_weak_sig.
(**************** Ext Substitution ****************)
Module Type ext_subst_sig.
Include ext_weak_sig.

Axiom Typing_co_subst:
forall G D c a1 a2 A b B (H : Typing (c ~ (Co (Eq a1 a2 A)) ++ G) b B),
DefEq G D a1 a2 A ->
Typing G (co_subst_co_tm g_Triv c b) (co_subst_co_tm g_Triv c B).