As discussed in the “Representation of Boolean Functions” every boolean function can be expressed as a sum of minterms or a product of maxterms. Since the number of literals in such an expression is usually high, and the complexity of the digital logic gates that implement a Boolean function is directly related to the complexity of the algebraic expression from which the function is implemented, it is preferable to have the most simplified form of the algebraic expression.
The process of simplifying the algebraic expression of a boolean function is called minimization. Minimization is important since it reduces the cost and complexity of the associated circuit.
For example, the function can be minimized to . The circuits associated with above expressions is –
It is clear from the above image that the minimized version of the expression takes a less number of logic gates and also reduces the complexity of the circuit substantially. Minimization is hence important to find the most economic equivalent representation of a boolean function.
Minimization can be done using Algebraic Manipulation or K-Map method. Each method has it’s own merits and demerits.
Minimization using Algebraic Manipulation –
This method is the simplest of all methods used for minimization. It is suitable for medium sized expressions involving 4 or 5 variables. Algebraic manipulation is a manual method, hence it is prone to human error.
Common Laws used in algebraic manipulation :
- Example 1 – Minimize the following boolean function using algebraic manipulation-
- Solution – Properties refer to the three common laws mentioned above.
Minimization using K-Map –
The Algebraic manipulation method is tedious and cumbersome. The K-Map method is faster and can be used to solve boolean functions of upto 5 variables. Please refer this link to learn more about K-Map.
- Example 2 – Consider the same expression from example-1 and minimize it using K-Map.
- Solution – The following is a 4 variable K-Map of the given expression.
The above figure highlights the prime implicants in green, red and blue.
The green one spans the whole third row, which gives us –
The red one spans 4 squares, which gives us –
The blue one spans 4 squares, which gives us –
So, the minimized boolean expression is-
GATE CS Corner Questions
Practicing the following questions will help you test your knowledge. All questions have been asked in GATE in previous years or in GATE Mock Tests. It is highly recommended that you practice them.
1. GATE CS 2012, Question 30
2. GATE CS 2007, Question 32
3. GATE CS 2014 Set-3, Question 17
4. GATE CS 2005, Question 18
5. GATE CS 2004, Question 17
6. GATE CS 2003, Question 45
7. GATE CS 2002, Question 12
K-Map – Wikipedia
Digital Design, 5th edition by Morris Mano and Michael Ciletti
This article is contributed by Chirag Manwani. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Representation of Boolean Functions
- Number of Boolean functions
- Prime Implicant chart for minimizing Cyclic Boolean functions
- Inverse functions and composition of functions
- Total Recursive Functions and Partial Recursive Functions in Automata
- Properties of Boolean Algebra
- Counting Boolean function with some variables
- Boolean Algebraic Theorems
- Proof of De-Morgan's laws in boolean algebra
- Mathematics | Classes (Injective, surjective, Bijective) of Functions
- Mathematics | Total number of possible functions
- Discrete Maths | Generating Functions-Introduction and Prerequisites
- Mathematics | Generating Functions - Set 2
- Functions of Operating System
- Self Dual functions in Digital Logic
- Number of possible Functions