
- Digital Electronics - Home
- Digital Electronics Basics
- Types of Digital Systems
- Types of Signals
- Logic Levels And Pulse Waveforms
- Digital System Components
- Digital Logic Operations
- Digital Systems Advantages
- Number Systems
- Number Systems
- Binary Numbers Representation
- Binary Arithmetic
- Signed Binary Arithmetic
- Octal Arithmetic
- Hexadecimal Arithmetic
- Complement Arithmetic
- Base Conversions
- Base Conversions
- Binary to Decimal Conversion
- Decimal to Binary Conversion
- Binary to Octal Conversion
- Octal to Binary Conversion
- Octal to Decimal Conversion
- Decimal to Octal Conversion
- Hexadecimal to Binary Conversion
- Binary to Hexadecimal Conversion
- Hexadecimal to Decimal Conversion
- Decimal to Hexadecimal Conversion
- Octal to Hexadecimal Conversion
- Hexadecimal to Octal Conversion
- Binary Codes
- Binary Codes
- 8421 BCD Code
- Excess-3 Code
- Gray Code
- ASCII Codes
- EBCDIC Code
- Code Conversion
- Error Detection & Correction Codes
- Logic Gates
- Logic Gates
- AND Gate
- OR Gate
- NOT Gate
- Universal Gates
- XOR Gate
- XNOR Gate
- CMOS Logic Gate
- OR Gate Using Diode Resistor Logic
- AND Gate vs OR Gate
- Two Level Logic Realization
- Threshold Logic
- Boolean Algebra
- Boolean Algebra
- Laws of Boolean Algebra
- Boolean Functions
- DeMorgan's Theorem
- SOP and POS Form
- POS to Standard POS Form
- Minimization Techniques
- K-Map Minimization
- Three Variable K-Map
- Four Variable K-Map
- Five Variable K-Map
- Six Variable K-Map
- Don't Care Condition
- Quine-McCluskey Method
- Min Terms and Max Terms
- Canonical and Standard Form
- Max Term Representation
- Simplification using Boolean Algebra
- Combinational Logic Circuits
- Digital Combinational Circuits
- Digital Arithmetic Circuits
- Multiplexers
- Multiplexer Design Procedure
- Mux Universal Gate
- 2-Variable Function Using 4:1 Mux
- 3-Variable Function Using 8:1 Mux
- Demultiplexers
- Mux vs Demux
- Parity Bit Generator and Checker
- Comparators
- Encoders
- Keyboard Encoders
- Priority Encoders
- Decoders
- Arithmetic Logic Unit
- 7-Segment LED Display
- Code Converters
- Code Converters
- Binary to Decimal Converter
- Decimal to BCD Converter
- BCD to Decimal Converter
- Binary to Gray Code Converter
- Gray Code to Binary Converter
- BCD to Excess-3 Converter
- Excess-3 to BCD Converter
- Adders
- Half Adders
- Full Adders
- Serial Adders
- Parallel Adders
- Full Adder using Half Adder
- Half Adder vs Full Adder
- Full Adder with NAND Gates
- Half Adder with NAND Gates
- Binary Adder-Subtractor
- Subtractors
- Half Subtractors
- Full Subtractors
- Parallel Subtractors
- Full Subtractor using 2 Half Subtractors
- Half Subtractor using NAND Gates
- Sequential Logic Circuits
- Digital Sequential Circuits
- Clock Signal and Triggering
- Latches
- Shift Registers
- Shift Register Applications
- Binary Registers
- Bidirectional Shift Register
- Counters
- Binary Counters
- Non-binary Counter
- Design of Synchronous Counter
- Synchronous vs Asynchronous Counter
- Finite State Machines
- Algorithmic State Machines
- Flip Flops
- Flip-Flops
- Conversion of Flip-Flops
- D Flip-Flops
- JK Flip-Flops
- T Flip-Flops
- SR Flip-Flops
- Clocked SR Flip-Flop
- Unclocked SR Flip-Flop
- Clocked JK Flip-Flop
- JK to T Flip-Flop
- SR to JK Flip-Flop
- Triggering Methods:Flip-Flop
- Edge-Triggered Flip-Flop
- Master-Slave JK Flip-Flop
- Race-around Condition
- A/D and D/A Converters
- Analog-to-Digital Converter
- Digital-to-Analog Converter
- DAC and ADC ICs
- Realization of Logic Gates
- NOT Gate from NAND Gate
- OR Gate from NAND Gate
- AND Gate from NAND Gate
- NOR Gate from NAND Gate
- XOR Gate from NAND Gate
- XNOR Gate from NAND Gate
- NOT Gate from NOR Gate
- OR Gate from NOR Gate
- AND Gate from NOR Gate
- NAND Gate from NOR Gate
- XOR Gate from NOR Gate
- XNOR Gate from NOR Gate
- NAND/NOR Gate using CMOS
- Full Subtractor using NAND Gate
- AND Gate Using 2:1 MUX
- OR Gate Using 2:1 MUX
- NOT Gate Using 2:1 MUX
- Memory Devices
- Memory Devices
- RAM and ROM
- Cache Memory Design
- Programmable Logic Devices
- Programmable Logic Devices
- Programmable Logic Array
- Programmable Array Logic
- Field Programmable Gate Arrays
- Digital Electronics Families
- Digital Electronics Families
- CPU Architecture
- CPU Architecture
Digital Electronics - DeMorgan's Theorem
In Boolean algebra, several rules are defined to perform operations in digital logic circuits. Boolean algebra is a tool to perform operation on binary digits, i.e. 0 and 1. These two binary digits 0 and 1 are used to denote FALSE and TRUE states of a digital circuit at input and output ends. Boolean algebra, developed by George Boole, uses 0s and 1s to create truth tables and logic expressions of digital circuits like AND, OR, NOT, etc. which are used to analyze and simplify the complex circuits.
There were another English mathematician Augustus DeMorgan who explained the NAND and NOR operations as NOT AND and NOT OR operations respectively. This explanation was named De Morgan's Theorem. In this tutorial, we will discuss the DeMorgan's theorem in detail.
What is DeMorgan's Theorem?
DeMorgan's Theorem is a powerful theorem in Boolean algebra which has a set of two rules or laws. These two laws were developed to show the relationship between two variable AND, OR, and NOT operations. These two rules enable the variables to be negated, i.e. opposite of their original form. Therefore, DeMorgan's theorem gives the dual of a logic function.
Now, let us discuss the two laws of DeMorgan's theorem.
DeMorgan's First Theorem (Law 1)
DeMorgan's First Law states that the complement of a sum (ORing) of variables is equal to the product (ANDing) of their individual complements. In other words, the complement of two or more ORed variables is equivalent to the AND of the complements of each of the individual variables, i.e.
$$\mathrm{\overline{A+B} \: = \: \bar{A} \cdot \bar{B}}$$
Or, it may also be represented as,
$$\mathrm{\lgroup A \: + \: B \rgroup' \: = \: A'\cdot B'}$$
The logic implementation of left side and right side of this law is shown in Figure 1.

Thus, DeMorgan's first law proves that the NOR gate is equivalent to a bubbled AND gate. The following truth table shows the proof of this law.
Left Side | Right Side | ||||
---|---|---|---|---|---|
Input | Output | Input | Output | ||
A | B | (A + B)' | A' | B' | A'· B' |
0 | 0 | 1 | 1 | 1 | 1 |
0 | 1 | 0 | 1 | 0 | 0 |
1 | 0 | 0 | 0 | 1 | 0 |
1 | 1 | 0 | 0 | 0 | 0 |
This truth table proves that the Boolean expression on the left is equivalent to that on the right side of the expression of DeMorgan's first law.
Also, the first law of DeMorgan's theorem can be extended to any number of variables, or a combination of variables.
For example,
$$\mathrm{\overline{A \: + \: B \: + \: C \: + \: D \: + \: E \: + \: \dotso} \: = \: \bar{A} \: \bar{B} \: \bar{C} \: \bar{D} \: \bar{E} \: \dotso}$$
Also,
$$\mathrm{\overline{ABC \: + \: DE \: + \: FGH \: + \: \dotso}\: = \: \overline{\lgroup ABC \rgroup}.\overline{\lgroup DE \rgroup}.\overline{\lgroup FGH\rgroup}.\dotso}$$
From the above discussion, we may conclude that the DeMorgan's First Law converts an expression from a sum form under a NOT sign to a product form.
DeMorgan's Second Theorem (Law 2)
DeMorgan's second law states that the complement of the product (ANDing) of variables is equivalent to the sum (ORing) of their individual complements.
In other words, the complement of two or more ANDed variables is equal to the sum of the complement of each of the individual variables, i.e.,
$$\mathrm{\overline{AB} \: = \: \overline{A} \: + \: \overline{B}}$$
It may also be represented as,
$$\mathrm{\lgroup AB \rgroup' \: = \: A' \: + \: B'}$$
The logic implementation of left and right sides of this expression is shown in Figure 2.

Hence, DeMorgan's second law proves that the NAND gate is equivalent to a bubbled OR gate. The following truth table shows the proof of this law.
Left Side | Right Side | ||||
---|---|---|---|---|---|
Input | Output | Input | Output | ||
A | B | AB | A' | B' | A' + B' |
0 | 0 | 0 | 1 | 1 | 1 |
0 | 1 | 1 | 1 | 0 | 1 |
1 | 0 | 1 | 0 | 1 | 1 |
1 | 1 | 1 | 0 | 0 | 0 |
This truth table proves that the Boolean expression on the left side is equivalent to that on the right side of the expression of DeMorgan's second law.
Similar to the first law, we may extend the DeMorgan's second law for any number of variables or combination of variables.
For example,
$$\mathrm{\overline{ABCDE \dotso} \: = \: \overline{A} \: + \: \overline{B} \: + \: \overline{C} \: + \: \overline{D} \: + \: \overline{E} \: + \: \dotso}$$
And, for a combination of variables,
$$\mathrm{\overline{\lgroup ABC \rgroup} \overline{\lgroup DE \rgroup} \overline{\lgroup FG \rgroup \dotso} \: = \: \overline{ABC} \: + \: \overline{DE} \: + \: \overline{FG}}$$
Hence, from the above discussion, we can conclude that DeMorgan's second law transforms a product form of variables or combination of variables under a NOT sign into a sum form.
Therefore, DeMorgan's laws transforms an AND operation into an OR operation, and an OR operation into an AND operation. This principle is called duality.
Example 1
Apply DeMorgan's theorem to the following Boolean expression,
$$\mathrm{F \: = \: \overline{AB \overline{ \lgroup C \: + \: D \rgroup}EF}}$$
Solution
Given expression is,
$$\mathrm{F \: = \: \overline{AB \overline{ \lgroup C \: + \: D \rgroup}EF}}$$
As the given expression has AND operation under a NOT sign, thus on applying DeMorgan's second law, we get,
$$\mathrm{F \: = \: \overline{AB} \: + \: \lgroup C \: + \: D \rgroup \: + \: \overline{EF}}$$
This is the equivalent or the dual of the given expression.
Example 2
Apply DeMorgan's theorem to the following Boolean expression,
$$\mathrm{F \: = \: \overline{AB \: + \: \overline{CD}}}$$
Solution
Given expression is,
$$\mathrm{F \: = \: \overline{AB \: + \: \overline{CD}}}$$
The given expression is in the form of a sum of variables under a NOT sign, thus on applying DeMorgan's first law, we get the dual of this expression.
$$\mathrm{F \: = \: \overline{AB} \cdot \overline{\overline{CD}} \: = \: \overline{AB} \cdot CD}$$
In this chapter, we explained the two laws of DeMorgan's Theorem and showed how they are helpful in performing different operations in digital logic circuits.