Visual Tools
Calculators
Tables
Mathematical Keyboard
Converters
Other Tools

Biconditionals (Double Implications) Truth Tables


Basic Propositions
Implications
Tautologies
Contradictions
PQP → QQ → P(P → Q) ∧ (Q → P)P ↔ Q
FFTTTT
TFFTFF
FTTFFF
TTTTTT

This formula represents the most basic biconditional relationship in propositional logic. It states that P and Q must have the same truth value - both true or both false. The biconditional is equivalent to the conjunction of two implications (P→Q) ∧ (Q→P), demonstrating that logical equivalence requires mutual implication. This fundamental relation is used to establish definitions and equivalences in formal logical systems.




What Is a Biconditional?

You already use statements that tie two facts together so tightly that neither can hold alone.
"The lamp is lit exactly when the switch is on" rules out a lit lamp with the switch off, and a dark lamp with the switch on. Either both facts hold or neither does.
The same tie turns up in arithmetic, in geometry and in everyday life.
Each statement joins two parts, and in each one the parts stand or fall together.
statementfirst partsecond partcan one hold without the other?
a whole number is even exactly when its last digit is evenn is evenlast digit evenno
a triangle is equilateral exactly when all its angles are 60°equilateralall angles 60°no
the lamp is lit exactly when the switch is onlamp litswitch onno
What they share: the whole statement is true exactly when its two parts have the same truth value.
Both true: fine. Both false: also fine — an odd number with an odd last digit does not break the rule. Only a mismatch, one part true and the other false, makes the statement false.
PQP ↔ Qthe two parts
TTTagree
TFFdiffer
FTFdiffer
FFTagree
The definition
The biconditional P↔QP \leftrightarrow Q, read "P if and only if Q", is the connective that is true exactly when PP and QQ have the same truth value.
So "n is even ↔ the last digit of n is even" is a biconditional: true for every whole number n.
It is one of the five connectives: it builds a new formula from two, with its own truth table.
The biconditional P ↔ Q (read "P if and only if Q") is a compound proposition that is true exactly when P and Q have the same truth value — both true or both false. It is false when they differ.
Pitfall: Reading P ↔ Q as both true
Taking P ↔ Q to mean "P and Q are both true" marks the FF row F, which is the table of P ∧ Q. At P = F, Q = F, P ∧ Q is F but P ↔ Q is T, because the two values match.
The truth table for P ↔ Q has two true rows (TT and FF) and two false rows (TF and FT). This symmetric structure reflects the fact that the biconditional treats P and Q identically — P ↔ Q is the same as Q ↔ P.
What the name buys: one symbol that carries two implications at once.
The biconditional is equivalent to the conjunction of two conditionals: P ↔ Q ≡ (P → Q) ∧ (Q → P). This means P is both sufficient and necessary for Q. In mathematics, "if and only if" (abbreviated iff) signals that a definition or characterization is being given — the two sides are interchangeable.
So proving a biconditional always means proving two things, and once proved it lets either side replace the other. The next section, biconditionals and logical equivalence, shows when that replacement is guaranteed.
The rest of the page builds the truth tables of the basic biconditional and of the biconditional laws: negation, mutual implication, transitivity, decomposition, the contrapositive, double negation and De Morgan's law.

Biconditionals and Logical Equivalence

THEOREM
A biconditional P ↔ Q that is a tautology — true in every row of its truth table — establishes that P and Q are logically equivalent.

Logical equivalence means the two formulas have identical truth tables: they agree on every possible input.

Pitfall: Checking only some rows
Seeing (P → Q) ↔ (Q → P) come out T at P = Q = T and at P = Q = F suggests that P → Q and Q → P are equivalent. At P = T, Q = F it is F, so they are not: only a biconditional that is T in all four rows gives an equivalence.

Many of the formulas on this page are tautological biconditionals. For example, (P ↔ Q) ↔ ((P → Q) ∧ (Q → P)) is true in every row, confirming that "if and only if" and "mutual implication" mean exactly the same thing.

Key properties of the biconditional include symmetry (P ↔ Q ≡ Q ↔ P), transitivity (if P ↔ Q and Q ↔ R then P ↔ R), and preservation under negation ((P ↔ Q) ↔ (¬P ↔ ¬Q)). These properties make the biconditional the natural connective for expressing equivalences in formal systems.

P ↔ Q: The Basic Biconditional

P ↔ Q is the fundamental biconditional. It asserts that P and Q share the same truth value. When both are true, the biconditional is true. When both are false, it is also true. When they differ, it is false.

