# Practice Problems: Truth Tables

The following are some practice problems on truth tables; i.e., they
cover Part III of *forall x: Calgary*. For each problem, you can use
the "Check" button to see if you have filled in the truth table
correctly. You will get a message that says "Success!" if so, and
otherwise one that says "Something's not quite right!".

## Building Complete Truth Tables

Fill in the complete truth table for each of the following sentences. These all have just one logical operator, so this is just testing if you remember the characteristic truth tables for the connectives of TFL.

## Validity of arguments

An argument is *valid* in TFL if every valuation (row of the complete
truth table) makes one of the premises false or makes the conclusion
true. A *counterexample* is a valuation that shows that an argument is
not valid, i.e., a valuation where the premises are all true and the
conclusion is false. Here are two example truth tables to test your
understanding of this concept. First, fill in the table to compute the
truth value of each sentence on each valuation. The conclusion is the
sentence on the far right; it is separated from the premises by a ⊢
symbol, which basically here means the same as the therefore symbol ∴
in *forall x*. Underneath the ⊢ symbol, select ✓ if the valuation is
"good" (makes a premise false or the conclusion true), and select ✗ if
the valuation is "bad" (makes all premises true and the conclusion
false). If the argument is invalid, you should indicate this by
clicking the "Invalid!" button, and entering a combination of truth
values that shows that the argument is invalid (i.e., the T/F
combination underneath *G* and *H* in a line which you think shows
that the argument is invalid. You should see a
"Success!" message when you've picked a truth value combination which
actually shows that the argument is invalid, and "something's not
quite right" if you've not given a valuation that shows the argument
invalid if it is in fact invalid.

Here is a complex truth table to test for the validity of an argument. We'll fill in the truth values of the sentence letters for you in this one.

## Equivalence in TFL

Two sentences of TFL are *equivalent* if they agree in truth value on
every valuation. To test for equivalence, compute the truth values of
both sentences, and then compare them row-wise. If their truth values
match in every valuation, the two sentences are quivalent; if there is
a valuation in which they have different (opposite) truth values, they
are not. If you think the are not equivalent, click the
"Inequivalent!" button and enter the truth-value combination of the
valuation that shows that they are not.

You should have managed to figure out that the two sentences in III.9
are not equivalent, but the two sentences in III.10 are. The latter
equivalence is one of *De Morgan's Laws*.

## Tautologies

Some sentences of TFL are such that they end up being true whichever
truth values the sentence letters have. We call these *tautologies*.
For instance, *P* ∨ ¬*P* is true on every valuation. Give truth
tables and determine if the following sentences are tautologies. If
they aren't, click the "non-tautology" button and enter the valuation
that shows they are not tautologies.

There are interesting connections between valid arguments and
tautologies. For instance, modus ponens is the argument *P*, P \to Q
\therefore Q$. Now do the truth table for the "corresponding
conditional", (*P* ∧ (*P* → *Q*)) → *Q*:

You'll notice this is a tautology. This is no accident. Can you explain why?

Here's another example, requiring a larger truth table.

Weird, huh?

## Joint satisfiability

For some applications, it is important to know if there is a way some
sentences can all be made true at the same time. We say in such a case
that the sentences are *jointly satisfiable*. If you want to find all
such ways, you have to do a complete truth table. You should click the
"consistent" button and enter a valuation that makes all sentences
true, if they are jointly satisfiable.

However, if all you want is a single valuation on which all sentences are true, it is enough to construct a partial truth table (see Chapter 13). For instance, to find a valuation on which the sentences of the previous exercise are all true, complete the following partial truth table: