// laws and rules · Fundamental law
Law of non-contradiction_
The law of non-contradiction states that no proposition can be true and false at the same time. Its formalisation, ¬(p ∧ ¬p), is a tautology, and it is the foundation on which the consistency of any formal system rests.
Example
¬(p ∧ ¬p)
What the variables mean
- ▸ p: “The door is open”
In plain words
It is impossible for the door to be open and closed at once, in the same sense and at the same moment.
Truth table
| p | ¬p | p ∧ ¬p | ¬(p ∧ ¬p)★ |
|---|---|---|---|
| T | F | F | T |
| F | T | F | T |
Classification: Tautology · 2 rows
Statement
The law states that ¬(p ∧ ¬p) is true for every proposition p. Aristotle phrased it as “it is impossible for something to be and not be at the same time and in the same respect”, and considered it the firmest principle of all.
Note the difference from p ∧ ¬p: that formula, without the outer negation, is a contradiction — false in every row. The law is precisely its negation, which is why it is a tautology.
Why it holds: reading the table
Row 1 (p = T): ¬p is F, the conjunction T ∧ F is F, and its negation is T. Row 2 (p = F): ¬p is T, the conjunction F ∧ T is F, and its negation is T again.
In no row can the conjunction be true, since that would require p and its negation to share a value, which the definition of negation rules out.
Why it matters: the explosion principle
In classical logic anything follows from a contradiction: the principle known as ex falso quodlibet, or “explosion”. If a system lets you derive both p and ¬p, absolutely everything becomes provable and the system loses all usefulness.
That is why consistency — being unable to derive a contradiction — is the minimum requirement for any formal theory, and checking it is a central concern of mathematical logic.
Examples
Everyday: “the flight left on time and the flight did not leave on time” cannot be true; one of the two claims is false.
Programming: a condition such as `x > 10 && x <= 10` can never hold. Compilers and linters flag these contradictions because they signal unreachable code.
Relation to other laws
It is the dual of excluded middle: applying De Morgan to ¬(p ∧ ¬p) gives ¬p ∨ ¬¬p, which by double negation is ¬p ∨ p.
Paraconsistent logics weaken this principle so as to reason with contradictory information without the system exploding — useful for databases fed by conflicting sources.
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
What is the difference between this law and p ∧ ¬p? ▼
p ∧ ¬p is a contradiction, false in every row. The law is its negation, ¬(p ∧ ¬p), and is therefore a tautology.
What is the explosion principle? ▼
The classical rule by which any proposition follows from a contradiction. It is why consistency matters so much.
Are there logics that reject it? ▼
Yes, paraconsistent ones. They allow local contradictions without the whole system becoming trivial, which helps when integrating conflicting data sources.
