- Digital Circuits Tutorial
- Home
- Number Systems
- Base Conversions
- Binary Numbers Representation
- Signed Binary Arithmetic
- Codes
- Error Detection & Correction Codes
- Boolean Algebra
- Canonical and Standard Forms
- K-Map Method
- Quine-McCluskey Tabular Method
- Logic Gates
- Two-Level Logic Realization
- Combinational Circuits
- Arithmetic Circuits
- Decoders
- Encoders
- Multiplexers
- De-Multiplexers
- Programmable Logic Devices
- Threshold Logic
- Sequential Circuits
- Latches
- Flip-Flops
- Conversion of Flip-Flops
- Shift Registers
- Application of Shift Registers
- Counters
- Finite State Machines
- Algorithmic State Machine Charts

- Digital Circuits Resources
- Digital Circuits - Quick Guide
- Digital Circuits - Useful Resources
- Digital Circuits - Discussion

# Quine-McCluskey Tabular Method

In previous chapter, we discussed K-map method, which is a convenient method for minimizing Boolean functions up to 5 variables. But, it is difficult to simplify the Boolean functions having more than 5 variables by using this method.

Quine-McClukey tabular method is a tabular method based on the concept of prime implicants. We know that **prime implicant** is a product (or sum) term, which can’t be further reduced by combining with any other product (or sum) terms of the given Boolean function.

This tabular method is useful to get the prime implicants by repeatedly using the following Boolean identity.

xy + xy’ = x(y + y’) = x.1 = x

## Procedure of Quine-McCluskey Tabular Method

Follow these steps for simplifying Boolean functions using Quine-McClukey tabular method.

**Step 1** − Arrange the given min terms in an **ascending order** and make the groups based on the number of ones present in their binary representations. So, there will be **at most ‘n+1’ groups** if there are ‘n’ Boolean variables in a Boolean function or ‘n’ bits in the binary equivalent of min terms.

**Step 2** − Compare the min terms present in **successive groups**. If there is a change in only one-bit position, then take the pair of those two min terms. Place this symbol ‘_’ in the differed bit position and keep the remaining bits as it is.

**Step 3** − Repeat step2 with newly formed terms till we get all **prime implicants**.

**Step 4** − Formulate the **prime implicant table**. It consists of set of rows and columns. Prime implicants can be placed in row wise and min terms can be placed in column wise. Place ‘1’ in the cells corresponding to the min terms that are covered in each prime implicant.

**Step 5** − Find the essential prime implicants by observing each column. If the min term is covered only by one prime implicant, then it is **essential prime implicant**. Those essential prime implicants will be part of the simplified Boolean function.

**Step 6** − Reduce the prime implicant table by removing the row of each essential prime implicant and the columns corresponding to the min terms that are covered in that essential prime implicant. Repeat step 5 for Reduced prime implicant table. Stop this process when all min terms of given Boolean function are over.

### Example

Let us **simplify** the following Boolean function, $f\left ( W,X,Y,Z \right )=\sum m\left ( 2,6,8,9,10,11,14,15 \right )$ using Quine-McClukey tabular method.

The given Boolean function is in **sum of min terms** form. It is having 4 variables W, X, Y & Z. The given min terms are 2, 6, 8, 9, 10, 11, 14 and 15. The ascending order of these min terms based on the number of ones present in their binary equivalent is 2, 8, 6, 9, 10, 11, 14 and 15. The following table shows these **min terms and their equivalent binary** representations.

Group Name | Min terms | W | X | Y | Z |
---|---|---|---|---|---|

GA1 | 2 | 0 | 0 | 1 | 0 |

8 | 1 | 0 | 0 | 0 | |

GA2 | 6 | 0 | 1 | 1 | 0 |

9 | 1 | 0 | 0 | 1 | |

10 | 1 | 0 | 1 | 0 | |

GA3 | 11 | 1 | 0 | 1 | 1 |

14 | 1 | 1 | 1 | 0 | |

