termination proofs for elab_ definitions