MINTERMS and MAXTERMS
For any function consisting of 2 Boolean variables A and B, we have-
•Number of minterms possible = 22 = 4.
•Number of maxterms possible = 22 = 4.
The following table shows the minterms and maxterms-
A B Minterms Maxterms
0 0 A’B’ A+B
0 1 A’B A + B’
1 0 AB’ A’ + B
1 1 AB A’ + B’
For any function consisting of 3 Boolean variables A, B and C, we have-
•Number of minterms possible = 23 = 8.
•Number of maxterms possible = 23 = 8.
The following table shows the minterms and maxterms-
A B C Minterms Maxterms
0 0 0 A’B’C’ A+B+C
0 0 1 A’B’C A + B + C’
0 1 0 A’BC’ A + B’ + C
0 1 1 A’BC A + B’ + C’
1 0 0 AB’C’ A’ + B + C
1 0 1 AB’C A’ + B + C’
1 1 0 ABC’ A’ + B’ + C
1 1 1 ABC A’ + B’ + C’
Neutral Functions-
A neutral function is a function for which number of minterms and number of maxterms
are same.
Example-
The following function is an example of a neutral function-
f( A, B) = A ⊕ B
This is because this function has equal number of minterms and maxterms as shown
by the following table-
A B A⊕B
0 0 0
0 1 1
1 0 1
1 1 0
Number Of Neutral Functions Possible-
Here n = Number of Boolean variables in the function.
Explanation-
•For n variables, total number of terms possible = number of combinations of n variables =
2n.
•Since maximum number of terms possible = 2n, so we choose half of the terms i.e 2n / 2 =
2n-1.
•We assign them the output logic ‘1’.
•We assign ‘0’ to rest half of the terms.
•Thus, number of neutral functions possible with n Boolean variables = C ( 2n , 2n-1 ).
PRACTICE PROBLEM BASED ON NEUTRAL FUNCTIONS-
Problem-
Consider any function consisting of 2 Boolean variables A and B-
[Link] the total number of neutral functions that are possible.
[Link] all the neutral functions.
Solution-
We know, number of neutral functions possible with n Boolean variables = C ( 2n , 2n-1 ).
Substituting n = 2, we get-
Number of neutral functions possible with 2 Boolean variables
= C ( 22 , 22-1 )
=C(4,2)
=6
Thus, total 6 Boolean functions are possible with 2 Boolean variables.
The 6 Boolean Functions are-
•f ( A , B ) = A
•f ( A , B ) = A’
•f ( A , B ) = B
•f ( A , B ) = B’
•f ( A , B ) = A ⊙ B
•f ( A , B ) = A ⊕ B
Variables Boolean Functions
A B A A’ B B’ A⊙B A⊕B
0 0 0 1 0 1 1 0
0 1 0 1 1 0 0 1
1 0 1 0 0 1 0 1
1 1 1 0 1 0 1 0
The above table clearly shows that for each function, number of minterms =
number of maxterms.
So, they all are neutral functions.
Minterm and Maxterm
Boolean function can be put in two ways. They are
1. Canonical Minterm and
2. Canonical Maxterm.
Minterm:
Minterm is a product term in which the Boolean variable is either normal or in complemented
form.
Let us consider the below truth table and write the Boolean Minterm expression.
Steps to write the Boolean Minterm expression:
Step 1:
A,B,C are the inputs and F is the output. To write the Minterm consider the rows
which has the output F=1. In the above truth table m1, m3, m5,
m7 have outputs ‘1’. The input which has the value ‘1’ is written as such and
the input which has the value ‘0’ is complimented.
For example in the row 1, the output F=1 and the inputs A=B=0. So the inputs
A and B are complimented and C is written as such. So the Minterm is A'B’C.
Step 2:
The Minterm f can be written as the sum of all the products of the row which
has the output 1.
f= A'B'C+ A'BC+ AB'C+ ABC
It can also be represented as
f(A,B,C)= m1+ m3+ m5+ m7
Or it can be written as
f(A,B,C)= ∑m(1,3,5,7)
Maxterm:
Maxterm is a sum term in which the Boolean variable is either normal or in
complemented form.
Steps to write the Boolean Maxterm expression:
Step 1:
A,B,C are the inputs and F is the output. To write the maxterm consider the
rows which has the output F=0. In the above truth table M0, M2, M4,
M6 have outputs ‘0’. The input which has the value ‘0’ is written as such
and the input which has the value ‘1’ is complimented.
For example in the row 2, the output F=0 and the inputs A=C=0 and B=1.
So the input B is complimented and A and C are written as such. So the
maxterm is AB'C.
Step 2:
Considering all the rows which has the output ‘0’ the Maxterm can be
written as
f= (A+B+C).(A+B'+C).(A'+B+C).(A'+B'+C)
It can also be written as
f(A,B,C)= M0+M2+M4+M6
Or f(A,B,C)=πM (0,2,4,6)
Problem 1:
Express the Boolean function F=A+BC as minterm
F= A(B+B')(C+C')+BC(A+A')
By complement law A+A'=1. Adding all the input variables in the product terms we get
F=(AB+AB')(C+C')+ ABC+ A'BC
F= ABC+ABC'+AB'C+ABC'+AB'C'+ABC+A'BC
There are two ABCs and ABC'. So let us consider one ABC and ABC'
F= ABC+ ABC'+AB'C+ AB'C'+ A'BC
In minterm the ‘1’ input is written as such and the input ‘0’ is complimented.
F= 111+110+101+100+011
F= m7+m6+m5+m4+m3
F=∑m(3,4,5,6,7)
Problem 2:
Express the Boolean function F=A+BC as Maxterms
F=A+(BC)
After removing the bracket and expanding we get
F= (A+B).(A+C)
By complement law CC'=BB'=1. So after adding all input terms in the
expression we get,
F= (A+B+CC').(A+C+BB')
F= (A+B+C).(A+B+C').(A+C+B).(A+C+B')
There are two (A+B+C)s. So let us consider one (A+B+C)
F= (A+B+C).(A+B+C').( A+B'+C)
In Maxterm the input ‘0’ is written as such and the input ‘1’ is complemented.
F=(0+0+0).(0+0+1).(0+1+0)
F= M0.M1.M2
F= πM(0,1,2)
Example.
Express the Boolean function F = x + y z as a sum of minterms.
Solution:
F = x + y z = x + (y z)
AND (multiply) has a higher precedence than OR (add)
= x(y+y')(z+z') + (x+x')yz
expand 1st term by ANDing it with (y + y’)(z + z’), and 2nd term with (x
+ x’)
= x y z + x y z' + x y' z + x y' z' + x y z + x' y z
= m7 + m6 + m5 + m4 + m3
= Σ(3, 4, 5, 6, 7)
sum of 1-minterms
Example.
Express the Boolean function F = x + y z as a product of maxterms.
Solution: First, we need to convert the function into the product-of-OR terms by
using the distributive law as follows:
F = x + y z = x + (y z) AND (multiply) has a higher precedence than OR (add)
= (x + y) (x + z) use distributive law to change to product of OR terms
= (x + y + z z') (x + y y' + z) expand 1st term by ORing it with z z', and 2nd term
with y y'
= (x + y + z) (x + y + z') (x + y + z) (x + y' + z)
= M0 • M1 • M2
= Π(0, 1, 2) product of 0-maxterms
Example.
Express F ' = (x + y z)' as a sum of minterms.
Solution: F' = (x + y z)' = (x + (y z))' AND (multiply) has a higher precedence than OR (add) = x' (y' +
z’)
use dual or De Morgan’s Law = (x' y') + (x' z’)
use distributive law to change to sum of AND terms = x' y' (z + z') + x' (y + y') z’
expand 1st term by ANDing it with (z + z’),
and 2nd term with
(y + y') = x' y' z + x' y' z' + x' y z' + x' y' z’
= m1 + m0 + m2
= Σ(0, 1, 2) sum of 0-minterms
Example. Express F ' = (x + y z)' as a product of maxterms.
Solution:
F' = (x + y z)' = (x + (y z))’ AND (multiply) has a higher precedence than OR (add)
= x' (y' + z') use dual or De Morgan’s Law
= (x' + y y' + z z') (x x' + y' + z’)
expand 1st term by ORing it with y y' and z z', and 2nd term with x x'
= (x' + y + z) (x' + y + z') (x' + y' + z) (x' + y' + z') (x + y' + z') (x' + y' + z')
= M4 • M6 • M5 • M7 • M3
= Π(3, 4, 5, 6, 7) product of 1-maxterms