generalized lemma: subst_shift_cancel_ty