4.3.6
Karnaugh Maps
Test your knowledge with free interactive questions on Seneca — used by over 10 million students.
Karnaugh Maps
Karnaugh maps are diagrams used to simplify boolean expressions.

Drawing Karnaugh maps
- Solving a two-variable problem using a Karnaugh map involves creating a grid as shown:
- The ‘0’ and ‘1’ down the left of the grid refer to ‘not A’ and 'A'.
- The the ‘0’ and ‘1’ along the top of the grid refer to ‘not B' and 'B'.

Example
- Simplify the expression:
- We start by splitting it into three sets of brackets using the associative rule:

Fill in the table
- The first of these brackets refers to ‘A AND NOT B’.
- That means we put a ‘1’ in the box with the coordinates (A1, B0) as shown.
- The second bracket refers to ‘NOT A AND B’ .
- That means we put a '1' in the box with coordinates (A0, B1).
- The third bracket means ‘A AND B’, so we put a one in the box with coordinates (A1, B1).

Group
- The final stage involves grouping the '1's into sets of either 2, 4 or 8.
- In this example, there are only three '1's in total, but they can be grouped into two pairs as shown.
- The green pair both have the same value for A (1) and the blue pair have the same value for B (1).
- So our original expression simplifies to .
Karnaugh Maps
We can also construct Karnaugh maps to simplify expressions with 3 or 4 variables.

Three variables
- With a three-variable problem, the grid is expanded by adding variable C to the top.
- This means each column represents a combination of the variables B and C.
- In the second column of the map shown, labelled 01.
- The 0 refers to B and the 1 refers to C.
- The order of these combinations follows the rules of Gray code.
- This means that each combination is only a single bit different from the combinations either side of it.

Four variables
- For four variable Karnaugh maps, we do the same as for three variable but the rows now come to represent another combination of variables.
- Each row is labelled using the Gray code as before.

