The truth table for p \to q catches every beginner off-guard. Three of its four rows are \mathbf{T}, and only one row is \mathbf{F}. Why? The table looks wrong until you reframe the whole connective: p \to q is a promise. "If p happens, I promise that q will happen." A promise is broken only in one specific circumstance — when the condition is met and the guarantee is not delivered. In every other case, the promise is intact.
The setup: a real promise
Imagine your parent says: "If you finish your homework, I will take you to the ice-cream shop."
Two events are in play: p = "you finish your homework" and q = "we go for ice-cream." The statement is p \to q — the implication.
There are four possible worlds. Let us ask in each one: is your parent a liar?
World 1 — p true, q true. You finished your homework, and you went for ice-cream. Promise kept. p \to q is \mathbf{T}.
World 2 — p true, q false. You finished your homework, and yet your parent did not take you for ice-cream. Promise broken — your parent lied. p \to q is \mathbf{F}. This is the only row that makes an implication false.
World 3 — p false, q true. You did not finish your homework, but your parent took you for ice-cream anyway. Are they a liar? No — the promise was conditional. The condition was never triggered, so the promise could not be broken. The ice-cream is a generous bonus, not a liability. p \to q is \mathbf{T}.
World 4 — p false, q false. You did not finish your homework, and you did not go for ice-cream. Again, the condition was never triggered — the promise is vacuously intact. p \to q is \mathbf{T}.
The logic in one sentence
The implication p \to q is false only when p is true and q is false. In every other row, it is true.
That equivalence is the formal version of "the only way to break a promise is to trigger the condition and then fail to deliver." Read the right-hand side: "it is not the case that p holds and q fails." That is exactly one row — the \mathbf{F} row.
Why this confuses students
School logic often comes from a mathematical universe where "implication" is read as "causation" or "tight coupling" — if p is false, surely q must be false too, or there is no connection between them. The truth table refuses this reading. Implication in logic is not a claim that p causes q; it is a claim that if p holds, then q holds — nothing more.
Why mathematics insists on this: universal statements of the form "for all n, if n is prime then n > 1" must be unambiguously true or false. If implication turned false whenever p was false, then the claim "all unicorns have three horns" — a statement about an empty set — would be false, meaningless, or philosophically fraught. Logic cuts this knot by declaring it vacuously true: no unicorns means no counterexamples, so the promise stands.
The broken-promise test
For any implication question — "is p \to q true in this scenario?" — run this one-line test:
- Is p true? If no, p \to q is true (vacuous).
- If yes, is q true? If yes, p \to q is true (promise kept).
- If p is true and q is false, p \to q is false (promise broken).
Three seconds, no truth table needed.
A worked example: spot the broken promise
Statement: "If today is Sunday, then the bakery is closed."
Walk through the four cases over a week:
- Sunday, bakery closed: promise kept. Implication true.
- Sunday, bakery open: promise broken. Implication false for this Sunday — the shopkeeper lied.
- Monday, bakery closed: vacuous. The statement does not make a claim about Mondays; the bakery being closed on Monday does not make the Sunday-promise false.
- Monday, bakery open: vacuous. Same reason.
The only data that can falsify the statement is a Sunday when the bakery is found open. A Monday's hours cannot touch it. This is why mathematicians insist the other three rows are \mathbf{T} — anything else would corrupt the meaning of the original claim.
The vacuous-truth edge case
Students sometimes revolt at the idea that "if p is false, p \to q is automatically true." Try this example: "All students in an empty classroom are wearing hats." There are zero students. Are any of them hatless? No — there are none at all. So you cannot point to a counterexample, and the statement stands as vacuously true.
That same logic governs every row of the truth table where p is false: there is no world in which the promise is tested, so the promise cannot be broken.
The takeaway rule
Burn this into memory: the only way p \to q is false is p true and q false. Every other combination — \mathbf{T}\mathbf{T}, \mathbf{F}\mathbf{T}, \mathbf{F}\mathbf{F} — is \mathbf{T}. The table is not weird; it is precisely the table of a promise.
Related: Logic and Propositions · Relations · Set Operations · Proof by Contrapositive