Lec 2
Lec 2
BOOLEAN ALGEBRA
Fall 2024
Boolean Algebra
2 © Iris H.-R. Jiang
¨ Contents
¤ Introduction
¤ Basic operations
Boolean Algebra
Introduction
3 © Iris H.-R. Jiang
¨ Boolean algebra
¤ Is the basic mathematics for logic design of digital systems
¤ Differs from ordinary algebra in the values, operations, and laws
¨ History
¤ George Boole developed Boolean algebra in 1847 and used it to
solve problems in mathematical logic
n British mathematician and philosopher
¤ Claude Shannon first applied Boolean algebra to the design of
switching circuits in 1939
n American electrical engineer and mathematician
n Master's thesis (21 years-old)
¨ In this unit, you will learn how to…
¤ Use a truth table
¤ Manipulate basic operations and apply laws of Boolean algebra
¤ Relate Boolean expressions to basic logic gates
Boolean Algebra
Boolean algebra differs
Boolean Variables from ordinary algebra in
values, operations, laws
4 © Iris H.-R. Jiang
¨ Switching devices we will use are generally two-state devices
X1 Z1
X2 . . Z2
Inputs . Switching circuit . Outputs
Xm . . Zn
Boolean Algebra
Boolean algebra differs
from ordinary algebra in
values, operations, laws
5 Basic Operations
NOT, AND, OR
Boolean Algebra
Operation -- Logic NOT
6 © Iris H.-R. Jiang
¨ Complement = Inverse = Negate = NOT (' ; ¯; ~; ¬)
¤ 0'=1, 1'=0
¤ Symbol Basic switch
A A = 0 Þ switch open
X X'
A = 1 Þ switch closed
NOT gate
Inverter
¤ Truth table
X' X = 0 Þ switch closed
Inputs Outputs
X = 1 Þ switch open
X X’
0 1
1 0
Input combinations Output values
Boolean Algebra
Operation -- Logic AND
7 © Iris H.-R. Jiang
¨ AND (•; Ù)
¤ 0 • 0 = 0, 0 • 1 = 0, 1 • 0 = 0, 1 • 1 = 1
¤ Symbol ¤ Truth table
Omit “•”
A A B C = A B
• C=A • B 0 0 0
If one input is 0
B 0 1 0
Þ output is 0
AND gate 1 0 0
1 1 1
¤ Switch (in series)
A B T = 0 Þ 1®2 open
1 2
T = 1 Þ 1®2 closed
T=A•B
Switch A closed and switch B closed
Boolean Algebra
Operation -- Logic OR
8 © Iris H.-R. Jiang
¨ OR (+; Ú)
¤ 0 + 0 = 0, 0 + 1 = 1, 1 + 0 = 1, 1 + 1 = 1
¤ Symbol ¤ Truth table
A A B C = A+B
+ C=A+B 0 0 0
If one input is 1
B 0 1 1
Þ output is 1
OR gate 1 0 1
1 1 1
¤ Switch (in parallel)
A
T = 0 Þ 1®2 open
1 2
B T = 1 Þ 1®2 closed
Boolean Algebra
9 Boolean Expressions and Truth Tables
Boolean
expression
Logic
gates
Truth table
Boolean Algebra
Boolean Expressions vs. Logic Gates
10 © Iris H.-R. Jiang
¨ A Boolean expression is formed by basic operations on
variables or constants, e.g., the simplest one: 0, 1, X, Y'
¨ Realize a Boolean expression by a circuit of logic gates
¤ Perform operations in order: Parentheses ® NOT ® AND ® OR
B
BE
•
Boolean Algebra E
Boolean Expressions vs. Truth Tables n variables
11 ÞIris2nH.-R.
© rows Jiang
¨ A truth table specifies the output values of a Boolean
expression for all possible combinations of input values
¨ Þ Check the equivalence between two expressions
¤ e.g., AB'+ C = (A + C)(B'+ C)
1 One function
A 0
has different
AB'
1 0 • 1 expressions
B + (AB' + C)
B' 1
C
Expressions show A B C B’ AB’ AB’ + C A+C B’+C (A+C)(B’+C)
the condition to 0 0 0 1 0 0 0 1 0
make output ==1 0 0 1 1 0 1 1 1 1
0 1 0 0 0 0 0 0 0
0 1 1 0 0 1 1 1 1
1 0 0 1 1 1 1 1 1
1 0 1 1 1 1 1 1 1
1 1 0 0 0 0 1 0 0
1 1 1 0 0 1 1 1 1
Boolean Algebra
Example: F = A' + B
12 © Iris H.-R. Jiang
Boolean
expression
F = A' + B
-1
to
1-
Logic
gates
A' Truth table
A F = A' + B A B A’ A’+B
+
B 0 0 1 1
0 1 1 1
1 0 0 0
1 1 0 1
Boolean Algebra
Boolean algebra differs
from ordinary algebra in
values, operations, laws
Boolean Algebra
Basic Theorems (1/3)
14 © Iris H.-R. Jiang
¨ Operations with 0 and 1
¤ X+0=X
The variable X
¤ X•1=X can be substituted
¤ X+1=1 by any expression
¤ X•0=0
¤ e.g., (AB' + D)E + 1 = 1
X
X
=
X+0=X
X
=
X+1=1
Boolean Algebra
Basic Theorems (2/3)
15 © Iris H.-R. Jiang
¨ Idempotent laws
¤ X+X=X
¤ X•X=X
X
X
X
=
X+X=X
X X X
=
X•X=X
Boolean Algebra
Basic Theorems (3/3)
16 © Iris H.-R. Jiang
¨ Involution law
¤ (X')' = X
¨ Laws of complementarity
¤ X + X' = 1
¤ X • X' = 0
¤ e.g., (AB' + D)(AB' + D)' = 0
X'
=
X + X' = 1
X X'
=
X • X' = 0
Boolean Algebra
Commutative/Associative Laws
17 © Iris H.-R. Jiang
¨ Commutative laws for AND and OR
¤ XY = YX
¤ X+Y=Y+X
¤ Proof?
Boolean Algebra
Distributive Laws (2/2)
19 © Iris H.-R. Jiang
¨ Prove a Boolean theorem/law by:
1. Truth table 2. Basic theorems
X + YZ = (X + Y)(X + Z)
=?
(X + Y)(X + Z)
X Y Z YZ X+YZ X+Y X+Z (X+Y)(X+Z)
0 0 0 0 0 0 0 0 = X(X + Z) + Y(X + Z)
0 0 1 0 0 0 1 0 = XX + XZ + YX + YZ
0 1 0 0 0 1 0 0 = X + XZ + XY + YZ
0 1 1 1 1 1 1 1
= X•1 + XZ + XY + YZ
1 0 0 0 1 1 1 1
1 0 1 0 1 1 1 1 = X(1+Z+Y) + YZ
1 1 0 0 1 1 1 1 = X•1 + YZ
1 1 1 1 1 1 1 1 = X + YZ
Boolean Algebra
Simplification Theorems
20 © Iris H.-R. Jiang
¨ Useful simplification theorems
¤ XY + XY' = X ¤ (X+Y)(X+Y') = X
¤ X + XY = X duality ¤ X(X+Y) = X
¤ (X+Y') Y = XY ¤ XY' + Y = X + Y
¨ Proof:
¤ X + XY = X•1 + XY = X(1+Y) = X•1 = X
¤ X(X+Y) = XX + XY = X + XY = X
= X
X 20 Y'
A
+ A
B • F = • F
A B
2. Z = [A + B'C + D + EF][A + B'C+ (D + EF)' ]
Find a common patter,
= [A + B'C + D + EF][A + B'C + (D + EF)' ] and symbolize it
=[ X + Y ][ X + Y' ]
= X = A + B'C
All roads lead
3. Z = (AB + C)(B'D + C'E')+(AB + C)' to Rome
= (AB + C)(B'D + C'E')+(AB + C)'
= X Y + X' = XY + X'•1 = XY + X'(1+Y)
= XY + X' + X'Y = (X+X')Y + X'
= Y + X' = B'D + C'E'+(AB + C)'
Boolean Algebra
Multiplying Out
SOP: Sum of
22 products ©
ofIris
only
H.-R. Jiang
¨ Use the ordinary distributive law single variables
X(Y + Z) = XY + XZ
to multiply out an expression to obtain a sum-of-products form
¤ e.g.,
Boolean Algebra
Example: Multiplying Out (A+BC)(A+D+E)
23 © Iris H.-R. Jiang
1. Multiply out completely and then eliminate redundant terms
(A+BC)(A+D+E) = A+AD+AE+ABC+BCD+BCE
= A(1+D+E+BC)+BCD+BCE
= A+BCD+BCE
2. Or, apply 2nd distributive law first: (X+Y)(X+Z)=X+YZ
(A+BC)(A+D+E) = A+BC(D+E)
= A+BCD+BCE
Boolean Algebra
Factoring
POS: Products
24 of sums©ofIrisonly
H.-R. Jiang
¨ Use the second distributive law single variables
X + YZ = (X + Y)(X + Z)
to factor an expression to obtain a product-of-sums form
¤ e.g.,
Boolean Algebra
Example: Factoring
25 © Iris H.-R. Jiang
1. Factor A + B'CD
A + B'CD = (A + B')(A + CD) = (A + B')(A + C)(A + D)
Iteratively apply
2nd distributed law
3. DIY: Factor C'D + C'E' + G'H
Boolean Algebra
SOP vs. Logic Gates
26 © Iris H.-R. Jiang
¨ Realize SOPs by two-level circuits (AND-OR)
¤ AB' + CD'E + AC'E' ¤ A + B' + C + D'E
AND OR AND OR
A D'
• •
B' E A
B'
+
C
C
D' • +
E
A
C' •
E'
Boolean Algebra
POS vs. Logic Gates
27 © Iris H.-R. Jiang
¨ Realize POSs by two-level circuits (OR-AND)
¤ (A + B')(C + D + E)(A + C' + E') ¤ AB'C(D' + E)
OR AND OR AND
A A
+ B'
B' D' C •
+
C E
D' + •
E
A
C' +
E'
Boolean Algebra
DeMorgan’s Laws
28 © Iris H.-R. Jiang
¨ Complement a Boolean expression by DeMorgan’s laws
¤ (X + Y)' = X'Y' ¤ (XY)' = X' + Y'
¤ Proof: By truth table
¨ Generalize to n variables:
¤ (X1+X2+…+Xn)' = X1'X2'... Xn' ¤ (X1X2…Xn)' = X1'+X2'+...+ Xn'
¨ One-step rule:
¤ [f(x1,x2,…,xn,0,1,+,•)]' = f(x1', x2',…,xn',1,0,•,+)
n x « x'; + « •; 0 « 1
Boolean Algebra
Example: Complementing (AB' + C)D' + E
29 © Iris H.-R. Jiang
1. Iteratively apply DeMorgan’s laws:
[(AB' + C)D' + E]' = [(AB' + C)D' ]'E'
= [(AB' + C)'+D]E'
= [(AB')'C'+D]E' NOT is applied only
to single variables
= [(A'+B)C'+D]E'
2. Or, use one-step rule:
[(AB' + C)D' + E]' = [(((A • B')+C) • D')+ E]'
= (((A'+B) •C') +D ) • E'
Boolean Algebra
Duality
30 © Iris H.-R. Jiang
¨ Dual:
¤ [f(x1,x2,…,xn,0,1,+,•)]D= f(x1,x2,…,xn,1,0,•,+)
n + « •; 0 « 1
¨ Cf. DeMorgan’s laws:
¤ [f(x1,x2,…,xn,0,1,+,•)]' = f(x1',x2',…,xn',1,0,•,+)
n x « x'; + « •; 0 « 1
¨ Þ Find the dual of an expression:
¤ Complement the entire expression
¤ Complement each individual variable
¨ e.g., (XYZ…)D = X + Y + Z + …
¨ e.g., (AB' + C)D = ?
(AB' + C)' = (A'+B)C' Þ (AB' + C)D = (A+B')C
¨ Application: F = G Û FD = GD
Boolean Algebra