Logic Chapter Five
Next Chapter


One of the horrible things about symbolic logic is that there is no limit to how complicated the sentences can get. So far, we've dealt with sentences with one or two terms, but it's possible to have sentences with any number of terms. (Think of a finite number. You can have a sentence with that many terms.) Furthermore, because we have two operators, we have the possibility of not knowing exactly what an operator is supposed to apply to. Does the "~" in "~Ba ^ Cb" apply just to the "Ba" or to the whole of "Ba ^ Cb?" The way we settle this is to use brackets, like "(," ")," "[," "]," "{," "}," to make it clear how we are supposed to interpret combinations of statements.

The "~" in "~Ba ^ Bb" applies just to the "Ba," so it says King Arthur is not a bear but Bill Clinton is a bear.

The "~" in "~(Ba ^ Bb)" applies to the whole of "Ba ^ Cb" so what it says is that "it's not true that both King Arthur and Bill Clinton are bears. (It might be true that just one or the other is a bear, but it's certain that they're not both bears.)

For today, we'll just start thinking about sentences with a maximum of three or at the most four terms, and I'll give you the basic rules for figuring out which operator to evaluate first. When there's any chance of getting the evaluation order wrong, we add parentheses. The parenthese are just added to tell you in which order to apply the operators.

Check out this truth table.

Notice that on the left, the truth function (the little column of "T"s and "F"s) is under the " ^ " while on the right, the truth function is under the "~". This is because on the left the carat is the main operator (making that statement a conjunction) while on the right the tilde is the main operator (making that statement a negation). Then notice that on the left the tilde just modifies the "P" while on the right, the tilde negates the whole of "P ^ Q."

For practice, copy this diagram out twice:       

In the first copy, fill in "a" and "b" in such a way as to make ~Ba ^ Cb true. (Answer)

In the second copy, fill in "a" and "b" in such a way as to make ~(Ba  ^ Cb) false. (Answer)

The first "ordering" rule you should learn is what I call the "Happy Snake Rule." If there's a tilde "~" right up against the side of some term, like a snake biting some guy in the butt, then the combination of that tilde and that term gets evaluated first, but if the snake is frustrated by a parenthesis, which is like a shield getting in the way, then whatever's inside is "deeper" than the tilde, and so has to be elvaluated before we can get to the tilde. So if we're working on "Tg v
~Wh," we start by evaluating ~Wh. But if we're working on ~(Tl v Vm) that snake's gonna have to wait until whatever's inside those parentheses has been evaluated.

The second rule is the "Dig Deep Rule." This says that operators that are deeper inside nests of parentheses get evaluated before operators that are not so deep. This means that if we were working on "Th v (Ug ^ (Vf v We))," we would start by evaluating "Vf v We." By the same token, we would start our work on "((Tm ^ Ul) v Vj) ^ Wi" by evaluating "Tm ^ Ul" because it's operator is deepest in the nest of parentheses. Finally, we would approach "(Tb ^Ua) v (Un ^ Wn)" by evaluating both "Tb ^Ua" and "Un ^ Wn" before going on to evaluate that last "v ."

For convenience, the operator we would evaluate last is always called the main operator. In the following sentences, the main operator is marked in red.

Ta ^ ~Wb Tg v~Wh (Tn ^ Vn) ^ Um Ve ^ (Ud v Wc) (Tf v Ue) v Wd ((Tm ^ Ul) v Vj) ^ Wi
~Vc ^ Vd ~Ui v Uj Wl ^ (Tj ^ Vi) (Wm v Vl) ^ Wj Tc v (Ub v Va) Th v (Ug ^ (Vf v We))
~ (Te ^ Wf ) ~ (Tl v Vm) (Uh ^ Vg) v Uf Ti v (Vh ^ Wg) (Tb ^ Ua) v (Un ^ Wn) (Td v Uc) ^ (Vb v Wa)

So, how do we determine the truth function of something like "Ta ^ ~Wb?" Well, first we set up the truth table and evlauate "~Wb" all on it's lonesome.

Then, we ignore Wb, and evaluate "Ta ^ ~Wb" based just on the values of "Ta" and "~Wb."

And that's it for "Ta ^ ~Wb

How would we do "~(Te ^ Wf )?" Well, since the snake can't get in to bite "Te," it will have to wait until we evaluate "Te ^ Wf " on it's own. And here it is.

Once that's done, we ignore the basic terms and evaluate the negation of "Te ^ Wf," like so:

Now let's do something more complicated "((Ma ^ Ne) v Ma) v Ne" As always, we start with the deepest operator.

Then we do the next deepest. Remember, we ignore the "Ne," and evaluate the "v " in "(Ma ^ Ne) v Ma."

Finally, we evaluate the main operator.

And we're done. How about something even more complicated? How about "(Td v Uc) ^ (Vb v Wa)?" Let's lay out the basic truth table!

Aiiiiiiiiiiiiiiiieeeeeeeeeeeeeeeeeeeeeeee! What have I done? Okay, well, hmmmm.... I know, let's do the truth tables for the two deepest operators:


Okay, now copy those over to the big one. Notice that "Td v Uc" gets spread out to four times its original size, while "Vb v Wa" gets repeated four times.

Well, that wasn't so bad. Let's cut off the original four columns and evaluate the main operator.

Well, that was tedious. Let's do something more interesting. I know, we'll apply your new-found skills to arguments! To keep things simple, we'll stick to two-term arguments for a while. We'll start with an argument that has a premise we've seen before.

Ta ^ ~Wb

As before, we follow the happy snake rule:

Notice that we can't eliminate any lines on the basis of "~Wb." Why not? It's because "~Wb" isn't a premise. But we do use the "~Wb" column to fill in the truth-function for the first premise.

And that truth function lets us eliminate three rows!

Next, we again use the happy snake rule, which says we can evaluate the next premise.

Since "~Ta" is a premise, and it is has a value of "F" on line two, we can we use it to eliminate that last line. And since it is the last line, we've just proved the argument valid!


Now, what if we had a similar argument, with a "v " instead of a "^"? Let's see what happens:

Lt v ~Mr

Well, the initial truth table is very similar.

But the truth function for the new first premise is very different.

And it only allows us to eliminate one row.

Lets write in the second premise.

Which allows us to eliminate two more rows.

Now write in the truth function for the conclusion.

Which has an "F" on line 4, making the argument invalid.

INVALID (by line 4.)

Finally, let's do a slightly trickier one.

~(Un ^ Wn)

Here's the truth function for the only premise.

Which allows us to eliminate two rows.

Since "Un ^ Wn" is inside the parentheses, the snake is unhappy, and we evaluate "Un ^ Wn" first as an intermediate step on the way to the conclusion.

Now we can get the truth function for the conclusion by negating the truth function for "Un ^ Wn".

Since the conclusion is true on the two lines we have not eliminated, the argument is valid.


For the next example, I'm going to make you work your own way through the proof. Here's the argument.

Vj ^ ~Wi

First, pick the truth table with the truth function that's right for the premise, and click on that truth table.

Here's another one.

~(Tl v Vm)


Click on the correct truth table to get this proof started.

Here are some to work through on your own.

practice 5. Use your own paper or the answer sheet at practice. For each of the following arguments, prove it valid or invalid by truth table.



~Vb v  Wa
~Vc ^ Vd


Vf v ~We



Tg v ~Wh


Copyright 2007 by Martin C. Young

Next Chapter

This Site is Proudly Hosted By:
WEBster Computing Services