Equal Vs True False

Statements which make a proposition which when tested, do not hold up, as in 2+99=400, can nevertheless evaluate as FALSE.

One might accurately restate the above proposition in several ways

In constructing algorithms, this manipulation and evaluation can prove to be useful.


"Prior to the introduction of the boolean domain, people used what we now recognize as boolean expressions, but they were viewed as statement of facts — 3<4 — or as condition — x>0 — or as equation — x2+bx+c=0 — or as laws — (a+b)2= a2+2ab+b2 — , and things like 3>4, 2+2=5 and n=n+3 were considered "wrong". All this changed with the introduction of the two-element boolean domain {true, false} which provides the vocabulary needed to assign values to boolean expressions: 3<4 is a way for writing true, 3>4 is a way for writing false , whereas the value of x>0 depends on the value of x: for positive x it yields true, for nonpositive x it yields false. As syntactic units, boolean expressions existed after 1558, when Robert Recorde introduced the now familiar equality sign = as infix operator; they became "first-class citizens" in 1858, when George Boole introduced the possibility of evaluating them."

...

"In retrospect, one might be tempted to regard the introduction of something as simple as the boolean domain as a minor invention, but I think that that would be a grave mistake: it is a great invention because, being so simple, it is such a powerful simplifier. It is of the same level as the introduction of natural numbers, which enabled us to add 3 to 5, regardless of whether we are adding apples or pears."

"George Boole made a radical invention, so radical, in fact, that now, more than a century later, the scientific community has not absorbed it yet. (To stay with the metaphor: officially, boolean expressions may have reached the status of first-class citizens, in practice —because old habits and prejudices die hard— they are still the victims of discrimination.) Let me give you a few examples."

"In the programming language FORTRAN, as conceived a century after Boole published his invention, boolean expressions are allowed, but there are no boolean variables! Their introduction into programming had to wait until the design of ALGOL 60."

--Dijkstra (http://www.cs.utexas.edu/~EWD/transcriptions/EWD10xx/EWD1070.html)


CategoryAlgorithm


EditText of this page (last edited May 13, 2008) or FindPage with title or text search