Track and verify required semantics

To future-proof forward compatibility, the default case should return `false` instead of throwing. Indeed, if your tools (v1.1) read a dependency manifest of v1.2, in which we have added compliant ArithmeticExceptions, then in all cases your Semantics do not guarantee the as-of-yet-unknown ArithmeticExceptions.