// laws and rules · Fallacy
Fallacy of denying the antecedent_
Denying the antecedent is the other major formal fallacy tied to the conditional. It consists in believing that if the condition fails, the consequence must fail too. The truth table shows the reasoning is invalid: the formula is a contingency.
Example
((p ⇒ q) ∧ ¬p) ⇒ ¬q
What the variables mean
- ▸ p: “I study”
- ▸ q: “I pass”
In plain words
“If I study, I pass. I did not study. Therefore I did not pass.” False: the exam may have been easy enough to pass anyway.
Truth table
| p | q | p ⇒ q | ¬p | (p ⇒ q) ∧ ¬p | ¬q | ((p ⇒ q) ∧ ¬p) ⇒ ¬q★ |
|---|---|---|---|---|---|---|
| T | T | T | F | F | F | T |
| T | F | F | F | F | T | T |
| F | T | T | T | T | F | F |
| F | F | T | T | T | T | T |
Classification: Contingency · 4 rows
Statement of the fallacy
Premise 1: p ⇒ q. Premise 2: ¬p. Conclusion (invalid): ¬q. As a single formula, ((p ⇒ q) ∧ ¬p) ⇒ ¬q.
The error lies in reading “if p then q” as if p were the only possible cause of q. But a conditional only says that p is sufficient for q, not that it is necessary.
The row that refutes it
The counterexample is the row p = F, q = T. There p ⇒ q is T because the antecedent is false, and ¬p is T, so both premises hold. Yet the conclusion ¬q is F, and the final implication gives F.
That row alone invalidates the argument. In the other three rows the formula comes out T, hence the overall classification as a contingency.
Sufficient versus necessary conditions
In p ⇒ q, p is a sufficient condition for q, and q is a necessary condition for p. The fallacy conflates the two notions: it treats p as if it were necessary.
If p really were the only route to q, the correct premise would be the biconditional p ⇔ q. Under that premise ¬q does follow from ¬p and the argument becomes valid.
Real-world examples
Everyday: “If you are a member, you get in free. You are not a member. So you do not get in free.” There might be an open day.
Advertising and politics: “If we cut taxes, the economy grows. We did not cut them, so the economy will not grow.” This ignores every other driver of growth.
Programming: assuming that if a guard condition fails a given effect cannot happen, when another branch of the code may produce it anyway.
How to avoid it: use modus tollens
The valid way to reason negatively is to deny the consequent, not the antecedent: from p ⇒ q and ¬q conclude ¬p. That is modus tollens, and its formula is indeed a tautology.
Rule of thumb: from an implication you may move forward by affirming the antecedent, or backward by denying the consequent. The other two combinations are the two classical fallacies.
Try it yourself
Edit the expression in the calculator and watch how every step of the table changes.
Open in the calculator →Related operators
Frequently asked questions
How does it differ from modus tollens? ▼
Modus tollens denies the consequent (from p ⇒ q and ¬q conclude ¬p) and is valid. This fallacy denies the antecedent, which is exactly what the conditional does not license.
When would the reasoning be valid? ▼
If the premise were a biconditional p ⇔ q. Then p is both necessary and sufficient for q, and ¬q does follow from ¬p.
Why is it so common? ▼
Because in everyday speech many “if”s are understood as “if and only if”. Formalising strips that implicit reading away and the reasoning becomes invalid.