The decomposition P ↔ Q ≡ (P → Q) ∧ (Q → P) shows that the biconditional requires mutual implication: P implies Q (the "only if" direction) and Q implies P (the "if" direction). This is why "if and only if" proofs in mathematics always have two parts — one for each direction.

The biconditional can also be expressed using other connectives: P ↔ Q ≡ (P ∧ Q) ∨ (¬P ∧ ¬Q), which directly states that either both hold or neither does.
P if and only if Q: the overlap and the region outside both circles are shaded, the two crescents are notPQP ↔ QTrue when P and Q agree: both, or neither
P ↔ Q: both, or neither

Circle P holds the assignments where P is true, circle Q those where Q is true. P ↔ Q is true where the two agree: in the overlap, where both are true, and outside both circles, where both are false. The two crescents, where exactly one of them is true, stay empty. These are the TT and FF rows of the truth table; the empty crescents are its TF and FT rows.

Shading the two crescents instead gives ¬(P ↔ Q), exclusive or.
A biconditional asks only whether two statements agree, never whether either of them is true.

(P ↔ Q) ↔ (¬P ↔ ¬Q): Negation Preservation

This tautology states that if P is equivalent to Q, then ¬P is equivalent to ¬Q — and conversely.

RULE
Negating both sides of an equivalence preserves the equivalence.

Pitfall: Negating both sides of a biconditional
Taking ¬P ↔ ¬Q as the negation of P ↔ Q fails at P = Q = T: there ¬(P ↔ Q) is F but ¬P ↔ ¬Q is T. Negating one side gives the negation: ¬(P ↔ Q) ≡ P ↔ ¬Q.

The proof is direct: P ↔ Q means P and Q have the same truth value. If both are true, then ¬P and ¬Q are both false — still matching. If both are false, then ¬P and ¬Q are both true — still matching. In either case ¬P ↔ ¬Q holds.

This symmetry under negation is a distinctive feature of the biconditional. It does not hold for the conditional: P → Q is not equivalent to ¬P → ¬Q (that would be the inverse, which is a common logical fallacy).

(P ↔ Q) ↔ ((P → Q) ∧ (Q → P)): Mutual Implication

This tautology formally establishes that the biconditional is identical to the conjunction of both directions of implication.

RULE
P ↔ Q holds if and only if P → Q and Q → P both hold.

Pitfall: Proving only one direction
Showing P → Q and concluding P ↔ Q misses the row P = F, Q = T: there P → Q is T but P ↔ Q is F. The biconditional also needs Q → P, which is exactly what fails in that row.

This equivalence is the standard definition of the biconditional in many logic textbooks. It also provides the standard proof strategy for biconditional statements: prove the forward direction (P → Q) and the backward direction (Q → P) separately.

The truth table confirms that both sides agree in all four rows. When P and Q match (TT or FF), both implications hold and the biconditional is true. When they differ (TF or FT), one implication fails and both the conjunction and the biconditional are false.

An if-and-only-if claim is two implications in one, and proving it means proving both.

((P ↔ Q) ∧ (Q ↔ R)) → (P ↔ R): Transitivity

This tautology establishes that logical equivalence is transitive: if P is equivalent to Q and Q is equivalent to R, then P is equivalent to R.

Fact: A ↔ chain counts its false letters
Grouping does not matter, since (P ↔ Q) ↔ R ≡ P ↔ (Q ↔ R), yet at P = T, Q = R = F the chain P ↔ Q ↔ R is T. Because X ↔ T is X and X ↔ F is ¬X, each false letter flips the result: a chain of ↔ is true exactly when an even number of its letters are false.

The reasoning is straightforward. P ↔ Q means P and Q share a truth value. Q ↔ R means Q and R share a truth value. Therefore P and R share a truth value, giving P ↔ R.

Transitivity allows chaining equivalences in proofs: if you show A ↔ B, then B ↔ C, then C ↔ D, you can conclude A ↔ D. This is one of the most common proof patterns in mathematics — simplifying a complex statement step by step through a chain of equivalent forms.

Such a chain is a list of separate claims, A ↔ B, B ↔ C and C ↔ D, joined by "and". Writing the letters in one line with the connective repeated, as in P ↔ Q ↔ R, makes a single formula instead, and that formula has to be read from its own truth table, not as a list.

(P ↔ Q) → ((P → Q) ∧ (Q → P)): Decomposition

This tautology states that the biconditional implies mutual implication. If P ↔ Q holds, then both P → Q and Q → P hold. This is one direction of the full equivalence established in section 5.

