Professional Documents
Culture Documents
Boolean Algebra
Boolean Algebra
Boolean Algebra
> A Boolean algebra
= A set of operators (e.g. the binary operators: +, , INV) = A set of axioms or postulates
ENEE 644
Postulates
> Commutative > Distributive > Identities > Complement
Closure Associative x+y = y+x xy=yx x+(yz)=(x+y)(x+z) x(y+z)=xy+xz x+0=x x1=x x+x=1 xx=0 x+y xy (x+y)+z=x+(y+z) (xy)z=x(yz)
ENEE 644 3
Proof of Consensus
> a <= b essentially implies that if a =1 then b =1 and if a = 0 then b
could be anything Theorem: In Consensus xy + xz + yz = xy + xz (How?) We Prove that xy + xz + yz >= xy + xz and xy + xz + yz <= xy + xz (This would imply equality and prove the theorem) Proof: First: xy + xz + yz >= xy + xz. Let xy + xz = a and yz = b; So we want to prove that a + b >= a which is true by definition of the inequality Second: xy + xz + yz <= xy + xz. This inequality could be split into xy + xz <= xy + xz and yz <= xy + xz All we need to do is to prove yz <= xy + xz
ENEE 644
Proof of Consensus
yz <= xy + xz We know that a <= b iff ab = 0 (How?) So if the above inequality is true yz(xy + xz) = 0 must be true. Which is always true. Hence Proved.
ENEE 644
Boolean Functions
> A Boolean function is a mapping f(x): Bn B.
= Constant function: f(x1,,xn) = b. = Projection (to the i-th axis): f(x1,,xn) = xi.
for all xBn. Otherwise the point x that f(x) is not defined is called a dont care condition. > Operations on Boolean functions:
= Sum: = Product: = Complement: (f+g)(x) = f(x) + g(x) (fg)(x) = f(x)g(x) (f)(x) = (f(x))
ENEE 644 7
x 0 0 0 0 1 1 1 1
y 0 0 1 1 0 0 1 1
z 0 1 0 1 0 1 0 1
f 0 1 0 1 0 1 1 1
x y z y x
8
ENEE 644
x 0 0 0 0 1 1 1 1
y 0 0 1 1 0 0 1 1
z 0 1 0 1 0 1 0 1
f 0 1 0 1 0 1 1 1
x y z y x
9
ENEE 644
fx
/ x i'
( x1 , L , x i 1 , x i + 1 , L , x n )
f ( x1 , L , x i 1 , x i , x i + 1 , L , x n ) = x i f x i + x i, f x , = ( x i + f x , ) ( x i, + f x i )
i i
ENEE 644
10
= Define g(x,y) = f(x+y)f(x+y) g(x,y) = xg(1,y) + xg(0,y) = xf(1)f(y) + xf(y)f(1) = f(1)f(y) = What if expand w.r.t variable y? f(x+y) f(x+y) =yf(1)f(1) + yf(x)f(x) = yf(1)+yf(1)f(0) = f(1)(yf(1) + yf(0)) =f(1)f(y)
ENEE 644 11
x y
x y
Hardware? Delay? 1 y
ENEE 644
12
Complete Expansion
f ( x1 , L , x n 1 , x n ) =
discriminants
f ( 0 , L ,0 ,0 ) x L x
' 1
' n 1
' n
minterms
+ f (1, L ,1,1) x1 L x n 1 x n
ENEE 644
13
Canonical Forms
> A form is called canonical if the representation of
the function in that form is unique. > Minterm Canonical Form
= AND-OR circuits
ENEE 644
14
ENEE 644
15
Implicants
> An implicant of a function is a product term that is
included in the function. > An implicant is prime if it cannot be included in any other implicants. > A prime implicant is essential if it is the only one that includes a minterm. Example: f(x,y,z) = xy + yz xy(not I),xyz(I, not PI), xz(PI,not EPI), yz(EPI)
ENEE 644
xyz
xyz xyz
xyz
x
16
ENEE 644
17
{xy,xy}