When updating the documentation, Peter N Lewis and I came to the problem how to describe the Boolean values `True' and `False'.
Peter suggested "true (conforming to reality) and false (different from reality", but I think "reality" is not a good term here (what do computer programs have to do with reality, anyway ;-).
Perhaps the only thing that can be said is that there are two values, true and false, and that one is the opposite of the other.
But they have some certain meanings as conditions in `if' and loops, and in expressions like `x = 2'.
Does anyone have a useful description without being selfreferential and without referring to "reality"?
BTW, ISO 10206 contains things like these:
: The Booleantype shall be an ordinaltype. The values : shall be the enumeration of truth values denoted by the required : constantidentifiers false and true, such that false is the predecessor : of true. The ordinal numbers of the truth values denoted by false and : true shall be the integer values 0 and 1 respectively.
: The operator in shall yield the value true if : the value of the operand of ordinaltype is a member of the value of the : settype; otherwise, it shall yield the value false.
: If the Booleanexpression of the ifstatement yields the value true, the : statement of the ifstatement shall be executed. If the Booleanexpression : yields the value false, the statement of the ifstatement shall not be : executed, and the statement of the elsepart, if any, shall be executed.
Frank