The formula is vacuously true whenever P ↔ Q is false (the antecedent fails), and directly true whenever P ↔ Q holds (since the biconditional forces both implications).

While section 5 shows the biconditional is the conjunction of both implications (a biconditional equivalence), this formula shows only the forward direction (an implication). Both are tautologies, but they express different strengths of the same underlying relationship.

(P → Q) ↔ (¬Q → ¬P): Contrapositive Equivalence

RULEContrapositive equivalence
This tautology states that every conditional is logically equivalent to its contrapositive.

P → Q and ¬Q → ¬P have identical truth tables — they are true and false in exactly the same rows.

The contrapositive equivalence is one of the most important results in propositional logic and one of the most used tools in mathematical proof. To prove "if P then Q," it is often easier to prove "if not Q then not P" — the two statements are logically identical.

Note that this is a biconditional tautology: both directions hold. The conditional implies its contrapositive, and the contrapositive implies the original conditional. This is stronger than the converse or inverse relationships, which are not equivalent to the original.

P ↔ ¬¬P: Double Negation

RULEDouble negation
This tautology states that any proposition P is logically equivalent to its double negation ¬¬P.

Negating a proposition twice returns it to its original truth value.

The truth table is trivial: when P is true, ¬P is false and ¬¬P is true — matching P. When P is false, ¬P is true and ¬¬P is false — again matching P.

Fact: Three negations shrink to one
Intuitionistic logic refuses ¬¬P → P, yet it proves ¬¬¬P ↔ ¬P. The contrapositive of P → ¬¬P gives ¬¬¬P → ¬P, and P → ¬¬P applied to ¬P gives the converse.

Double negation elimination (from ¬¬P infer P) is accepted in classical logic but not in intuitionistic logic, where proving ¬¬P does not constructively establish P. This distinction is fundamental to the philosophy of mathematics and the debate between classical and constructive foundations.

Intuitionistic logic does keep the opposite step, from P infer ¬¬P: once P is established, any claim that P leads to a contradiction is refuted. What it refuses is only the removal of a double negation, and it accepts contraposition, from P → Q infer ¬Q → ¬P.

(P ∧ Q) ↔ ¬(¬P ∨ ¬Q): De Morgan's Law

This tautology expresses De Morgan's first law as a biconditional: the conjunction P ∧ Q is equivalent to the negation of the disjunction of the negations, ¬(¬P ∨ ¬Q).

Pitfall: Keeping the connective in De Morgan's law
Passing the outer negation of ¬(¬P ∨ ¬Q) to each part and keeping the ∨ gives P ∨ Q. At P = T, Q = F, ¬(¬P ∨ ¬Q) is F but P ∨ Q is T. The negation flips the connective: ¬(¬P ∨ ¬Q) ≡ P ∧ Q.

Reading it plainly: "P and Q" is the same as "it is not the case that not-P or not-Q." If both P and Q hold, then neither ¬P nor ¬Q holds, so their disjunction is false and its negation is true. If either P or Q fails, the corresponding negation is true, the disjunction is true, and its negation is false.

De Morgan's laws (the second being P ∨ Q ↔ ¬(¬P ∧ ¬Q)) are essential tools in simplifying logical expressions, designing digital circuits, and converting between conjunctive and disjunctive normal forms.

Common Pitfalls

Five slips account for many wrong answers on biconditional truth tables. Each is marked where it happens in the sections above; here each is worked through in full, with the wrong and the right working side by side.

Reading P ↔ Q as both true

The biconditional is read as a claim that P and Q both hold, as if "P if and only if Q" meant "P and Q". The row where both are false is then marked F, and the column that comes out belongs to a different connective.

Wrong working: P ↔ Q is true when P and Q are true, so for (P, Q) equal to (T, T), (T, F), (F, T), (F, F) the column reads T, F, F, F.

Right working: P ↔ Q is true when P and Q have the same truth value. In the row (F, F) the values match, so the column reads T, F, F, T. The column T, F, F, F is the table of P ∧ Q, which differs from P ↔ Q exactly in the row (F, F).

Why it happens: everyday "if and only if" sentences are usually about the case where both parts happen, so the case where neither happens is overlooked. The phrase "both true or both false" is remembered without its second half.

How to check: count the T rows. P ↔ Q has two, TT and FF; a column with a single T, in the TT row, is P ∧ Q.

Checking only some rows

A biconditional between two formulas is evaluated in a few rows, it comes out true there, and the two formulas are declared equivalent. Equivalence needs the biconditional to be true in every row.

Wrong working: for (P → Q) ↔ (Q → P), take P = Q = T: both implications are T, so the biconditional is T. Take P = Q = F: both implications are T again. So P → Q ≡ Q → P.

