Recall that a valid argument is one whose conclusion can’t possibly be false while all the premises are true. In other words, a valid argument is an argument that has no counterexamples: there are no possible combinations of truth values that make all of the argument’s premises true while also making its conclusion false.

As we have seen, one way to test an argument’s validity is to construct a truth table, which allows us to examine *all* of the possible truth value combinations and see whether there are any counterexamples. But constructing a truth table is tedious when an argument has more than two or three sentence letters, because the number of rows grows exponentially as the number of sentence letters increases. For example, an argument with 6 letters requires a truth table with 64 rows, and an argument with 7 letters requires a truth table with 128 rows! For obvious reasons, the truth table test of validity isn’t always practical.

Fortunately, there’s an easier way. The truth assignment testI borrow this name from Harry Gensler, who introduces the truth assignment test in his excellent book *Introduction to Logic, Second Edition*, pp. 133-135. He sets up the truth assignment test in a slightly different way, but the basic principle is the same. allows us to determine whether an argument is valid much more efficiently. Rather than constructing a truth table and examining all of the possible truth value combinations, we instead consider this question:

*What truth values must the component propositions have in order to produce a counterexample? *

To answer this question, we begin by assuming that there is a counterexample, then we try to find it by calculating the values of the sentence letters from the assumed values of the argument’s premises and conclusion. In other words, we use the following strategy:

- Assume that the premises are all true and the conclusion is false.
- Based on that assumption, calculate the values of as many component propositions as possible.
- If the values of some sentence letters cannot be calculated, try all possible values for those letters to see whether any combination of truth values yields a counterexample to the argument.

If we are able to assign values to all of the sentence letters while keeping the premises true and the conclusion false, then we have found a counterexample and the argument is *invalid*. However, we may find that when all of the sentence letters have been calculated, some of the premises are no longer true or the conclusion is no longer false. If that happens, we can conclude that there is no counterexample and the argument is *valid*.

Before conducting the truth assignment test, it is helpful to arrange the premises and conclusion horizontally so that the truth values can be written beneath the connectives and sentence letters, as shown in the example below. And here’s another piece of advice. When calculating the values of component propositions, start with the propositions for which there are the fewest possible ways of assigning values to the components. For example, if any of the premises is a conjunction, that would be a good place to start, because there is only one possible way for a conjunction to be true (namely if both conjuncts are true). Similarly, if the conclusion is a disjunction, that would be a good place to start, because there is only one possible way for a disjunction to be false (namely if both disjuncts are false).

Consider the following argument:

(A ⊃ (B ≡ C)) |

~(C • ~D) |

(~D • B) |

∴ (~A ∨ E) |

Step 1 of the truth assignment test is to assume that the premises are true and the conclusion is false. We represent this assumption by writing “1” beneath the main connective of each premise and “0” beneath the main connective of the conclusion, like this:

( | A | ⊃ | ( | B | ≡ | C | )) | ~ | ( | C | • | ~ | D | ) ( | ~ | D | • | B | ) /∴ ( | ~ | A | ∨ | E | ) |

1 | 1 | 1 | 0 |

Step 2 is to calculate the values of as many component propositions as possible. As noted above, we should start with the propositions for which there are the fewest possible ways of assigning values to the components. There are three ways for the “⊃” in the first premise to be true, so we’ll skip over that for now. There is only one way for the “~” in the second premise to be true: the “•” must be false. Similarly, there is only one way for the “•” in the third premise to be true, namely if both conjuncts are true. And there is only one way for the “∨” in the conclusion to be false, namely if both disjuncts are false. So let’s fill in those truth values:

( | A | ⊃ | ( | B | ≡ | C | )) | ~ | ( | C | • | ~ | D | ) ( | ~ | D | • | B | ) /∴ ( | ~ | A | ∨ | E | ) |

1 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 0 |

So far, we have determined that B is true (in the third premise) and E is false (in the conclusion). We can also see that D must be false (since ~D is true in the third premise), and A must be true (since ~A is false in the conclusion). This means that if there is a counterexample to the argument, then A and B must be true in that counterexample, and D and E must be false in that counterexample. So the counterexample, if there is one, must look like this:

