Abstract
Canonical Representation provides a standardized, unambiguous algebraic expression for any Boolean switching function directly derived from its truth table. The two primary canonical forms are Sum of Products (SOP / Disjunctive Normal Form)—constructed from function 1s using minterms ()—and Product of Sums (POS / Conjunctive Normal Form)—constructed from function 0s using maxterms (). While canonical expressions contain full literal expansions, they are rarely minimal and serve as the baseline input for algebraic and K-map logic optimization.
The Need for Canonical Forms
Truth tables uniquely specify digital logic functions, but they become unwieldy as input count grows ( rows). Canonical forms provide a standardized algebraic notation where every variable appears exactly once (in true or complemented form) in each term.
Baseline Reference Truth Table
Consider the 3-variable Boolean function and its complement :
| Index () | Minterm () | Maxterm () | |||||
|---|---|---|---|---|---|---|---|
| 0 | 0 | 1 | |||||
| 1 | 1 | 0 | |||||
| 2 | 0 | 1 | |||||
| 3 | 1 | 0 | |||||
| 4 | 0 | 1 | |||||
| 5 | 1 | 0 | |||||
| 6 | 1 | 0 | |||||
| 7 | 1 | 0 |
Sum of Products (SOP) / Disjunctive Normal Form
The Sum of Products (SOP) form expresses a function as a logical OR (sum) of product terms (minterms) for all input combinations where the output .
Minterm Properties
- An ANDed product of literals where each input variable appears exactly once (true if variable is , complemented if variable is ).
- Evaluates to for exactly one specific input combination.
Canonical Expansion ()
Using the reference truth table where at indices :
Algebraic Simplification to Minimal SOP
Canonical expressions are usually non-minimal. Applying Boolean algebra theorems:
Product of Sums (POS) / Conjunctive Normal Form
The Product of Sums (POS) form expresses a function as a logical AND (product) of sum terms (maxterms) for all input combinations where the output .
Maxterm Properties
- An ORed sum of literals where each variable appears exactly once (true if variable is , complemented if variable is ).
- Evaluates to for exactly one specific input combination.
Canonical Expansion ()
Using the reference truth table where at indices :
Algebraic Simplification to Minimal POS
Applying Idempotency () to duplicate :
Equivalence Check
Expanding the minimal POS form yields: , proving equivalence to the minimal SOP form.
SOP vs. POS Selection Strategy
| Form | Focus | Primary Operator | Use Case Strategy |
|---|---|---|---|
| SOP () | Tracks 1s of the function | Outer OR, Inner AND | Preferred when for fewer rows than . |
| POS () | Tracks 0s of the function | Outer AND, Inner OR | Preferred when for fewer rows than . |
Mapping Between Canonical Forms
Converting between canonical notations relies on set complementation over the complete minterm/maxterm index universe :
| Conversion Type | Rule | Example ( variables) |
|---|---|---|
| SOP to POS () | Use Maxterm indices absent in Minterm list | |
| POS to SOP () | Use Minterm indices absent in Maxterm list | |
| SOP of to SOP of | Select missing minterm indices | |
| POS of to POS of | Select missing maxterm indices |
Next Steps for Minimization
Canonical expansions are rarely optimal for hardware implementation because they require excessive gate inputs. To minimize gate count and propagation delay, canonical expressions are simplified using:
- Boolean Algebraic Theorems (as demonstrated above).
- Karnaugh Maps (K-Maps) (visual optimization using Gray code adjacency).
- Quine-McCluskey Algorithm (algorithmic minimization for large variable sets).