Right working: two variables give four rows. For (P, Q) equal to (T, T), (T, F), (F, T), (F, F), P → Q takes T, F, T, T and Q → P takes T, T, F, T, so the biconditional takes T, F, F, T. It is not a tautology, and P → Q is not equivalent to its converse Q → P.

Why it happens: the rows where P and Q have the same value are the easiest to evaluate, and in those rows a formula and its converse always agree, because swapping P and Q changes nothing when they are equal.

How to check: list all the rows before deciding, four for two variables and eight for three, and look for a single F in the final column. One F is enough to rule out the equivalence.

Negating both sides of a biconditional

To negate P ↔ Q, the negation is placed on both sides, giving ¬P ↔ ¬Q. Section 4 shows that this formula is equivalent to P ↔ Q itself, so it cannot be its negation.

Wrong working: ¬(P ↔ Q) ≡ ¬P ↔ ¬Q.

Right working: at P = Q = T, P ↔ Q is T, so ¬(P ↔ Q) is F, while ¬P ↔ ¬Q is F ↔ F, which is T. The negation goes on one side only: ¬(P ↔ Q) ≡ P ↔ ¬Q ≡ ¬P ↔ Q, true exactly when P and Q differ, which is the exclusive or.

Why it happens: the negation is distributed over the biconditional like a minus sign multiplied into a bracket. Negation preservation, (P ↔ Q) ↔ (¬P ↔ ¬Q), says precisely that the two negations cancel out.

How to check: the negation must be F wherever P ↔ Q is T. Test P = Q = T: ¬P ↔ ¬Q is T there, so it is not the negation.

Proving only one direction

An "if and only if" statement is proved by showing one implication, usually P → Q, and the proof stops there. One implication still allows a row in which the biconditional is false.

Wrong working: if x = 2, then x² = 4. So x = 2 if and only if x² = 4.

Right working: P → Q rules out only the row P = T, Q = F. In the row P = F, Q = T, P → Q is T but P ↔ Q is F, because Q → P is T → F, which is F. In the example, x = −2 gives x² = 4 while x = 2 is false, so the backward direction fails and the biconditional is false. Only P → Q and Q → P together rule out both mixed rows: P ↔ Q ≡ (P → Q) ∧ (Q → P).

Why it happens: the forward direction is often the interesting one, and the backward direction feels as if it should follow automatically. It does not: P → Q is T in three rows, P ↔ Q only in two.

How to check: an "if and only if" proof has two parts, one for each arrow. Before finishing, look for the part that starts from Q and arrives at P.

Keeping the connective in De Morgan's law

To simplify ¬(¬P ∨ ¬Q), the outer negation is passed to each part, but the ∨ between the parts is kept. The result is a different formula.

Wrong working: ¬(¬P ∨ ¬Q) ≡ ¬¬P ∨ ¬¬Q ≡ P ∨ Q.

Right working: at P = T, Q = F, ¬P ∨ ¬Q is F ∨ T, which is T, so ¬(¬P ∨ ¬Q) is F, while P ∨ Q is T. De Morgan's law changes the connective: ¬(¬P ∨ ¬Q) ≡ ¬¬P ∧ ¬¬Q ≡ P ∧ Q, which is F in that row, as it should be.

Why it happens: the negation is treated like a minus sign, as in −(a + b) = −a + (−b), where the operation between the terms keeps its form. In words, "not (not P or not Q)" gets heard as "P or Q".

How to check: test a row where P and Q differ, such as P = T, Q = F. The original and the rewritten formula must have the same value there.

Biconditionals FAQ

What is the truth table for P ↔ Q?

+
P ↔ Q is true when both P and Q are true, or when both are false. It is false when P and Q have different truth values. This gives two true rows (TT, FF) and two false rows (TF, FT) in a two-variable truth table. See it row by row in the truth table generator.Read more →

What does 'if and only if' mean in logic?

+
'If and only if' (abbreviated iff) expresses a biconditional. 'P if and only if Q' means P implies Q and Q implies P: the two sides always share a truth value and are interchangeable. Because both directions are claimed, proving an iff statement takes two parts — forward and backward. Mathematical definitions are implicitly iff statements.Read more →

What is the difference between a necessary and a sufficient condition?

+
In the conditional P → Q, the truth of P is sufficient for the truth of Q — P guarantees Q. In the same conditional, Q is necessary for P: P cannot hold without Q. A biconditional P ↔ Q says each side is both necessary and sufficient for the other, which is why it is read 'P if and only if Q.'Read more →