Exercises — Don't-care conditions in K-maps
Before we start, one shared convention so no symbol is used before it is earned:
Level 1 — Recognition
Exercise 1.1 (L1)
Which minterms are don't-cares for a single BCD digit? A BCD digit is stored in 4 bits but only represents decimal –. List every minterm that is a don't-care and say why.
Recall Solution 1.1
A 4-bit number runs to . BCD only uses –. The combinations — that is — are never produced by a valid BCD source, so their outputs are unspecified. Don't-cares: (six of them). See BCD - Binary Coded Decimal.
Exercise 1.2 (L1)
True or false, with reason: "A don't-care cell must be covered by some group, exactly like a 1."
Recall Solution 1.2
False. The rule "every 1 must be covered" applies only to real 1s. A don't-care is optional — you cover it only if doing so enlarges a group that already covers a real 1. Covering an for its own sake would add a wasted term (breaks Rule 2).
Level 2 — Application
Exercise 2.1 (L2)
Simplify the 3-variable function Give the minimal SOP expression and the literal count.
Recall Solution 2.1
Build the map (rows , cols in Gray order ):
| $BC$ | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 0 | 0 | 1 (m1) | 1 (m3) | 0 |
| 1 | 0 | X (m5) | 1 (m7) | 0 |
The 1s are at and ; the is at .
All four cells in columns and have . They are . Read as 1 and we get one size-4 group covering all cells → this group cancels and , leaving just .
— 1 literal. (Look at the green box in 
Exercise 2.2 (L2)
Simplify
Recall Solution 2.2
The only real 1s are and ; everything else is .
| $BC$ | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 0 | 1 (m0) | X | X | 1 (m2) |
| 1 | X | X | X | X |
We only need to cover and . The cheapest cover: absorb enough 's to make a group of ? No — the whole map has as 1s and elsewhere. The biggest legal group that covers a real 1 and drops the most variables is all 8 cells ( everything). That group is the constant . — 0 literals (a constant HIGH wire). Note we did not build any group of only-'s: the size-8 group contains the real 1s , so Rule 2 is satisfied.
Level 3 — Analysis
Exercise 3.1 (L3)
BCD "is the digit ?" Inputs = BCD digit –; output when the digit . Find minimal SOP.
- : minterms .
- Don't-cares: .
Recall Solution 3.1
Map (rows , cols in Gray order):
| $CD$ | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 00 | 0 | 0 | 0 | 0 |
| 01 | 0 | 1(m5) | 1(m7) | 1(m6) |
| 11 | X(m12) | X(m13) | X(m15) | X(m14) |
| 10 | 1(m8) | 1(m9) | X(m11) | X(m10) |
Group A (green): every cell with is the bottom half — rows and = cells . The 1s are real; the rest are . Reading those 's as 1 makes an 8-cell group covering all of → simplifies to just .
Group B (yellow): cells with are ( real, are ) → size-4 → .
Group C (red): cells with are ( real, are ) → size-4 → .
All real 1s () are now covered:
Check: digit : ✅ (). Digit : ✅ (). See 
Exercise 3.2 (L3)
Same BCD inputs, but now output when the digit is prime (). Don't-cares –. Find minimal SOP.
Recall Solution 3.2
at . Map:
| $CD$ | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 00 | 0 | 0 | 1(m3) | 1(m2) |
| 01 | 0 | 1(m5) | 1(m7) | 0 |
| 11 | X | X | X | X |
| 10 | 0 | 0 | X(m11) | X(m10) |
- : → . Can we grow it? Neighbours are , giving = → (drops ). ✅ Absorb them.
- : → . Grow with 's → = → (drops ). ✅
- : → . Grow with 's → = → . This covers and again but as a cheaper 2-literal term — however is already in and in , so is not needed.
Minimal cover using only the two size-4 groups that each catch a unique real 1: Check: : ✅. : ✅. : , ✅ (4 not prime). ✅.
Level 4 — Synthesis
Exercise 4.1 (L4)
Design a BCD-to-"segment " style bit: for digits (i.e. only for and ), don't-cares –. Find minimal SOP.
Recall Solution 4.1
only at and ; at ; at –.
| $CD$ | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 00 | 1(m0) | 0(m1) | 1(m3) | 1(m2) |
| 01 | 0(m4) | 1(m5) | 1(m7) | 1(m6) |
| 11 | X | X | X | X |
| 10 | 1(m8) | 1(m9) | X | X |
Cover the 1s cheaply, absorbing 's:
- block (reads – as 1) → term . Covers .
- block — cells with are columns : , all 1 or → 8-cell group → term . Covers .
- block (reads as 1) → . Covers (and again).
- Remaining uncovered 1: . Its live neighbours: (in already), (in ), is a 0 (cannot join). So pair = ? Let's grow: = → ( real, is ). This covers . ✅
Check the two zeros: : ✅. : ✅. And e.g. : ✅.
Level 5 — Mastery
Exercise 5.1 (L5)
For , find the minimal SOP and argue why no cheaper cover exists.
Recall Solution 5.1
Map:
| $CD$ | 00 | 01 | 11 | 10 |
|---|---|---|---|---|
| 00 | X(m0) | 1(m1) | 1(m3) | X(m2) |
| 01 | 0(m4) | X(m5) | 1(m7) | 0(m6) |
| 11 | 0(m12) | 0(m13) | 1(m15) | 0(m14) |
| 10 | 0(m8) | 0(m9) | 1(m11) | 0(m10) |
Real 1s: .
- Column () — all four are real 1s → size-4 group with → term . Covers .
- Remaining 1: . Neighbours: (), (already covered), (), (0). Grow = → (reads as 1) — but that is a size-4 group covering (real) plus 2 's → term , 2 literals. Alternatively = → , also 2 literals, covers ( is ). Both are 2-literal.
Pick (it also re-covers , harmless) or ; both give a 2-literal second term: Why no cheaper cover exists: is a real 1 whose entire neighbourhood of 1s/'s is confined to the region — there is no size-8 group through it (all neighbours are forced 0s). So needs at least a 2-literal term. And is the unique 4-cell group covering (both surrounded by 0s except along ), so is essential. Two essential terms of 2 literals each ⇒ 4 literals is the floor. Check: : ✅. : ✅. : ✅ ( is a genuine 0). is : we read it as 1 — allowed, it's a don't-care.
Exercise 5.2 (L5)
Conceptual mastery. Two engineers minimise the same don't-care map and get two different-looking expressions, both with the same literal count. Is one wrong? Explain using Exercise 5.1.
Recall Solution 5.2
Neither is wrong. In 5.1 we saw and are both valid minimal SOPs (both 4 literals). This happens because a don't-care (, , ) can be assigned differently in each solution — one engineer read (so works), the other read but (so works). Both satisfy every specified output; they only disagree on inputs that never occur / nobody cares about. Minimal SOP is not always unique — see Quine-McCluskey Method for how the algorithm enumerates all minimal covers, and Boolean Simplification for the algebra behind why they're equivalent on the care set.
Recall Self-test summary
Which exercise gave ? ::: Exercise 2.1 BCD "" minimal SOP? ::: (Exercise 3.1) BCD "prime digit" minimal SOP? ::: (Exercise 3.2) Can two different SOPs both be minimal on a don't-care map? ::: Yes — 's create ties (Exercise 5.2).
Connections
- Karnaugh Maps (K-maps) — the grouping mechanics practised here.
- Sum of Products (SOP) and Product of Sums (POS) — every group = one product term.
- BCD - Binary Coded Decimal — source of the – don't-cares.
- Quine-McCluskey Method — algorithmic handling and enumeration of minimal covers.
- Boolean Simplification — why two answers can be equivalent.
- Logic Gates & Hardware Cost — fewer literals = cheaper circuit.