GA4 | 15 | 1 | 1 | 1 | 1 |

The given min terms are arranged into 4 groups based on the number of ones present in their binary equivalents. The following table shows the possible **merging of min terms** from adjacent groups.

Group Name | Min terms | W | X | Y | Z |
---|---|---|---|---|---|

GB1 | 2,6 | 0 | - | 1 | 0 |

2,10 | - | 0 | 1 | 0 | |

8,9 | 1 | 0 | 0 | - | |

8,10 | 1 | 0 | - | 0 | |

GB2 | 6,14 | - | 1 | 1 | 0 |

9,11 | 1 | 0 | - | 1 | |

10,11 | 1 | 0 | 1 | - | |

10,14 | 1 | - | 1 | 0 | |

GB3 | 11,15 | 1 | - | 1 | 1 |

14,15 | 1 | 1 | 1 | - |

The min terms, which are differed in only one-bit position from adjacent groups are merged. That differed bit is represented with this symbol, ‘-‘. In this case, there are three groups and each group contains combinations of two min terms. The following table shows the possible **merging of min term pairs** from adjacent groups.

Group Name | Min terms | W | X | Y | Z |
---|---|---|---|---|---|

GB1 | 2,6,10,14 | - | - | 1 | 0 |

2,10,6,14 | - | - | 1 | 0 | |

8,9,10,11 | 1 | 0 | - | - | |

8,10,9,11 | 1 | 0 | - | - | |

GB2 | 10,11,14,15 | 1 | - | 1 | - |

10,14,11,15 | 1 | - | 1 | - |

The successive groups of min term pairs, which are differed in only one-bit position are merged. That differed bit is represented with this symbol, ‘-‘. In this case, there are two groups and each group contains combinations of four min terms. Here, these combinations of 4 min terms are available in two rows. So, we can remove the repeated rows. The reduced table after removing the redundant rows is shown below.

Group Name | Min terms | W | X | Y | Z |
---|---|---|---|---|---|

GC1 | 2,6,10,14 | - | - | 1 | 0 |

8,9,10,11 | 1 | 0 | - | - | |

GC2 | 10,11,14,15 | 1 | - | 1 | - |

Further merging of the combinations of min terms from adjacent groups is not possible, since they are differed in more than one-bit position. There are three rows in the above table. So, each row will give one prime implicant. Therefore, the **prime implicants** are YZ’, WX’ & WY.

The **prime implicant table** is shown below.

Min terms / Prime Implicants | 2 | 6 | 8 | 9 | 10 | 11 | 14 | 15 |
---|---|---|---|---|---|---|---|---|

YZ’ |
1 | 1 | 1 | 1 | ||||

WX’ |
1 | 1 | 1 | 1 | ||||

WY |
1 | 1 | 1 | 1 |

The prime implicants are placed in row wise and min terms are placed in column wise. 1s are placed in the common cells of prime implicant rows and the corresponding min term columns.

The min terms 2 and 6 are covered only by one prime implicant **YZ’**. So, it is an **essential prime implicant**. This will be part of simplified Boolean function. Now, remove this prime implicant row and the corresponding min term columns. The reduced prime implicant table is shown below.

Min terms / Prime Implicants | 8 | 9 | 11 | 15 |
---|---|---|---|---|

WX’ |
1 | 1 | 1 | |

WY |
1 | 1 |

The min terms 8 and 9 are covered only by one prime implicant **WX’**. So, it is an **essential prime implicant**. This will be part of simplified Boolean function. Now, remove this prime implicant row and the corresponding min term columns. The reduced prime implicant table is shown below.

Min terms / Prime Implicants | 15 |
---|---|

WY |
1 |

The min term 15 is covered only by one prime implicant **WY**. So, it is an **essential prime implicant**. This will be part of simplified Boolean function.

In this example problem, we got three prime implicants and all the three are essential. Therefore, the **simplified Boolean function** is

**f(W,X,Y,Z) = YZ’ + WX’ + WY.**