Professional Documents
Culture Documents
Boolean Logic
Stephen A. Edwards, Martha A. Kim
Columbia University
Spring 2016
1 / 40
Boolean Logic
George Boole
18151864
2 / 40
If X is men
and Y is
women, X + Y
is both men
and women,
X+Y =Y +X
and
XX = X.
and
If X is men, Y
is women, and
Z is European,
Z(X + Y) is
European men
and women
and
Z(X+Y) = ZX+ZY.
X + X = X.
3 / 40
A not operator X
A false value 0 A
A true value 1 A
4 / 40
A not operator X
A false value 0 A
A true value 1 A
Axioms
X+Y
X + (Y + Z)
X + (X Y)
X (Y + Z)
X+X
=
=
=
=
=
Y +X
(X + Y) + Z
X
(X Y) + (X Z)
1
XY
X (Y Z)
X (X + Y)
X + (Y Z)
XX
=
=
=
=
=
Y X
(X Y) Z
X
(X + Y) (X + Z)
0
4 / 40
A not operator X
A false value 0 A
A true value 1 A
Axioms
X+Y
X + (Y + Z)
X + (X Y)
X (Y + Z)
X+X
=
=
=
=
=
Y +X
(X + Y) + Z
X
(X Y) + (X Z)
1
XY
X (Y Z)
X (X + Y)
X + (Y Z)
XX
=
=
=
=
=
Y X
(X Y) Z
X
(X + Y) (X + Z)
0
X + (X Y)
X+Y =Y +X
XY =Y X
X + (Y + Z) = (X + Y) + Z
X (Y Z) = (X Y) Z
X + (X Y) = X
X (X + Y) = X
X (Y + Z) = (X Y) + (X Z)
X + (Y Z) = (X + Y) (X + Z)
X+X =1
XX=0
Lemma:
X1
X (X + X)
X (X + Y) if Y = X
X
5 / 40
X + (X Y)
= (X + X) (X + Y)
X+Y =Y +X
XY =Y X
X + (Y + Z) = (X + Y) + Z
X (Y Z) = (X Y) Z
X + (X Y) = X
X (X + Y) = X
X (Y + Z) = (X Y) + (X Z)
X + (Y Z) = (X + Y) (X + Z)
X+X =1
XX=0
Lemma:
X1
X (X + X)
X (X + Y) if Y = X
X
5 / 40
X + (X Y)
= (X + X) (X + Y)
= 1 (X + Y)
X+Y =Y +X
XY =Y X
X + (Y + Z) = (X + Y) + Z
X (Y Z) = (X Y) Z
X + (X Y) = X
X (X + Y) = X
X (Y + Z) = (X Y) + (X Z)
X + (Y Z) = (X + Y) (X + Z)
X+X =1
XX=0
Lemma:
X1
X (X + X)
X (X + Y) if Y = X
X
5 / 40
X + (X Y)
= (X + X) (X + Y)
= 1 (X + Y)
= X+Y
X+Y =Y +X
XY =Y X
X + (Y + Z) = (X + Y) + Z
X (Y Z) = (X Y) Z
X + (X Y) = X
X (X + Y) = X
X (Y + Z) = (X Y) + (X Z)
X + (Y Z) = (X + Y) (X + Z)
X+X =1
XX=0
Lemma:
X1
X (X + X)
X (X + Y) if Y = X
X
5 / 40
More properties
0+0 = 0
00 = 0
0+1 = 1
01 = 0
1+0 = 1
10 = 0
1+1 = 1
11 = 1
1+1++1 = 1
111 = 1
X+0 = X
X0 = 0
X+1 = 1
X1 = X
X+X = X
XX = X
X + XY = X
X (X + Y) = X
X + XY = X + Y
X (X + Y) = XY
6 / 40
7 / 40
XYZ + XY + XZ
X(YZ + Y + Z)
X(YZ + Y + Z + YZ)
X(YZ
+ YZ + Y + Z)
X Y(Z + Z) + Y + Z
X(Y + Y + Z)
X(1 + Z)
X
Expand
Factor w.r.t. X
Z Z + YZ
Reorder
Factor w.r.t. Y
Y +Y =1
1+Z =1
X1 = X
Sum-of-products form
Can always reduce a complex Boolean expression to a
sum of product terms:
XY + X X + Y(Z + XY) + Z
= XY + X(X + YZ + YXY + Z)
= XY + XX + XYZ + XYXY + X Z
= XY + XYZ + X Z
(can do better)
= Y(X + XZ) + X Z
= Y(X + Z) + X Z
= YX Z + X Z
= Y +XZ
9 / 40
Claude Shannon
19162001
10 / 40
Shannons MS Thesis
We shall limit our treatment to circuits containing only
relay contacts and switches, and therefore at any given
time the circuit between any two terminals must be
either open (infinite impedance) or closed (zero
impedance).
11 / 40
Shannons MS Thesis
It is evident that with the above definitions the following postulates hold.
00=0
1+1=1
1+0=0+1=1
01=10=0
0+0=0
11=1
Operator
Math
Engineer
AND
xy
XY or X Y
X
Y
XY
OR
xy
X+Y
X
Y
X+Y
Copy
Complement
Schematic
or
13 / 40
Definitions
Literal: a Boolean variable or its complement
E.g., X
XY
XYZ
XYZ
X YZ
X+Y +Z
X+Y +Z
14 / 40
X Y 6= XY
15 / 40
X Y 6= XY
Lets check all the combinations of X and Y:
X
XY
XY
XY
0
0
1
1
0
1
0
1
1
1
0
0
1
0
1
0
1
0
0
0
0
0
0
1
1
1
1
0
15 / 40
Truth Tables
0
1
0
1
0
0
0
1
16 / 40
Minterms
0
1
0
1
XY
XY
XY
XY
XY XY XY XY
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
17 / 40
Maxterms
Each row has a unique maxterm
X Y Maxterm
0
0
1
1
0
1
0
1
X+Y
X+Y
X+Y
X+Y
1
0
1
1
1
1
0
1
1
1
1
0
The maxterm is the sum term that is 1 for only its row
18 / 40
0
1
0
1
XY
XY
XY
XY
X+Y
X+Y
X+Y
X+Y
F
0
1
1
0
Expressions to Schematics
F = XY +XY
X
Expressions to Schematics
F = XY +XY
X
Expressions to Schematics
F = XY +XY
X
XY
Expressions to Schematics
F = XY +XY
X
XY
Y
XY
Expressions to Schematics
F = XY +XY
X
XY
XY +XY = F
Y
XY
Expressions to Schematics
F = X Y + X Y = (X + Y)(X + Y)
X
XY
XY +XY = F
Y
XY
(X + Y)(X + Y) = F
20 / 40
0
1
0
1
XY
XY
XY
XY
X+Y
X+Y
X+Y
X+Y
F
0
1
1
1
Expressions to Schematics 2
F = XY +XY +XY = X+Y
X
XY +XY +XY = F
X+Y =F
22 / 40
23 / 40
0
1
0
1
0
1
0
0
1
0
1
1
0
NOR
OR
+
0
1
AND
Inverter
1
1
1
+
0
1
0
1
0
0
0
0
NAND
1
0
1
0
1
0
0
1
0
1
1
1
1
0
XNOR
XOR
1
0
0
0
1
1
1
0
0
1
0
1
0
1
0
1
24 / 40
De Morgans Theorem
X+Y =XY
XY =X+Y
0
1
0
1
X+Y XY XY X+Y
0
1
1
1
1
0
0
0
0
0
0
1
1
1
1
0
25 / 40
AB
A+B
A+B
AB
26 / 40
Bubble Pushing
A
B
F
C
D
27 / 40
Bubble Pushing
A
B
F
C
D
27 / 40
Bubble Pushing
A
B
F
C
D
27 / 40
PONG
28 / 40
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
X
0
0
X
X
1
1
X
X
1
1
X
X
0
1
X
29 / 40
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
0
0
1
1
0
0
1
1
0
0
0
1
0
29 / 40
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
1
0
0
1
1
1
1
1
1
1
1
1
1
0
1
1
29 / 40
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
0
0
0
1
1
1
1
1
1
1
1
1
0
1
0
29 / 40
minterm
0
0
1
1
0
1
0
1
XY
XY
XY
XY
Y
m0
m1
m2
m3
0 m0 m1
1 m2 m3
31 / 40
minterm
0
0
1
1
0
1
0
1
XY
XY
XY
XY
Y
m0
m1
m2
m3
0 m0 m1 X
1 m2 m3 X
31 / 40
minterm
0
0
1
1
0
1
0
1
XY
XY
XY
XY
Y
X
m0
m1
m2
m3
0 m0 m1
1 m2 m3
Y
Y
31 / 40
0
0
1
1
0
1
0
1
0
1
1
1
Y
X
0 0
1 1
32 / 40
Y
X
0 0
1 1
F = XY + XY + XY
33 / 40
0 0
1 1
X
Y
X
0 0
1 1
F = XY + XY + XY
X + XY
=
Y
F = Y + XY
33 / 40
0 0
1 1
X
Y
X
0 0
1 1
F = XY + XY + XY
X + XY
=
Y
Y
X
0 0
1 1
F =X+Y
F = Y + XY
33 / 40
2)
There is a correspondence between circles on a k-map and
product term)
Essential prime implicant: circles that uniquely covers a 1 is
essential
Y
X
0 0
1 1
F =X+Y
34 / 40
YZ
00 01 11 10
X
0 m0 m1 m3 m2
1 m4 m5 m7 m6
35 / 40
YZ
00 01 11 10
X
0 m0 m1 m3 m2
1 m4 m5 m7 m6 X
Z
m0 m1 m3 m2
X
m4 m5 m7 m6
Y
35 / 40
CD
00 01 11 10
AB
00 0 1 3 2
01 4
11 12 13 15 14
10 8
9 11 10
D
B
B
A
12 13 15 14
8
9 11 10
C
36 / 40
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
0
1
1
0
1
1
1
1
1
X
X
X
X
X
0
1
1
1
1
1
0
0
1
1
1
X
X
X
X
X
0
1
1
0
1
1
1
1
1
1
1
X
X
X
X
X
0
1
0
1
1
0
1
1
0
1
0
X
X
X
X
X
0
1
0
1
0
0
0
1
0
1
0
X
X
X
X
X
0
1
0
0
0
1
1
1
0
1
1
X
X
X
X
X
0
0
0
1
1
1
1
1
0
1
1
X
X
X
X
X
0
f
g
e
c
d
37 / 40
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
0
1
1
0
1
1
1
1
1
X
X
X
X
X
0
1
0
X
1
0
1
X
1
1
1
0
X
1
1
X
X
Y
The Karnaugh Map
Sum-of-Products Challenge
Cover all the 1s and none of the 0s
using as few literals (gate inputs) as
possible.
Few, large rectangles are good.
Covering Xs is optional.
38 / 40
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
0
1
1
0
1
1
1
1
1
X
X
X
X
X
0
1
0
X
1
0
1
X
1
1
1
0
X
1
1
X
X
Y
The minterm solution: cover each 1
with a single implicant.
a = WXYZ+WXYZ+WXYZ+
WXYZ+WXYZ+WXYZ+
WXYZ+WXYZ
8 4 = 32 literals
4 inv + 8 AND4 + 1 OR8
38 / 40
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
0
1
1
0
1
1
1
1
1
X
X
X
X
X
0
1
0
X
1
0
1
X
1
1
1
0
X
1
1
X
X
Y
Merging implicants helps
Recall the distributive law:
AB + AC = A(B + C)
a = WXYZ+WY +
WXZ+WXY
4 + 2 + 3 + 3 = 12 literals
4 inv + 1 AND4 + 2 AND3 + 1 AND2
+ 1 OR4
38 / 40
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
0
1
1
0
1
1
1
1
1
X
X
X
X
X
0
1
0
X
1
0
1
X
1
1
1
0
X
1
1
X
X
Y
Missed one: Remember this is
actually a torus.
a = XYZ+WY +
WXZ+WXY
3 + 2 + 3 + 3 = 11 literals
4 inv + 3 AND3 + 1 AND2 + 1 OR4
38 / 40
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
0
1
1
0
1
1
1
1
1
X
X
X
X
X
0
1
0
X
1
0
1
X
1
1
1
0
X
1
1
X
X
Y
Taking dont-cares into account, we
can enlarge two implicants:
a = XZ+WY +
WXZ+WX
2 + 2 + 3 + 2 = 9 literals
3 inv + 1 AND3 + 3 AND2 + 1 OR4
38 / 40
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
0
1
1
0
1
1
1
1
1
X
X
X
X
X
0
1
0
X
1
0
1
X
1
1
1
0
X
1
1
X
X
Y
Can also compute the complement
of the function and invert the result.
Covering the 0s instead of the 1s:
a = WXYZ+XYZ+WY
4 + 3 + 2 = 9 literals
5 inv + 1 AND4 + 1 AND3 + 1 AND2
+ 1 OR3
38 / 40
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
1
0
1
1
0
1
1
1
1
1
X
X
X
X
X
0
1
0
X
1
0
1
X
1
1
1
0
X
1
1
X
X
Y
To display the score, PONG used a
TTL chip with this solution in it:
(13) OUTPUT
a
(12) OUTPUT
b
38 / 40