Give example of assertion and abstract data type
For illustration, consider Natural ADT whose carrier set is the set of non-negative integers and whose operations are the usual arithmetic operations. A precondition of the mod (%) operation is that modulus not be zero; if it's zero, result of the operation is undefined. A post condition of mod operation is that its result is between zero and modulus less one. An axiom of this ADT is that for all natural numbers a, b, and m > 0,
(a+b) % m = ((a % m) + b) % m