Rule of Equivalence, Equivalence Breakdown
The rule of equivalence is verified when the code behavior matches the original concept. This equivalence may break down in many cases. Integer overflow breaks the equivalence between the mathematical integer concept and the computerized approximation of the concept.
Many ways to break the equivalence have been given specific names, because they are very common:
- A domain error is a condition where code executes outside of the domain of equivalence, which is the domain where the concept and the implementation match. An integer overflow is an example of domain error.
- A concept cast is a rewrite of a concept as a different concept because the original concept cannot be represented by the tools. In C, using pointers for output arguments because C doesn't support output arguments explicitly is an example of concept cast.
- A priority inversion is a form of syntactic or semantic noise introduced by some language-enforced general rule. It is called a priority inversion because the language takes precedence over the concept. In Smalltalk, everything is an object, and that rule leads to the undesirable consequence that an expression like 2+3*5 doesn't obey the usual order of operations (Smalltalk interprets this as sending the message * to the number resulting from 2+3, which yields result 25 instead of 17).
Read more about this topic: Concept Programming
Famous quotes containing the words rule of, rule and/or breakdown:
“This administration is going to be a compassionate administration. We believe in the Golden Rule of doing unto others as you would have them do unto you.”
—Lyndon Baines Johnson (19081973)
“The principle of majority rule is the mildest form in which the force of numbers can be exercised. It is a pacific substitute for civil war in which the opposing armies are counted and the victory is awarded to the larger before any blood is shed. Except in the sacred tests of democracy and in the incantations of the orators, we hardly take the trouble to pretend that the rule of the majority is not at bottom a rule of force.”
—Walter Lippmann (18891974)
“With the breakdown of the traditional institutions which convey values, more of the burdens and responsibility for transmitting values fall upon parental shoulders, and it is getting harder all the time both to embody the virtues we hope to teach our children and to find for ourselves the ideals and values that will give our own lives purpose and direction.”
—Neil Kurshan (20th century)