Representation of Boolean Function in Sum of Minterms or Product of Maxterms
In digital logic, a Boolean function can be expressed in two canonical forms:
- Sum of Minterms (SOM): Also known as the Disjunctive Normal Form (DNF).
- Product of Maxterms (POM): Also known as the Conjunctive Normal Form (CNF).
Both forms provide a systematic way to express any Boolean function, and both are particularly useful for simplifying logic circuits.
1. Sum of Minterms (SOM)
The Sum of Minterms is a Boolean expression that represents the OR of all possible minterms (ANDed terms), where each minterm corresponds to a combination of the variables that makes the function true (i.e., the function evaluates to 1). The sum of minterms is the OR of these minterms.
Minterm:
- A minterm is a product (AND operation) of all the variables in the Boolean function, where each variable appears either in its original form or in its complement (NOT form).
- A minterm corresponds to a single row in the truth table where the output is 1.
Example:
Consider the Boolean function F(A,B,C) defined as:
| A |
B |
C |
F(A, B, C) |
| 0 |
0 |
0 |
1 |
| 0 |
0 |
1 |
0 |
| 0 |
1 |
0 |
1 |
| 0 |
1 |
1 |
1 |
| 1 |
0 |
0 |
0 |
| 1 |
0 |
1 |
0 |
| 1 |
1 |
0 |
1 |
| 1 |
1 |
1 |
0 |
The minterms where F(A,B,C)=1 are:
- Row 1: A=0,B=0,C=0 → Minterm = ABC
- Row 3: A=0,B=1,C=0 → Minterm = ABC
- Row 4: A=0,B=1,C=1 → Minterm = ABC
- Row 7: A=1,B=1,C=0 → Minterm = ABC
Thus, the Sum of Minterms (SOM) for this function is:
F(A,B,C)=ABC∨ABC∨ABC∨ABC
This is the canonical Sum of Minterms representation.
2. Product of Maxterms (POM)
The Product of Maxterms is a Boolean expression that represents the AND of all possible maxterms, where each maxterm corresponds to a combination of variables that makes the function false (i.e., the function evaluates to 0). The product of maxterms is the AND of these maxterms.
Maxterm:
- A maxterm is a sum (OR operation) of all the variables in the Boolean function, where each variable appears either in its original form or in its complement (NOT form).
- A maxterm corresponds to a single row in the truth table where the output is 0.
Example:
Using the same Boolean function F(A,B,C) defined above:
| A |
B |
C |
F(A, B, C) |
| 0 |
0 |
0 |
1 |
| 0 |
0 |
1 |
0 |
| 0 |
1 |
0 |
1 |
| 0 |
1 |
1 |
1 |
| 1 |
0 |
0 |
0 |
| 1 |
0 |
1 |
0 |
| 1 |
1 |
0 |
1 |
| 1 |
1 |
1 |
0 |
The maxterms where F(A,B,C)=0 are:
- Row 2: A=0,B=0,C=1 → Maxterm = A∨B∨C
- Row 5: A=1,B=0,C=0 → Maxterm = A∨B∨C
- Row 6: A=1,B=0,C=1 → Maxterm = A∨B∨C
- Row 8: A=1,B=1,C=1 → Maxterm = A∨B∨C
Thus, the Product of Maxterms (POM) for this function is:
F(A,B,C)=(A∨B∨C)∧(A∨B∨C)∧(A∨B∨C)∧(A∨B∨C)
This is the canonical Product of Maxterms representation.
Summary of the Canonical Forms:
Why Use Canonical Forms?
- Simplicity in Design: Canonical forms are useful because they provide a direct method for implementing Boolean functions in digital circuits, especially when dealing with truth tables.
- Simplification: These forms are often the starting point for simplifying complex Boolean expressions using techniques like Boolean algebra or Karnaugh maps.
- Automation: Automated tools and software use canonical forms to design logic circuits based on truth tables, making it easier to implement digital systems.