Simplification
- In this example, the ‘1’s have been grouped into a pair (green) and a set of four (blue).
- This is interpreted as (A AND B AND NOT C) OR (C AND NOT D) with the expression:
1Components of a Computer
1.1Structure & Function of the Processor
1.2Types of Processors
1.3Input, Output & Storage
1.3.1Elements of Computer Systems1.3.2Types of Computer Systems1.3.3How Magnetic Storage Works1.3.4Properties of Magnetic Storage1.3.5Examples of Magnetic Storage1.3.6How Optical Storage Works1.3.7Properties of Optical Storage1.3.8Examples of Optical Storage1.3.9Types of Optical Disc1.3.10Random Access Memory1.3.11Read Only Memory1.3.12Uses of Flash Memory1.3.13Properties of Flash Memory1.3.14What to do When We Run Out of Memory1.3.15How Virtual Memory Works
2Software & Software Development
2.1Systems Software
2.2Applications Generation
2.2.1Applications Software2.2.2Utilities2.2.3Encryption Software2.2.4Defragmentation Software2.2.5Data Compression Software2.2.6Backup Software2.2.7Open Source Software2.2.8Proprietary Software2.2.9Licensing Issues2.2.10Compilers2.2.11Interpreters2.2.12Assemblers2.2.13Compiling a Program2.2.14Lexical Analysis2.2.15Compilation Stages2.2.16Linkers, Loaders & Libraries
2.3Software Development
2.3.1Algorithmic Thinking2.3.2Waterfall Lifecycle2.3.3Waterfall Lifecycle - Strengths & Weaknesses2.3.4Agile Methodology2.3.5Agile Methodology - Strengths & Weaknesses2.3.6Extreme Programming2.3.7Extreme Programming - Strengths & Weaknesses2.3.8Spiral Methodology2.3.9Spiral Methodology - Strengths & Weaknesses2.3.10Rapid Application Development2.3.11RAD - Strengths & Weaknesse
2.4Types of Programming Language
3Exchanging Data
3.1Compression, Encryption & Hashing
3.2Databases
3.3Networks
3.3.1The Benefits of Networks3.3.2Network Performance3.3.3Types of Networks3.3.4Network Protocols3.3.5Transmission Protocols3.3.6What is the Internet?3.3.7Uniform Resource Locators3.3.8Domain Name Service3.3.9Web Hosting3.3.10Layering Concepts3.3.11TCP &. OSI Models3.3.12The Advantages of Layering3.3.13What's in a Packet?3.3.14How do Packets get Routed?3.3.15Did my Data Arrive Safely?3.3.16Network Hardware3.3.17Transmission Media3.3.18Firewalls3.3.19Proxies3.3.20Client-Server Model3.3.21Advantages of the Client Server Model3.3.22Disadvantages of the Client Server Model3.3.23Peer-to-Peer Model3.3.24Advantages of the Peer-to-Peer Model3.3.25Disadvantages of the Peer-to-Peer Model
4Data Types, Data Structures & Algorithms
4.1Data Types
4.1.1Data Types4.1.2Casting4.1.3Arrays4.1.42D Arrays4.1.5Strings4.1.6Binary4.1.7Sign & Magnitude4.1.8Binary Addition4.1.9Binary Shifts4.1.10Hexadecimal4.1.11Using Hexadecimal4.1.12Converting Binary & Hexadecimal4.1.13Converting Denary & Hexadecimal4.1.14Floating Points in Binary4.1.15Normalisation of Floating Points4.1.16Floating Point Addition4.1.17Floating Point Subtraction4.1.18Bitwise Manipulation - Shifts4.1.19Bitwise Manipulation - Masks4.1.20Character Sets4.1.21ASCII4.1.22Unicode
4.2Data Structures
5Legal, Moral, Cultural & Ethical Issues
5.1Computing Related Legislation
5.2Moral & Ethical Issues
5.2.1Online Activity Tracking5.2.2Censorship5.2.3Positive Cultural Impacts5.2.4Negative Cultural Impacts5.2.5E-Waste5.2.6Energy Consumption5.2.7Positive Environmental Impact5.2.8Layout, Colour Paradigms & Character Sets5.2.9Computers in the Workplace5.2.10Automated Decision-Making5.2.11Artificial Intelligence5.2.12Monitoring Behaviour5.2.13Analysing Personal Information5.2.14Piracy & Offensive Communication
6Elements of Computational Thinking
6.1Thinking Abstractly
6.2Thinking Ahead
6.3Thinking Procedurally
6.4Thinking Logically
6.5Thinking Concurrently
7Problem Solving & Programming
7.1Programming Techniques
7.2Programming Construction
Jump to other topics
1Components of a Computer
1.1Structure & Function of the Processor
1.2Types of Processors
1.3Input, Output & Storage
1.3.1Elements of Computer Systems1.3.2Types of Computer Systems1.3.3How Magnetic Storage Works1.3.4Properties of Magnetic Storage1.3.5Examples of Magnetic Storage1.3.6How Optical Storage Works1.3.7Properties of Optical Storage1.3.8Examples of Optical Storage1.3.9Types of Optical Disc1.3.10Random Access Memory1.3.11Read Only Memory1.3.12Uses of Flash Memory1.3.13Properties of Flash Memory1.3.14What to do When We Run Out of Memory1.3.15How Virtual Memory Works
2Software & Software Development
2.1Systems Software
2.2Applications Generation
2.2.1Applications Software2.2.2Utilities2.2.3Encryption Software2.2.4Defragmentation Software2.2.5Data Compression Software2.2.6Backup Software2.2.7Open Source Software2.2.8Proprietary Software2.2.9Licensing Issues2.2.10Compilers2.2.11Interpreters2.2.12Assemblers2.2.13Compiling a Program2.2.14Lexical Analysis2.2.15Compilation Stages2.2.16Linkers, Loaders & Libraries
2.3Software Development
2.3.1Algorithmic Thinking2.3.2Waterfall Lifecycle2.3.3Waterfall Lifecycle - Strengths & Weaknesses2.3.4Agile Methodology2.3.5Agile Methodology - Strengths & Weaknesses2.3.6Extreme Programming2.3.7Extreme Programming - Strengths & Weaknesses2.3.8Spiral Methodology2.3.9Spiral Methodology - Strengths & Weaknesses2.3.10Rapid Application Development2.3.11RAD - Strengths & Weaknesse
2.4Types of Programming Language
3Exchanging Data
3.1Compression, Encryption & Hashing
3.2Databases
3.3Networks
3.3.1The Benefits of Networks3.3.2Network Performance3.3.3Types of Networks3.3.4Network Protocols3.3.5Transmission Protocols3.3.6What is the Internet?3.3.7Uniform Resource Locators3.3.8Domain Name Service3.3.9Web Hosting3.3.10Layering Concepts3.3.11TCP &. OSI Models3.3.12The Advantages of Layering3.3.13What's in a Packet?3.3.14How do Packets get Routed?3.3.15Did my Data Arrive Safely?3.3.16Network Hardware3.3.17Transmission Media3.3.18Firewalls3.3.19Proxies3.3.20Client-Server Model3.3.21Advantages of the Client Server Model3.3.22Disadvantages of the Client Server Model3.3.23Peer-to-Peer Model3.3.24Advantages of the Peer-to-Peer Model3.3.25Disadvantages of the Peer-to-Peer Model
4Data Types, Data Structures & Algorithms
4.1Data Types
4.1.1Data Types4.1.2Casting4.1.3Arrays4.1.42D Arrays4.1.5Strings4.1.6Binary4.1.7Sign & Magnitude4.1.8Binary Addition4.1.9Binary Shifts4.1.10Hexadecimal4.1.11Using Hexadecimal4.1.12Converting Binary & Hexadecimal4.1.13Converting Denary & Hexadecimal4.1.14Floating Points in Binary4.1.15Normalisation of Floating Points4.1.16Floating Point Addition4.1.17Floating Point Subtraction4.1.18Bitwise Manipulation - Shifts4.1.19Bitwise Manipulation - Masks4.1.20Character Sets4.1.21ASCII4.1.22Unicode
4.2Data Structures
5Legal, Moral, Cultural & Ethical Issues
5.1Computing Related Legislation
5.2Moral & Ethical Issues
5.2.1Online Activity Tracking5.2.2Censorship5.2.3Positive Cultural Impacts5.2.4Negative Cultural Impacts5.2.5E-Waste5.2.6Energy Consumption5.2.7Positive Environmental Impact5.2.8Layout, Colour Paradigms & Character Sets5.2.9Computers in the Workplace5.2.10Automated Decision-Making5.2.11Artificial Intelligence5.2.12Monitoring Behaviour5.2.13Analysing Personal Information5.2.14Piracy & Offensive Communication
6Elements of Computational Thinking
6.1Thinking Abstractly
6.2Thinking Ahead
6.3Thinking Procedurally
6.4Thinking Logically
6.5Thinking Concurrently
7Problem Solving & Programming
7.1Programming Techniques
7.2Programming Construction
Practice questions on Karnaugh Maps
Can you answer these? Test yourself with free interactive practice on Seneca — used by over 10 million students.
- 1Which expression is represented by the Karnaugh map shown?Multiple choice
- 2Which expression is represented by the Karnaugh map shown?Multiple choice
- 3Which expression is represented by the Karnaugh map shown?Multiple choice
- 4Which expression is represented by the Karnaugh map shown?Multiple choice
Unlock your full potential with Seneca Premium
Unlimited access to 10,000+ open-ended exam questions
Mini-mock exams based on your study history
Unlock 800+ premium courses & e-books