Boolean Expression Simplifier
Simplify any Boolean expression step by step. Each step names the law used (De Morgan, absorption, combining, consensus), and the answer is the guaranteed minimal sum of products, plus the simplest product of sums.
Privacy: worked out in your browser; nothing is sent or stored.
Variables are a letter with optional digits (A, b, x1). NOT: A' !A ¬A ~A · AND: AB A·B A*B A&B A∧B · OR: A+B A|B A∨B · XOR: A^B A⊕B · implies: -> → · if and only if: <-> ↔ · constants 0 and 1. You can also enter a list such as Σm(1, 3, 5) + d(7), ΠM(0, 2) or F(A, B, C) = Σm(1, 3).
How to simplify a Boolean expression
- Type the expression, for example
AB + A'C + BC. - Press Simplify. The simplest form appears first, with every other answer that is just as short.
- Press Next step to follow the working one law at a time. Tick Practice mode to try each step yourself before the answer is revealed.
Laws used in the steps
- Removing →, ↔ and ⊕: P → Q = P' + Q; P ⊕ Q = PQ' + P'Q.
- De Morgan's laws: (PQ)' = P' + Q' and (P + Q)' = P'Q'. Double negation: P'' = P.
- Distributive law: P(Q + R) = PQ + PR, to multiply out brackets.
- Idempotent law: X + X = X. Complement: XX' = 0 (such terms disappear).
- Absorption: X + XY = X.
- Combining (adjacency): XY + XY' = X.
- Redundant literal: X + X'Y = X + Y.
- Consensus theorem: XY + X'Z + YZ = XY + X'Z.
Is the answer really the simplest?
Yes. Algebra alone can stop early: sometimes the next saving needs a term to be used twice or an extra consensus term to be added first, and there is no simple rule for when to do that. So the answer is always computed with the Quine–McCluskey method (the exact version of grouping on a Karnaugh map), which is guaranteed to find the sum of products with the fewest terms and then the fewest literals. If the algebra steps stop short, the last step says so and shows the shorter form.
Frequently asked questions
Why are there several answers?
Some functions have more than one simplest form; for example Σm(0, 1, 2, 5, 6, 7) has two. All of them are listed (up to 12), so you can match your textbook.
Which notation can I use?
NOT as A', !A, ¬A or ~A; AND by writing variables together or with · * & ∧; OR with + | ∨; XOR ^ ⊕; → and ↔. Up to 10 variables.
What does "literal" mean?
Each appearance of a variable, complemented or not. AB + A'C has 4 literals. Fewer literals means fewer gate inputs in a circuit.