Truth Table & Boolean Simplifier

Build a truth table for any expression and simplify it — with the simplified form checked against the original row by row before it is shown.

AND OR NOT XOR NAND NOR, -> for implies and <-> for if-and-only-if. Symbols work too: & | ! ^. Brackets as usual.

Compare two expressions

How the simplification is checked

  • A simplifier that is subtly wrong produces something tidier that quietly means something else, so every result here is checked against the original truth table row by row before it is shown. A "simplification" that changes any row is not one.
  • The method is Quine-McCluskey: combine terms that differ in one variable, over and over, until nothing more combines. What survives are the prime implicants, and a minimum sum-of-products can only be built from those.
  • Smallest means the fewest terms among covers built from prime implicants, which is what minimal sum-of-products means. It is not a claim that no other way of writing the expression is shorter — a form using exclusive-or can be much shorter still.
  • Equivalence is decided by comparing truth tables, not by comparing shapes. Two expressions that look nothing alike are the same expression if they agree on every row, which is the only definition that means anything.
  • And, or, not, xor, nand, nor, implies and if-and-only-if are all accepted, in words or symbols. Implication binds loosely and and binds tightly, so "A and B -> C" reads as "(A and B) -> C" the way it is normally spoken.

How to use

  1. Type an expression using AND, OR, NOT and brackets.
  2. Read the table, and the simplified form underneath it.
  3. Paste two expressions into the comparison box to see whether they mean the same thing.

Frequently asked questions

How do I know the simplification is right?

Because it is checked rather than trusted. The simplified expression is read back in and its truth table compared with the original, row for row — anything that changes a single row is not a simplification and is not shown as one. That check was run over 3,000 randomly generated expressions.

What method does it use?

Quine-McCluskey: combine terms that differ in exactly one variable, over and over, until nothing more combines. What survives are the prime implicants, and a minimum sum-of-products can only be built from those — so the smallest cover is found by taking the essential ones and searching exhaustively for the smallest set of the rest.

Is the result the shortest possible?

It is the fewest terms among forms built as a sum of products, which is what minimal sum-of-products means. It is not a claim that no other way of writing the expression is shorter — a form using exclusive-or can be much shorter still, and the tool does not pretend otherwise.

How does it decide two expressions are the same?

By comparing their truth tables, not their shapes. Two expressions that look nothing alike are the same expression if they agree on every row, and that is the only definition that means anything. It also fills in variables that appear on one side and not the other.

What notation does it accept?

AND, OR, NOT, XOR, NAND, NOR, plus -> for implies and <-> for if-and-only-if, in words or symbols (&, |, !, ^, and even * and + for and and or). AND binds tighter than OR, which binds tighter than implication, so "A and B -> C" reads the way it is spoken.

How many variables can it handle?

Eight, which is 256 rows — already more than anyone reads. Beyond that the table stops being something you can look at, so it says so rather than drawing it.

🔒 This tool runs entirely in your browser. Nothing you enter is uploaded, logged, or stored.