strengthen the invariants maintained by our type theory