Demonstrate a clear understanding of Karnaugh maps and use them to minimise Boolean expressions for both SOP and POS forms, producing efficient logic‑circuit designs (including half‑adders and full‑adders) as required by the Cambridge International AS & A Level Computer Science (9618) syllabus.
| Syllabus Unit | Covered in these notes | Bridging notes / Further reading |
|---|---|---|
| 1–8 (Information representation, hardware, basic logic gates, truth tables) | ✔ Recap box (see below) | See “Foundations – AS‑level recap” |
| 9–12 (Algorithms, data structures, programming, software development) | ✘ Not a focus | Link‑in paragraph – “Why Boolean minimisation matters for algorithmic implementation” |
| 13.1–13.3 (User‑defined types, file organisation, floating‑point) | ✘ | Suggested reading: CS AS‑Level – Data Representation |
| 14 (Protocols, switching) | ✘ | Suggested reading: CS AS‑Level – Communication |
| 15.1 (RISC/CISC, parallelism, virtual machines) | ✘ | Suggested reading: CS A‑Level – Computer Architecture |
| 15.2 (Boolean algebra, K‑maps) – focus of this chapter | ✔ Full coverage (SOP, POS, don’t‑care, 2‑4‑5‑variable maps, circuit design) | – |
| 16–18 (OS, translation software, encryption, AI) | ✘ | Suggested reading: CS A‑Level – System Software & Security |
| 19–20 (Search, sort, recursion, exception handling) | ✘ | Suggested reading: CS A‑Level – Algorithms |
When Boolean functions are implemented in hardware description languages (e.g., VHDL, Verilog) or compiled into micro‑code, a minimal expression reduces the number of instructions the compiler must generate. This directly influences algorithmic efficiency and the overall software development life‑cycle.
| Number of variables | Map dimensions | Typical use at A‑Level |
|---|---|---|
| 2 | 2 × 2 | Introductory SOP/POS examples. |
| 3 | 2 × 4 | Most exam questions; quick hand‑solving. |
| 4 | 4 × 4 | Full‑scale circuit design (adders, multiplexers). |
| 5 | Two 4 × 4 maps (one for each value of the 5th variable) | Extended functions; treat the 5th variable as a “layer”. |
| 6 + | Multiple 4‑variable maps or computer‑assisted tools | Rare at A‑Level; usually tackled with Quine‑McCluskey. |
Checklist before moving on:
Checklist for POS:
Function: F(A,B,C,D) – truth table given below.
| Dec | A | B | C | D | F |
|---|---|---|---|---|---|
| 0 | 0 | 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 0 | 1 | 1 |
| 2 | 0 | 0 | 1 | 0 | 1 |
| 3 | 0 | 0 | 1 | 1 | 0 |
| 4 | 0 | 1 | 0 | 0 | 1 |
| 5 | 0 | 1 | 0 | 1 | 1 |
| 6 | 0 | 1 | 1 | 0 | 0 |
| 7 | 0 | 1 | 1 | 1 | 0 |
| 8 | 1 | 0 | 0 | 0 | 1 |
| 9 | 1 | 0 | 0 | 1 | 0 |
| 10 | 1 | 0 | 1 | 0 | 1 |
| 11 | 1 | 0 | 1 | 1 | 0 |
| 12 | 1 | 1 | 0 | 0 | 0 |
| 13 | 1 | 1 | 0 | 1 | 1 |
| 14 | 1 | 1 | 1 | 0 | 0 |
| 15 | 1 | 1 | 1 | 1 | 0 |
Step 1 – K‑map layout (AB = rows, CD = columns, Gray code order)
| 00 | 01 | 11 | 10 | |
|---|---|---|---|---|
| 00 | 0 | 1 | 0 | 1 |
| 01 | 1 | 1 | 0 | 0 |
| 11 | 0 | 1 | 0 | 0 |
| 10 | 1 | 0 | 1 | 1 |
Step 2 – Form the largest groups of 1’s
A′ CB′ DA D′Step 3 – Minimal SOP
Assume the same function with don’t‑care conditions at minterms 3 and 12 (X). Including them may allow larger groups.
| Dec | F |
|---|---|
| 3 | X |
| 12 | X |
Updated K‑map (X shown in light grey)
| 00 | 01 | 11 | 10 | |
|---|---|---|---|---|
| 00 | 0 | 1 | X | 1 |
| 01 | 1 | 1 | 0 | 0 |
| 11 | X | 1 | 0 | 0 |
| 10 | 1 | 0 | 1 | 1 |
New grouping
B′A D′Resulting minimal SOP
Using the don’t‑care cells reduced the expression from three product terms to two, saving one gate.
Function: G(A,B,C) = Π M(0,2,5,7) (i.e., G = 0 for minterms 0, 2, 5, 7).
| AB\C | 0 | 1 |
|---|---|---|
| 00 | 0 | 1 |
| 01 | 1 | 0 |
| 11 | 0 | 1 |
| 10 | 1 | 0 |
Step 1 – Group the 0’s (including wrap‑around)
(C + A′) (C is 0 throughout, A varies → use A′).(B + C′) (B is 0 throughout, C varies → use C′).Minimal POS
The half‑adder adds two single‑bit binary numbers (A and B). Its two outputs are:
| A | B | Sum |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
2‑variable K‑map (A = rows, B = columns)
| 0 | 1 | |
|---|---|---|
| 0 | 0 | 1 |
| 1 | 1 | 0 |
Two 1’s are diagonally opposite; they cannot be grouped together, so each forms a 1‑cell group:
A′ BA B′Minimal SOP for Sum
| A | B | Carry |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
Only minterm 3 (A=1, B=1) is a 1, giving the product term A B.
Minimal SOP for Carry
Inputs: A, B, Cin. Outputs: Sum, Cout.
A′ B CinA B′ Cin′Sum = A′ B Cin + A B′ Cin′ + A B Cin′ + A′ B′ Cin, which simplifies to the well‑known XOR chain.A B.A Cin.B Cin.Minimal SOP for Cout
Your generous donation helps us continue providing free Cambridge IGCSE & A-Level resources, past papers, syllabus notes, revision questions, and high-quality online tutoring to students across Kenya.