Maxterm expansion: the canonical product of sums (ΠM)
Maxterm expansion rewrites a formula as the AND of one OR term per truth-table row where it is false: the canonical product of sums, written ΠM(…).
The formula is rewritten as the AND of one OR term (maxterm) for each truth-table row where it is false.
A maxterm is an OR of every variable, plain or negated, arranged to be false on exactly one row. AND-ing the maxterms of the false rows reproduces the function, because each one rules out one false row and lets every other row through. The example A AND B = ΠM(A, B; 0, 1, 2) rules out the three rows where the AND is false and keeps row 3.
Minterms and maxterms are complementary descriptions: every row is either a minterm of the function or a maxterm of it, never both, so Σm and ΠM over the same order list complementary sets of row numbers. The comparison page puts the two side by side on one function, and the CNF converter uses the maxterm form when that is the shorter route.
The convention for row numbers and the signs inside a maxterm (a variable appears negated where the row has it TRUE) are the engine's, and the proof below checks the identity on every row.
Statement
A AND B = ΠM(A, B; 0, 1, 2) = (A OR B) AND (A OR NOT B) AND (NOT A OR B) Proof by truth table: A AND B = ΠM(A, B; 0, 1, 2) = (A OR B) AND (A OR NOT B) AND (NOT A OR B)
| # | A | B | lhs | mid1 | rhs |
|---|---|---|---|---|---|
| 0 | FALSE | FALSE | FALSE | FALSE | FALSE |
| 1 | FALSE | TRUE | FALSE | FALSE | FALSE |
| 2 | TRUE | FALSE | FALSE | FALSE | FALSE |
| 3 | TRUE | TRUE | TRUE | TRUE | TRUE |
The same law in four notations
A AND BA && BA ∧ BA·BA \cdot BΠM(A, B; 0, 1, 2)ΠM(A, B; 0, 1, 2)ΠM(A, B; 0, 1, 2)ΠM(A, B; 0, 1, 2)\prod M_{(A, B)}(0, 1, 2)(A OR B) AND (A OR NOT B) AND (NOT A OR B)(A || B) && (A || !B) && (!A || B)(A ∨ B) ∧ (A ∨ ¬B) ∧ (¬A ∨ B)(A + B)·(A + B')·(A' + B)\left(A + B\right) \cdot \left(A + \overline{B}\right) \cdot \left(\overline{A} + B\right)The common slip
Building a maxterm with the signs of a minterm. The maxterm for row 3 of two variables (A = TRUE, B = TRUE) is NOT A OR NOT B, which is false only there; A OR B is the maxterm for row 0.
Questions
When is the product of sums shorter than the sum of products?
When the function is true on most rows: there are then few false rows and few maxterms. A function true on all but one row is a single maxterm but has 2 to the n minus 1 minterms.
Related
Lesson that teaches this
Tools
- Boolean algebra calculator and simplifier with steps (every law named and verified)
- Logical equivalence checker: two expressions, exact verdict, counterexample
Practice
See also
- Maxterm: meaning and examples
- Minterm expansion: the canonical sum of products (Σm)
- Four-variable product of sums: ΠM(…) simplified from the zeros
- Sum of products vs product of sums
- Minterms vs maxterms
Laws
Generated from the Tangibool engine, semantics tangibool-semantics/1, engine 1.0.0, build . Every table, map, simplification and verdict on these pages was computed by the Tangibool engine when the site was built, and every claim was re-checked by the same exact checker the app uses. Limits are stated where they apply. © 2026 Foreranger LTD.