( | A | ⊃ | ( | B | ≡ | C | )) | ~ | ( | C | • | ~ | D | ) ( | ~ | D | • | B | ) /∴ ( | ~ | A | ∨ | E | ) |

1 | 1 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |

Only one sentence letter remains to be calculated: the letter “C.” The first premise implies that C must be true. (The “⊃” is true and has a true antecedent, so the “≡” must be true; and since B is true, C must be true too.) However, the second premise implies that C must be false! We can’t have it both ways. If C is true, then the second premise isn’t true anymore; but if C is false, then the first premise isn’t true anymore:

( | A | ⊃ | ( | B | ≡ | C | )) | ~ | ( | C | • | ~ | D | ) ( | ~ | D | • | B | ) /∴ ( | ~ | A | ∨ | E | ) |

1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | |||||||

1 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |

So, there is no way to assign truth values to all of the sentence letters while keeping *all* of the premises true (and the conclusion false). In other words, there is *no counterexample*, and the argument is *valid*.

Sometimes we are unable to determine whether an argument is valid or invalid in step 2 of the truth assignment test, because there are some sentence letters whose values cannot be calculated. When that happens, we must try all of the possibilities for those remaining letters to see whether any combination of truth values yields a counterexample to the argument. (This is step 3 of the truth assignment test.) If any of those combinations yields a counterexample, then the argument is invalid; otherwise it is valid. Here’s an example:

Consider the following argument:

(P ∨ ~Q) |

~(P • Q) |

(R ⊃ (P ≡ Q)) |

∴ ~R |

We begin by assuming that the premises are true and the conclusion is false:

( | P | ∨ | ~ | Q | ) | ~ | ( | P | • | Q | ) | ( | R | ⊃ | ( | P | ≡ | Q | )) | /∴ | ~ | R |

1 | 1 | 1 | 0 |

Given these assumptions, the conjunction in the second premise must be false; and since ~R is false (in the conclusion), R must be true. So let’s fill in those truth values:

( | P | ∨ | ~ | Q | ) | ~ | ( | P | • | Q | ) | ( | R | ⊃ | ( | P | ≡ | Q | )) | /∴ | ~ | R |

1 | 1 | 0 | 1 | 1 | 0 | 1 |

In the third premise, both the conditional and its antecedent are true, so the consequent must be true as well:

( | P | ∨ | ~ | Q | ) | ~ | ( | P | • | Q | ) | ( | R | ⊃ | ( | P | ≡ | Q | )) | /∴ | ~ | R |

1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 |

At this point, we can’t determine the values of any more sentence letters, so we’ll have to try all of the combinations that are possible given the values we’ve determined so far. As always, we start with the propositions for which there are the fewest possibilities. There are three ways for the disjunction in the first premise to be true, and there are three ways for the conjunction in the second premise to be false. But there are only two ways for the biconditional in the third premise to be true—namely, either P and Q are both true, or P and Q are both false. So let’s examine those two possibilities:

( | P | ∨ | ~ | Q | ) | ~ | ( | P | • | Q | ) | ( | R | ⊃ | ( | P | ≡ | Q | )) | /∴ | ~ | R |

1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | ||||||||

0 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 1 |

Notice that when P and Q are both true, the conjunction in the second premise is no longer false, and hence the negation is no longer true. So, that combination of truth values does not provide a counterexample. On the other hand, when P and Q are both false, all three premises remain true, and the conclusion remains false. So we have found a counterexample: the premises are all true and the conclusion is false in the row where P is false, Q is false, and R is true. (In that row, the truth values of the main connectives have been highlighted to make the counterexample more obvious.) Since there is a counterexample, the argument is *invalid*.

I demonstrate the truth assignment test with a couple of additional examples in the YouTube video shown here.

The truth assignment test is more efficient than the truth-table test, especially when an argument contains many sentence letters. The argument above had 3 sentence letters, so its truth table would have had 8 rows. For arguments that have more than three sentence letters, truth tables are even more cumbersome. If an argument contains six sentence letters, for instance, its truth table would require 64 rows. In cases like that, the truth assignment method can save us a lot of work!