Content #
-
antisymmetric If x < y is true, then y < x is false. If op(x,y) is true, then op(y,x) is false.
-
transitive If x < y is true and y < z is true, then x < z is true. If op(x,y) is true and op(y,z) is true, then op(x,z) is true.
-
irreflexive x < x is always false. op(x,x) is always false.
-
transitivity of equivalence If !(a<b) && !(b<a) is true and !(b<c) && !(c<b) is true then !(a<c) && !(c<a) is true. If op(a,b), op(b,a), op(b,c), and op(c,b) all yield false, then op(a,c) and op(c,a) yield false.
Transitivity of equivalence means that you have to distinguish between less and equal. A criterion such as operator <= does not fulfill this requirement.
Transitivity of equivalence is also used to check equivalence. That is, two elements are considered to be duplicates if neither is less than the other (or if both op(x,y) and op(y,x) are false).