Canonical SOP Form
Sum of products, minterms, canonical representation.
The canonical Sum of Products (SOP) form is a standardized Boolean expression where every possible input combination that makes the function output 1 is represented as an individual product term called a **minterm**. Every digital logic function can be expressed uniquely in this form, making it the universal starting point for logic minimization, Karnaugh map entry, and hardware synthesis.
Core Concept Explanation
A **minterm** for n variables is a product term that contains all n variables exactly once, each either in complemented or uncomplemented form. For two variables A and B, there are 2^2 = 4 minterms: A'B', A'B, AB', AB, which correspond to rows 0, 1, 2, 3 of the truth table. For three variables, there are 2^3 = 8 minterms. Each minterm evaluates to 1 for exactly one input combination and 0 for all others.
The canonical SOP form of a Boolean function is obtained by summing (OR-ing) all minterms for which the function output is 1. This representation is called canonical because it is unique: no two different Boolean functions have the same canonical SOP. This makes it a standard form for comparison, verification, and as the starting point for Karnaugh map minimization.
The minterm index is the decimal equivalent of the binary input combination. For a minterm A'B'C (where A=0, B=0, C=1), the binary value is 001, which equals decimal 1. So this minterm is m1. A variable is uncomplemented when the corresponding input bit is 1, and complemented when the input bit is 0. This rule is consistent and allows quick construction of any minterm from its index.
A Boolean function can be expressed in shorthand notation using the sigma summation symbol. F(A,B,C) = sum_m(1,3,5,7) means the function is 1 for minterms 1, 3, 5, and 7. The full expanded canonical SOP is obtained by writing out each minterm expression and OR-ing them together.
Mathematical Expression
For n variables, there are 2^n minterms, indexed from 0 to 2^n - 1. The minterm mi corresponds to the binary representation of i applied to the variables in order. A variable Xk appears uncomplemented in mi if bit k of i is 1, and complemented if bit k is 0. The canonical SOP is F = sum of mi for all i where F(i) = 1. For three variables A, B, C, each minterm is a three-literal AND term. For example, m5 corresponds to binary 101, so A=1, B=0, C=1, giving the minterm AB'C.
Practical Understanding
The canonical SOP form is the direct output of a truth table. Any circuit described by a truth table can be immediately implemented as a two-level AND-OR network where each AND gate corresponds to one minterm and the OR gate sums all outputs. This two-level structure is directly related to the Programmable Logic Array (PLA) architecture used in early programmable logic devices.
In GATE and university examinations, canonical SOP is tested by asking students to derive the expression from a truth table, convert a non-canonical SOP to canonical form, or identify the minterms from a given expression. Conversion from non-canonical to canonical form requires expanding each product term that is missing a variable by multiplying it with (X + X') for each missing variable X, which generates all minterms covered by that term.
Given:
F(A,B) = A + B (two-variable function)
Why this formula applies:
Converting non-canonical SOP to canonical SOP by expanding missing variables
Formula:
For term A (missing B): A = A(B+B') = AB + AB'
For term B (missing A): B = B(A+A') = AB + A'B
Substitution:
F = AB + AB' + AB + A'B
= AB + AB' + A'B (removing duplicate AB)
Calculation:
Minterms: AB' = m2, A'B = m1, AB = m3
Final Answer:
F(A,B) = A + B = m(1,2,3) = A'B + AB' + AB (canonical SOP)Exam Tip: To convert a non-canonical SOP term to minterms, multiply each term missing variable X by (X+X'). This doubles the number of terms but each becomes a valid minterm. Collect unique minterms at the end.
Loading lab...
Quick Revision
- Minterm: product term with all n variables, each complemented or not. Evaluates to 1 for exactly one input combination.
- Minterm index = decimal value of binary input combination. Variable is uncomplemented when its bit is 1.
- Canonical SOP = OR of all minterms where F = 1. Written as F = sum_m(list of indices).
- For n variables, there are 2^n minterms numbered m0 to m(2^n - 1).
- To convert non-canonical term to minterms: multiply by (X+X') for each missing variable X.
- Exam trap: a minterm must contain ALL variables. A term like AB in a three-variable function is not a minterm.
- Canonical SOP is unique for a given function and serves as the standard form for Karnaugh map entry and PLA implementation.
Canonical SOP Quiz
Test your understanding of canonical SOP form and minterm representation.
Q1.A Boolean function F(A, B, C) = sum(1, 3, 5, 7). How many minterms contain the literal A?
Related Articles
Boolean Algebra Theorems
Absorption, consensus, idempotent, involution theorems.
12 min read
Boolean Algebra Axioms
Identity, complement, commutative, associative laws.
6 min read
Minterm and Maxterm Relationship
Conversion between SOP and POS, complement relation.
11 min read
K-Map POS Simplification
Grouping 0s to obtain simplified POS form.
7 min read
De Morgan Theorem 1
Complement of product equals sum of complements (AB)' = A'+B'.
4 min read