7.
UNDERSTANDING TRUTH
FUNCTIONS
Being able to symbolize various things we say would not be particularly
useful unless we are able to do something with these expressions.
What we do with them is look to see how some in fact have the same
logical meaning as others and how some follow necessarily from one or
more others. In other words, we are interested in what we call equivalences (what happens
when we say that if it not's true that logic is both easy and fun then
what must be true is that logic is either not easy or not fun) and implications (if we know that
logic is fun unless it is not easy but we also know that it really is
easy, so we can say for sure that it has to be fun). These are
all examples of what we mean by arguments--using the truth of one or
more statements as support for saying that still another statement is
true).
All of this hinges on the idea that the statements we work with can be
thought of as definitely true or false, even if we might not know
which. Atomic statements, such as P or Sa, can be seen as always one
or the other (true or false) while the statements that result from
using our connectives (including quantifiers). such as P->Q and ~Sa and (x)Sx, have a truth value that
depends on the value of the atomic statements and how connectives are
used. We call these all these expressions truth-functional, and we
examine the possibiities in what are called truth tables.
The persistence of the word "truth" shows the historical grounding of
symbolic logic in how we work with language, even though in electronics
we also talk about truth tables to indicate current being on or
off. In part to show the more general applications of what we are
working with, I am going to use the numerals 1 and O in place of the
T's and F's typically found in a logic textbook. (Those
interested in the inner dynamics of what is going on might want to note
that in essence we are working with a mod 2 number system so that every
expression could also be rewritten as a formula in what we might call
an algebraic notation).
Let's look at a basic set of truth tables. If we have P and Q as example atomic statements
and we then use binary connectives (representing our "and" and "or" and
"if" and "if and only if"), we will have four lines that we need to
account for. We start with the fact that both P and Q can be either true or false
and then attempt to see what would have to be true from that point on.
P
|
Q
|
~P
|
~Q
|
P
& Q
|
P
v Q
|
P
-> Q
|
P
<-> Q
|
1
|
1
|
0
|
0
|
1
|
1
|
1
|
1
|
1
|
0
|
0
|
1
|
0
|
1
|
0
|
0
|
0
|
1
|
1
|
0
|
0
|
1
|
1
|
0
|
0
|
0
|
1
|
1
|
0
|
0
|
1
|
1
|
Note
that a
conjunction is true only when both parts are true, a disjunction is
false only when both parts are false,
a conditional is false only when
the lefthand part (the antecedent) is true and the righthand part (the
consequent) is false, a biconditional is false only when both parts are
different. You should memorize this basic chart, especially the
pattern for using our arrow.
(For those interested in the idea of
algebraic notation, note that conjunctions can be seen just as
multiplication of the original values (PQ), negations as adding 1
(P+1), disjunctions as multiplication plus addition (PQ+P+Q),
implications as multiplication plus the antecedent plus 1 (PQ+P+1), and
equivalences as addition plus 1 (P+Q+1). This is once used to
develop a program to evaluate mechanically the truth value of an
expression when working with a postfix literal notation. For more
see my web page on algebraic notation from an earlier version of
an online textbook.)
Obviously, we want to be able to use
any letter at all and also use expressions that
result from previous combinations of these letters (what are called substitution instances).
Supposing we need to determine the truth value of (P v Q) & ~R under all
conditions. Since we have three letters in use, we need to double
the number of lines in play. What we are going to do is work from
inside out until we arrive at our main connective. What we see
when we do is that the expression can be true only under three
conditions: (1) P
and Q are both true while R is false, (2) P is true while both Q and R are false. and (3) Q is true while both P and R are false. Do note that
it makes things easier to follow by first setting up the columns for
the variables in alphabetical order.
P
|
Q
|
R
|
(
P v Q)
|
&
|
~R
|
1
|
1
|
1
|
1
|
0
|
0
|
1
|
1
|
0
|
1
|
1
|
1
|
1
|
0
|
1
|
1
|
0
|
0
|
1
|
0
|
0
|
1
|
1
|
1
|
0
|
1
|
1
|
1
|
0
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
0
|
0
|
1
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
0
|
1
|
Truth tables for simple expressions
in predicate logic can be prepared in just the same way (imagine we had
(Fa v Gb) & ~Hc in
place of P and Q and R). When we bring in
quantifiers, however, things will become more complicated, and for this
reason we are going to employ a rather different technique as we go on
through the course.
EXERCISES
Complete the following table, filling in just for the main connectives.
Afterwards check your work against the answer key.
P
|
Q
|
R
|
P->(Q
& R)
|
P->(Q
v R)
|
(P
v Q) -> R
|
(P
&~Q) -> ~R
|
~P
& (Q <-> R)
|
(P
v~Q) v (R & ~P)
|
1
|
1
|
1
|
|
|
|
|
|
|
1
|
1
|
0
|
|
|
|
|
|
|
1
|
0
|
1
|
|
|
|
|
|
|
1
|
0
|
0
|
|
|
|
|
|
|
0
|
1
|
1
|
|
|
|
|
|
|
0
|
1
|
0
|
|
|
|
|
|
|
0
|
0
|
1
|
|
|
|
|
|
|
0
|
0
|
0
|
|
|
|
|
|
|