3.7: Truth Tables
Students will be able to
- Translate premises and conclusions into symbols
- Use truth tables to organize simple and compound statements
- Use symbols to express DeMorgan's Laws
Before we focus on truth tables, we’re going to introduce some symbols that are commonly used for and, or, and not.
The symbol ⋀ is used for and: A and B is notated A ⋀ B
The symbol ⋁ is used for or: A or B is notated A ⋁ B
The symbol ~ is used for not: not A is notated ~A
You can remember the first two symbols by relating them to the shapes for the union and intersection. A ⋀ B would be the elements that exist in both sets, in A ⋂ B. Likewise, A ⋁ B would be the elements that exist in either set, in A ⋃ B. When we are working with sets, we use the rounded version of the symbols; when we are working with statements, we use the pointy version.
Translate each statement into symbolic notation. Let P represent “I like Pepsi” and let C represent “I like Coke”.
- I like Pepsi or I like Coke.
- I like Pepsi and I like Coke.
- I do not like Pepsi.
- It is not the case that I like Pepsi or Coke.
- I like Pepsi and I do not like Coke.
Solution
- P ⋁ C
- P ⋀ C
- ~P
- ~(P ⋁ C)
- P ⋀ ~C
As you can see, we can use parentheses to organize more complicated statements.
Since premises and conclusions can be quite complicated, a useful tool for organizing everything is a truth table.
A table showing what the resulting truth value of a complex statement is for all the possible truth values for the simple statements.
Suppose you’re picking out a new couch, and your significant other says “get a sectional or something with a chaise”.
Solution
This is a complex statement made of two simpler conditions: “is a sectional”, and “has a chaise”. For simplicity, let’s use S to designate “is a sectional”, and C to designate “has a chaise”.
A truth table for this situation would look like this:
|
S |
C |
S or C |
|---|---|---|
|
T |
T |
T |
|
T |
F |
T |
|
F |
T |
T |
|
F |
F |
F |
In the table, T is used for true, and F for false. In the first row, if S is true and C is also true, then the complex statement “S or C” is true. This would be a sectional that also has a chaise, which meets our desire. (Remember that or in logic is not exclusive; if the couch has both features, it meets the condition.)
In the previous example about the couch, the truth table was really just summarizing what we already know about how the or statement work. The truth tables for the basic and, or, and not statements are shown below.
|
A |
B |
A ⋀ B |
|---|---|---|
|
T |
T |
T |
|
T |
F |
F |
|
F |
T |
F |
|
F |
F |
F |
|
A |
B |
A ⋁ B |
|---|---|---|
|
T |
T |
T |
|
T |
F |
T |
|
F |
T |
T |
|
F |
F |
F |
|
A |
~A |
|---|---|
|
T |
F |
|
F |
T |
Truth tables really become useful when we analyze more complex statements.
When we create the truth table, we need to list all the possible truth-value combinations for A and B. Notice how the first column contains 2 Ts followed by 2 Fs, and the second column alternates T, F, T, F. This pattern ensures that all 4 combinations are considered.
|
A |
B |
|---|---|
|
T |
T |
|
T |
F |
|
F |
T |
|
F |
F |
After creating columns with those initial values, we create a third column for the expression ~B. Now we will temporarily ignore the column for A and write the truth values for ~B.
|
A |
B |
~B |
|---|---|---|
|
T |
T |
F |
|
T |
F |
T |
|
F |
T |
F |
|
F |
F |
T |
Next, we can find the truth values of A ⋁ ~ B , using the first and third columns.
|
A |
B |
~B |
A ⋁ ~B |
|---|---|---|---|
|
T |
T |
F |
T |
|
T |
F |
T |
T |
|
F |
T |
F |
F |
|
F |
F |
T |
T |
The truth table shows that A ⋁ ~B is true in three cases and false in one case. If you’re wondering what the point of this is, suppose it is the last day of the baseball season and two teams, who are not playing each other, are competing for the final playoff spot. Anaheim will make the playoffs if it wins its game or if Boston does not win its game. (Anaheim owns the tie-breaker; if both teams win, or if both teams lose, then Anaheim gets the playoff spot.) If A = Anaheim wins its game and B = Boston wins its game, then A ⋁ ~B represents the situation “Anaheim wins its game or Boston does not win its game”. The truth table shows us the different scenarios related to Anaheim making the playoffs. In the first row, Anaheim wins its game and Boston wins its game, so it is true that Anaheim makes the playoffs. In the second row, Anaheim wins and Boston does not win, so it is true that Anaheim makes the playoffs. In the third row, Anaheim does not win its game and Boston wins its game, so it is false that Anaheim makes the playoffs. In the fourth row, Anaheim does not win and Boston does not win, so it is true that Anaheim makes the playoffs.
Create a truth table for the statement A ⋀ ~(B ⋁ C).
Solution
It helps to work from the inside out when creating a truth table, and to create columns in the table for intermediate operations. We start by listing all the possible truth value combinations for A, B, and C. Notice how the first column contains 4 Ts followed by 4 Fs, the second column contains 2 Ts, 2 Fs, then repeats, and the last column alternates T, F, T, F... This pattern ensures that all 8 combinations are considered. After creating columns with those initial values, we create a fourth column for the innermost expression, B ⋁ C. Now we will temporarily ignore the column for A and focus on B and C, writing the truth values for B ⋁ C.
|
A |
B |
C |
B ⋁ C |
|---|---|---|---|
|
T |
T |
T |
T |
|
T |
T |
F |
T |
|
T |
F |
T |
T |
|
T |
F |
F |
F |
|
F |
T |
T |
T |
|
F |
T |
F |
T |
|
F |
F |
T |
T |
|
F |
F |
F |
F |
|
A |
B |
C |
|---|---|---|
|
T |
T |
T |
|
T |
T |
F |
|
T |
F |
T |
|
T |
F |
F |
|
F |
T |
T |
|
F |
T |
F |
|
F |
F |
T |
|
F |
F |
F |
Next, we can find the negation of B ⋁ C, working off the B ⋁ C column we just created. (Ignore the first three columns and simply negate the values in the B ⋁ C column.)
|
A |
B |
C |
B ⋁ C |
~(B ⋁ C) |
|---|---|---|---|---|
|
T |
T |
T |
T |
F |
|
T |
T |
F |
T |
F |
|
T |
F |
T |
T |
F |
|
T |
F |
F |
F |
T |
|
F |
T |
T |
T |
F |
|
F |
T |
F |
T |
F |
|
F |
F |
T |
T |
F |
|
F |
F |
F |
F |
T |
Finally, we find the values of A and ~(B ⋁ C). (Ignore the second, third, and fourth columns.)
|
A |
B |
C |
B ⋁ C |
~(B ⋁ C) |
A ⋀ ~(B ⋁ C) |
|---|---|---|---|---|---|
|
T |
T |
T |
T |
F |
F |
|
T |
T |
F |
T |
F |
F |
|
T |
F |
T |
T |
F |
F |
|
T |
F |
F |
F |
T |
T |
|
F |
T |
T |
T |
F |
F |
|
F |
T |
F |
T |
F |
F |
|
F |
F |
T |
T |
F |
F |
|
F |
F |
F |
F |
T |
F |
It turns out that this complex expression is true in only one case: when A is true, B is false, and C is false. To illustrate this situation, suppose that Anaheim will make the playoffs if: (1) Anaheim wins, and (2) neither Boston nor Cleveland wins. TFF is the only scenario in which Anaheim will make the playoffs.
Truth Tables: Conditional, Biconditional
We discussed conditional statements earlier, in which we take an action based on the value of the condition. We are now going to look at another version of a conditional, sometimes called an implication, which states that the second part must logically follow from the first.
A conditional is a logical compound statement in which a statement p, called the antecedent, implies a statement q, called the consequent.
A conditional is written as p → q and is translated as “if p, then q”.
The English statement “If it is raining, then there are clouds is the sky” is a conditional statement. It makes sense because if the antecedent “it is raining” is true, then the consequent “there are clouds in the sky” must also be true.
Notice that the statement tells us nothing of what to expect if it is not raining; there might be clouds in the sky, or there might not. If the antecedent is false, then the consequent becomes irrelevant.
Suppose you order a team jersey online on Tuesday and want to receive it by Friday so you can wear it to Saturday’s game. The website says that if you pay for expedited shipping, you will receive the jersey by Friday. In what situation is the website telling a lie?
Solution
There are four possible outcomes:
1) You pay for expedited shipping and receive the jersey by Friday
2) You pay for expedited shipping and don’t receive the jersey by Friday
3) You don’t pay for expedited shipping and receive the jersey by Friday
4) You don’t pay for expedited shipping and don’t receive the jersey by Friday
Only one of these outcomes proves that the website was lying: the second outcome in which you pay for expedited shipping but don’t receive the jersey by Friday. The first outcome is exactly what was promised, so there’s no problem with that. The third outcome is not a lie because the website never said what would happen if you didn’t pay for expedited shipping; maybe the jersey would arrive by Friday whether you paid for expedited shipping or not. The fourth outcome is not a lie because, again, the website didn’t make any promises about when the jersey would arrive if you didn’t pay for expedited shipping.
It may seem strange that the third outcome in the previous example, in which the first part is false but the second part is true, is not a lie. Remember, though, that if the antecedent is false, we cannot make any judgment about the consequent. The website never said that paying for expedited shipping was the only way to receive the jersey by Friday.
A friend tells you “If you upload that picture to Facebook, you’ll lose your job.” Under what conditions can you say that your friend was wrong?
Solution
There are four possible outcomes:
1) You upload the picture and lose your job
2) You upload the picture and don’t lose your job
3) You don’t upload the picture and lose your job
4) You don’t upload the picture and don’t lose your job
There is only one possible case in which you can say your friend was wrong: the second outcome in which you upload the picture but still keep your job. In the last two cases, your friend didn’t say anything about what would happen if you didn’t upload the picture, so you can’t say that their statement was wrong. Even if you didn’t upload the picture and lost your job anyway, your friend never said that you were guaranteed to keep your job if you didn’t upload the picture; you might lose your job for missing a shift or punching your boss instead.
In traditional logic, a conditional is considered true as long as there are no cases in which the antecedent is true and the consequent is false.
| p | q | p → q |
|---|---|---|
| T | T | T |
| T | F | F |
| F | T | T |
| F | F | T |
Again, if the antecedent p is false, we cannot prove that the statement is a lie, so the result of the third and fourth rows is true.
Construct a truth table for the statement (m ⋀ ~p) → r
Solution
We start by constructing a truth table with 8 rows to cover all possible scenarios. Next, we can focus on the antecedent, m ⋀ ~p.
|
m |
p |
r |
|---|---|---|
|
T |
T |
T |
|
T |
T |
F |
|
T |
F |
T |
|
T |
F |
F |
|
F |
T |
T |
|
F |
T |
F |
|
F |
F |
T |
|
F |
F |
F |
|
m |
p |
r |
~p |
|---|---|---|---|
|
T |
T |
T |
F |
|
T |
T |
F |
F |
|
T |
F |
T |
T |
|
T |
F |
F |
T |
|
F |
T |
T |
F |
|
F |
T |
F |
F |
|
F |
F |
T |
T |
|
F |
F |
F |
T |
|
m |
p |
r |
~p |
m ⋀ ~p |
|---|---|---|---|---|
|
T |
T |
T |
F |
F |
|
T |
T |
F |
F |
F |
|
T |
F |
T |
T |
T |
|
T |
F |
F |
T |
T |
|
F |
T |
T |
F |
F |
|
F |
T |
F |
F |
F |
|
F |
F |
T |
T |
F |
|
F |
F |
F |
T |
F |
Now we can create a column for the conditional. Because it can be confusing to keep track of all the Ts and Fs , why don’t we copy the column for r to the right of the column for m ⋀ ~ p ? This makes it a lot easier to read the conditional from left to right.
|
m |
p |
r |
~p |
m ⋀ ~p |
r |
(m ⋀ ~p) → r |
|---|---|---|---|---|---|---|
|
T |
T |
T |
F |
F |
T |
T |
|
T |
T |
F |
F |
F |
F |
T |
|
T |
F |
T |
T |
T |
T |
T |
|
T |
F |
F |
T |
T |
F |
F |
|
F |
T |
T |
F |
F |
T |
T |
|
F |
T |
F |
F |
F |
F |
T |
|
F |
F |
T |
T |
F |
T |
T |
|
F |
F |
F |
T |
F |
F |
T |
When m is true, p is false, and r is false—the fourth row of the table—then the antecedent m ⋀ ~p will be true but the consequent false, resulting in an invalid conditional; every other case gives a valid conditional.
If you want a real-life situation that could be modeled by (m ⋀ ~p) → r, consider this: let m = we order meatballs, p = we order pasta, and r = Rob is happy. The statement (m ⋀ ~p) → r is “if we order meatballs and don’t order pasta, then Rob is happy”. If m is true (we order meatballs), p is false (we don’t order pasta), and r is false (Rob is not happy), then the statement is false, because we satisfied the antecedent but Rob did not satisfy the consequent.
For any conditional, there are three related statements, the converse, the inverse, and the contrapositive.
The original conditional is “if p, then q” p → q
The converse is “if q, then p” q → p
The inverse is “if not p, then not q” ~p →~ q
The contrapositive is “if not q, then not p” q → ~p
Consider again the conditional “If it is raining, then there are clouds in the sky.” It seems reasonable to assume that this is true.
The converse would be “If there are clouds in the sky, then it is raining.” This is not always true.
The inverse would be “If it is not raining, then there are not clouds in the sky.” Likewise, this is not always true.
The contrapositive would be “If there are not clouds in the sky, then it is not raining.” This statement is true, and is equivalent to the original conditional.
Looking at truth tables, we can see that the original conditional and the contrapositive are logically equivalent, and that the converse and inverse are logically equivalent.
|
Conditional |
Converse |
Inverse |
Contrapositive |
||
|---|---|---|---|---|---|
|
p |
q |
p → q |
q → p |
~p → ~q |
~q → ~p |
|
T |
T |
T |
T |
T |
T |
|
T |
F |
F |
T |
T |
F |
|
F |
T |
T |
F |
F |
T |
|
F |
F |
T |
T |
T |
T |
A conditional statement and its contrapositive are logically equivalent.
The converse and inverse of a conditional statement are logically equivalent.
In other words, the original statement and the contrapositive must agree with each other; they must both be true, or they must both be false. Similarly, the converse and the inverse must agree with each other; they must both be true, or they must both be false.
Be aware that symbolic logic cannot represent the English language perfectly. For example, we may need to change the verb tense to show that one thing occurred before another.
Suppose this statement is true: “If I eat this giant cookie, then I will feel sick.” Which of the following statements must also be true?
- If I feel sick, then I ate that giant cookie.
- If I don’t eat this giant cookie, then I won’t feel sick.
- If I don’t feel sick, then I didn’t eat that giant cookie.
Solution
- This is the converse, which is not necessarily true. I could feel sick for some other reason, such as drinking sour milk.
- This is the inverse, which is not necessarily true. Again, I could feel sick for some other reason; avoiding the cookie doesn’t guarantee that I won’t feel sick.
- This is the contrapositive, which is true, but we have to think somewhat backwards to explain it. If I ate the cookie, I would feel sick, but since I don’t feel sick, I must not have eaten the cookie.
Notice again that the original statement and the contrapositive have the same truth value (both are true), and the converse and the inverse have the same truth value (both are false).
The negation of a conditional statement is logically equivalent to a conjunction of the antecedent and the negation of the consequent.
~ (p → q) is equivalent to p ⋀ ~q
Which of the following statements is equivalent to the negation of “If you don’t grease the pan, then the food will stick to it”?
- I didn’t grease the pan and the food didn’t stick to it.
- I didn’t grease the pan and the food stuck to it.
- I greased the pan and the food didn’t stick to it.
Solution
- This is correct; it is the conjunction of the antecedent and the negation of the consequent. To disprove that not greasing the pan will cause the food to stick, I have to not grease the pan and have the food not stick.
- This is essentially the original statement with no negation; the “if…then” has been replaced by “and”.
- This essentially agrees with the original statement and cannot disprove it.
In everyday life, we often have a stronger meaning in mind when we use a conditional statement. Consider “If you submit your hours today, then you will be paid next Friday.” What the payroll rep really means is “If you submit your hours today, then you will be paid next Friday, and if you don’t submit your hours today, then you won’t be paid next Friday.” The conditional statement if t, then p also includes the inverse of the statement: if not t, then not p . A more compact way to express this statement is “You will be paid next Friday if and only if you submit your timesheet today.” A statement of this form is called a biconditional.
A biconditional is a logical conditional statement in which the antecedent and consequent are interchangeable.
A biconditional is written as p ↔ q and is translated as “p if and only if q”.
Because a biconditional statement p ↔ q is equivalent to (p → q) ⋀ (q → p), we may think of it as a conditional statement combined with its converse: if p, then q and if q, then p . The double-headed arrow shows that the conditional statement goes from left to right and from right to left. A biconditional is considered true as long as the antecedent and the consequent have the same truth value; that is, they are either both true or both false.
| p | q | p ↔ q |
|---|---|---|
| T | T | T |
| T | F | F |
| F | T | F |
| F | F | T |
Notice that the fourth row, where both components are false, is true; if you don’t submit your timesheet and you don’t get paid, the person from payroll told you the truth.
Suppose this statement is true: “The garbage truck comes down my street if and only if it is Thursday morning.” Which of the following statements could be true?
- It is noon on Thursday and the garbage truck did not come down my street this morning.
- It is Monday and the garbage truck is coming down my street.
- It is Wednesday at 11:59 PM and the garbage truck did not come down my street today.
Solution
- This cannot be true. This is like the second row of the truth table; it is true that I just experienced Thursday morning, but it is false that the garbage truck came.
- This cannot be true. This is like the third row of the truth table; it is false that it is Thursday, but it is true that the garbage truck came.
- This could be true. This is like the fourth row of the truth table; it is false that it is Thursday, but it is also false that the garbage truck came, so everything worked out like it should.
Create a truth table for the statement (A ⋁ B) ↔ ~C
Solution
Whenever we have three component statements, we start by listing all the possible truth value combinations for A, B, and C. After creating those three columns, we can create a fourth column for the antecedent, A ⋁ B. Now we will temporarily ignore the column for C and focus on A and B, writing the truth values for A ⋁ B.
|
A |
B |
C |
|---|---|---|
|
T |
T |
T |
|
T |
T |
F |
|
T |
F |
T |
|
T |
F |
F |
|
F |
T |
T |
|
F |
T |
F |
|
F |
F |
T |
|
F |
F |
F |
|
A |
B |
C |
A ⋁ B |
|---|---|---|---|
|
T |
T |
T |
T |
|
T |
T |
F |
T |
|
T |
F |
T |
T |
|
T |
F |
F |
T |
|
F |
T |
T |
T |
|
F |
T |
F |
T |
|
F |
F |
T |
F |
|
F |
F |
F |
F |
Next we can create a column for the negation of C. (Ignore the A ⋁ B column and simply negate the values in the C column.)
|
A |
B |
C |
A ⋁ B |
~C |
|---|---|---|---|---|
|
T |
T |
T |
T |
F |
|
T |
T |
F |
T |
T |
|
T |
F |
T |
T |
F |
|
T |
F |
F |
T |
T |
|
F |
T |
T |
T |
F |
|
F |
T |
F |
T |
T |
|
F |
F |
T |
F |
F |
|
F |
F |
F |
F |
T |
Finally, we find the truth values of (A ⋁ B) ↔ ~C. Remember, a biconditional is true when the truth value of the two parts match, but it is false when the truth values do not match.
|
A |
B |
C |
A ⋁ B |
~C |
(A ⋁ B) ↔ ~C |
|---|---|---|---|---|---|
|
T |
T |
T |
T |
F |
F |
|
T |
T |
F |
T |
T |
T |
|
T |
F |
T |
T |
F |
F |
|
T |
F |
F |
T |
T |
T |
|
F |
T |
T |
T |
F |
F |
|
F |
T |
F |
T |
T |
T |
|
F |
F |
T |
F |
F |
T |
|
F |
F |
F |
F |
T |
F |
To illustrate this situation, suppose your boss needs you to do either project A or project B (or both, if you have the time). If you do one of the projects, you will not get a crummy review (C is for crummy). So (A ⋁ B) ↔ ~C means “You will not get a crummy review if and only if you do project A or project B.” Looking at a few of the rows of the truth table, we can see how this works out. In the first row, A, B, and C are all true: you did both projects and got a crummy review, which is not what your boss told you would happen! That is why the final result of the first row is false. In the fourth row, A is true, B is false, and C is false: you did project A and did not get a crummy review. This is what your boss said would happen, so the final result of this row is true. And in the eighth row, A, B, and C are all false: you didn’t do either project and did not get a crummy review. This is not what your boss said would happen, so the final result of this row is false. (Even though you may be happy that your boss didn’t follow through on the threat, the truth table shows that your boss lied about what would happen.)
De Morgan’s Laws
A contemporary of Boole’s, Augustus De Morgan, formalized two rules of logic that had previously been known informally. They allow us to rewrite the negation of a conjunction as a disjunction, and vice-versa.
For example, suppose you want to schedule a meeting with two colleagues at 4:30 PM on Friday, and you need both of them to be available at that time. What situation would make it impossible to have the meeting? It is NOT the case that colleague a is available AND colleague b is available: ~ (a ∧ b). This situation is equivalent to either colleague a NOT being available OR colleague b NOT being available: ~a ∨ ~b.
The negation of a conjunction is equivalent to the disjunction of the negation of the statements making up the conjunction. To negate an “and” statement, negate each part and change the “and” to “or”.
~ (p ∧ q) is equivalent to ~ p ∧ ~q
The negation of a disjunction is equivalent to the conjunction of the negation of the statements making up the disjunction. To negate an “or” statement, negate each part and change the “or” to “and”.
~ (p ∨ q) is equivalent to ~p ∨ ~q
For Valentine’s Day, you did not get your sweetie flowers or candy. Which of the following statements is logically equivalent?
- You did not get them flowers or did not get them candy.
- You did not get them flowers and did not get them candy.
- You got them flowers or got them candy.
Solution
- This statement does not go far enough; it leaves open the possibility that you got them one of the two things.
- This statement is equivalent to the original; ~(f ˅ c) is equivalent to ~f ˄~c.
- This statement says that you got them something, but we know that you did not.
Contributors and Attributions
-
Saburo Matsumoto
CC-BY-4.0