Added constraint checking using axiom-types