0% found this document useful (0 votes)
19 views

Boolean Algebra & Basic Definition

Uploaded by

Vines 747
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views

Boolean Algebra & Basic Definition

Uploaded by

Vines 747
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 26

Digital Logic Design

Boolean Algebra and Logic Gate

Digital Logic Design


2.2 BASIC DEFINITIONS
 A set is collection of elements having the same property.
 S: set, x and y: element or event
 For example: S = {1, 2, 3, 4}
» If x = 2, then xÎS.
» If y = 5, then y S.
 A binary operator defines on a set S of elements is a rule that
assigns, to each pair of elements from S, a unique element from
S.
 For example: given a set S, consider a*b = c and * is a binary operator.
 If (a, b) through * get c and a, b, cÎS, then * is a binary operator of S.
 On the other hand, if * is not a binary operator of S and a, bÎS, then c 
S.

Digital Logic Design


2.1 Algebras
 What is an algebra?
 Mathematical system consisting of
» Set of elements (example: N = {1,2,3,4,…})
» Set of operators (+, -, ×, ÷)
» Axioms or postulates (associativity, distributivity, closure, identity
elements, etc.)
 Why is it important?
 Defines rules of “calculations”
 Note: operators with two inputs are called binary
 Does not mean they are restricted to binary numbers!
 Operator(s) with one input are called unary

Digital Logic Design


BASIC DEFINITIONS
 The common postulates used to formulate algebraic structures are:
1. Closure: a set S is closed with respect to a binary operator if, for every
pair of elements of S, the binary operator specifies a rule for obtaining a
unique element of S.
 For example, natural numbers N={1,2,3,...} is closed w.r.t. the binary
operator + by the rule of arithmetic addition, since, for any a, bÎN, there is
a unique cÎN such that
» a+b = c
» But operator – is not closed for N, because 2-3 = -1 and 2, 3 ÎN, but (-1)N.

2. Associative law: a binary operator * on a set S is said to be associative


whenever
 (x * y) * z = x * (y * z) for all x, y, zÎS
» (x+y)+z = x+(y+z)
3. Commutative law: a binary operator * on a set S is said to be
commutative whenever
 x * y = y * x for all x, yÎS
» x+y = y+x
Digital Logic Design
BASIC DEFINITIONS
4. Identity element: a set S is said to have an identity element with
respect to a binary operation * on S if there exists an element
eÎS with the property that
 e * x = x * e = x for every xÎS
» 0+x = x+0 =x for every xÎI I = {…, -3, -2, -1, 0, 1, 2, 3, …}.
» 1×x = x×1 =x for every xÎI I = {…, -3, -2, -1, 0, 1, 2, 3, …}.
5. Inverse: a set having the identity element e with respect to the
binary operator to have an inverse whenever, for every xÎS,
there exists an element yÎS such that
 x*y=e
» The operator + over I, with e = 0, the inverse of an element a is (-a), since
a+(-a) = 0.
6. Distributive law: if (+) and (.) are two binary operators on a set
S, (+) is said to be distributive over (.) whenever
 x + (y.z) = (x + y).(x + z)
Digital Logic Design
George Boole
 Father of Boolean algebra
 He came up with a type of linguistic algebra, the
three most basic operations of which were (and still
are) AND, OR and NOT. It was these three
functions that formed the basis of his premise, and
were the only operations necessary to perform
comparisons or basic mathematical functions.
 Boole’s system was based on a binary approach,
processing only two objects - the yes-no, true-
false, on-off, zero-one approach. George Boole (1815 - 1864)
 Surprisingly, given his standing in the academic
community, Boole's idea was either criticized or
completely ignored by the majority of his peers.
 Eventually, one bright student, claude shunnon(1916-
2001), picked up the idea and ran with it

Digital Logic Design


2.3 Axiomatic Definition of Boolean Algebra

 We need to define algebra for binary values


 Developed by George Boole in 1854

 Huntington postulates (1904) for Boolean algebra :


 B = {0, 1} and two binary operations, (+) and (.)
 Closure with respect to operator (+) and operator (.)
 Identity element 0 for operator (+) and 1 for operator (.)
 Commutativity with respect to (+) and (.)

x+y = y+x, x·y = y·x


 Distributivity of (.) over (+), and (+) over (.)

x·(y+z) = (x·y)+(x·z) and x+(y·z) = (x+y)·(x+z)


 Complement for every element x is x’ with x+x’=1, x·x’=0
 There are at least two elements x,yB such that xy
Digital Logic Design
Boolean Algebra
 Terminology:
 Literal: A variable or its complement
 Product term: literals connected by (·)
 Sum term: literals connected by (+)

Digital Logic Design


Postulates of Two-Valued Boolean Algebra
 B = {0, 1} and two binary operations, (+) and (.)
 The rules of operations: AND 、 OR and NOT.
AND OR NOT
x y X.y x y x+y x X’
0 0 0 0 0 0 0 1
0 1 0 0 1 1 1 0
1 0 0 1 0 1
1 1 1 1 1 1
1. Closure (+ and‧)
2. The identity elements
(1) + = 0
(2) · = 1

Digital Logic Design


Postulates of Two-Valued Boolean Algebra
3. The commutative laws x+y = y+x, x.y = y.x
4. The distributive laws

x. x. x. (x . y)+(x .
x y z y+z
(y+z) y z z)
0 0 0 0 0 0 0 0
0 0 1 1 0 0 0 0
0 1 0 1 0 0 0 0
0 1 1 1 0 0 0 0
1 0 0 0 0 0 0 0
1 0 1 1 1 0 1 1
1 1 0 1 1 1 0 1
1 1 1 1 1 1 1 1

Digital Logic Design


Postulates of Two-Valued Boolean Algebra

5. Complement
 x+x'=1 → 0+0'=0+1=1; 1+1'=1+0=1
 x . x'=0 → 0 . 0'=0 . 1=0; 1 . 1'=1 . 0=0

6. Has two distinct elements 1 and 0, with 0 ≠ 1

Digital Logic Design


2.4 Basic Theorems And Properties Of Boolean Algebra
Duality
 The principle of duality is an important concept. This says that
if an expression is valid in Boolean algebra, the dual of that
expression is also valid.
 To form the dual of an expression, replace all (+) operators with
(·) operators, all (·) operators with (+) operators, all ones with
zeros, and all zeros with ones.
 Following the replacement rules…
a(b + c) = ab + ac
 Form the dual of the expression
a + (bc) = (a + b)(a + c)
 Take care not to alter the location of the parentheses if they are
present.

Digital Logic Design


Basic Theorems

Digital Logic Design


Proof of x+x=x
 We can only use Huntington postulates:

Huntington postulates: Post. 2: (a) x+0=x, (b) x·1=x


Post. 3: (a) x+y=y+x, (b) x·y=y·x
Post. 4: (a) x(y+z) = xy+xz,
(b) x+yz = (x+y)(x+z)
Post. 5: (a) x+x’=1, (b) x·x’=0
 Show that x+x=x.
x+x = (x+x)·1 by 2(b)
= (x+x)(x+x’) by 5(a)
= x+xx’ by 4(b)
= x+0 by 5(b)
=x by 2(a)
Q.E.D.
 We can now use Theorem 1(a) in future proofs

Digital Logic Design


Proof of x·x=x
Huntington postulates:
 Similar to previous
proof Post. 2: (a) x+0=x, (b) x·1=x
Post. 3: (a) x+y=y+x, (b) x·y=y·x
Post. 4: (a) x(y+z) = xy+xz,
(b) x+yz = (x+y)(x+z)
Post. 5: (a) x+x’=1, (b) x·x’=0
Th. 1: (a) x+x=x

 Show that x·x = x.


x·x = xx+0 by 2(a)
= xx+xx’ by 5(b)
= x(x+x’) by 4(a)
= x·1 by 5(a)
=x by 2(b)
Q.E.D.

Digital Logic Design


Proof of x+1=1
 Theorem 2(a): x + 1 = 1 Huntington postulates:
x + 1 = 1 . (x + 1) by 2(b)
Post. 2: (a) x+0=x, (b) x·1=x
=(x + x')(x + 1) 5(a) 3: (a) x+y=y+x, (b)
Post.
= x + x' 1 4(b)
x·y=y·x
= x + x' Post.
2(b) 4: (a) x(y+z) = xy+xz,
(b) x+yz = (x+y)(x+z)
=1 5(a)
Post. 5: (a) x+x’=1, (b) x·x’=0
 Theorem 2(b): x . 0 = 0 byTh.
duality
1: (a) x+x=x
 Theorem 3: (x')' = x
 Postulate 5 defines the complement of x, x + x' = 1 and x x' = 0
 The complement of x' is x is also (x')'

Digital Logic Design


Absorption Property (Covering)
 Theorem 6(a): x + xy = x Huntington postulates:
 x + xy = x . 1 + xy by 2(b)
= x (1 + y) 4(a) Post. 2: (a) x+0=x, (b) x·1=x
= x (y + 1) 3(a) Post. 3: (a) x+y=y+x, (b) x·y=y·x
=x.1 Th 2(a) Post. 4: (a) x(y+z) = xy+xz,
(b) x+yz = (x+y)(x+z)
=x 2(b) Post. 5: (a) x+x’=1, (b) x·x’=0
Th. 2: (a) x+1=1
 Theorem 6(b): x (x + y) = x by duality
 By means of truth table (another way to proof )

x y xy x+xy
0 0 0 0
0 1 0 0
1 0 0 1
1 1 1 1
Digital Logic Design
DeMorgan’s Theorem
 Theorem 5(a): (x + y)’ = x’y’
 Theorem 5(b): (xy)’ = x’ + y’
 By means of truth table

x y x’ y’ x+y (x+y) x’y’ xy x’+y' (xy)’



0 0 1 1 0 1 1 0 1 1
0 1 1 0 1 0 0 0 1 1
1 0 0 1 1 0 0 0 1 1
1 1 0 0 1 0 0 1 0 0

Digital Logic Design


Consensus Theorem
Huntington postulates:
1. xy + x’z + yz = xy + x’z Post. 2: (a) x+0=x, (b) x·1=x
 Proof: Post. 3: (a) x+y=y+x, (b) x·y=y·x
Post. 4: (a) x(y+z) = xy+xz,
(b) x+yz = (x+y)(x+z)
Post. 5: (a) x+x’=1, (b) x·x’=0
 xy + x’z + yz Th. 2: (a) x+1=1
» = xy + x’z + 1.yz 2(a)
» = xy + x’z + (x+x’)yz 5(a)
» = xy + x’z + xyz + x’yz 3(b) &4(a)
» = (xy + xyz) + (x’z + x’zy) Th4(a)
» = xy(1 + z) + x’z (1+ y) 4(a)
» = xy + x’z Th6(a)
» QED (2 true by duality).
Digital Logic Design
Operator Precedence
 The operator precedence for evaluating Boolean
Expression is
 Parentheses
 NOT
 AND
 OR

 Examples
 x y' + z
 (x y + z)'

Digital Logic Design


2.5 Boolean Functions
 A Boolean function
 Binary variables
 Binary operators OR and AND
 Unary operator NOT
 Parentheses

 Examples
 F1= x y z'
 F2 = x + y'z
 F3 = x' y' z + x' y z + x y'
 F4 = x y' + x' z

Digital Logic Design


Boolean Functions
 The truth table of 2n entries (n=number of variables)

x y z F1 F2 F3 F4
0 0 0 0 0 0 0
0 0 1 0 1 1 1
0 1 0 0 0 0 0
0 1 1 0 0 1 1
1 0 0 0 1 1 1
1 0 1 0 1 1 1
1 1 0 1 1 0 0
1 1 1 0 1 0 0

Digital Logic Design


Boolean Functions
 Implementation with logic gates
 F4 is more economical

F2 = x + y'z

F3 = x' y' z + x' y z + x y'

F4 = x y' + x' z

Digital Logic Design


Algebraic Manipulation
 When a Boolean expression is implemented with logic gates, each
term requires a gate and each variable (Literal) within the term
designates an input to the gate. (F3 has 3 terms and 8 literal)
 To minimize Boolean expressions, minimize the number of
literals and the number of terms → a circuit with less equipment
 It is a hard problem (no specific rules to follow)
 Example 2.1
1. x(x'+y) = xx' + xy = 0+xy = xy
2. x+x'y = (x+x')(x+y) = 1 (x+y) = x+y
3. (x+y)(x+y') = x+xy+xy'+yy' = x(1+y+y') = x
4. xy + x'z + yz = xy + x'z + yz(x+x') = xy + x'z + yzx + yzx' = xy(1+z) +
x'z(1+y) = xy +x'z
5. (x+y)(x'+z)(y+z) = (x+y)(x'+z), by duality from function 4. (consensus
theorem with duality)

Digital Logic Design


Complement of a Function
 An interchange of 0's for 1's and 1's for 0's in the value of
F
 By DeMorgan's theorem
 (A+B+C)' = (A+X)' let B+C = X

= A'X' by theorem 5(a) (DeMorgan's)


= A'(B+C)' substitute B+C = X
= A'(B'C') by theorem 5(a)
(DeMorgan's)
= A'B'C' by theorem 4(b) (associative)
 Generalization: a function is obtained by interchanging
AND and OR operators and complementing each literal.
 (A+B+C+D+ ... +F)' = A'B'C'D'... F'
 (ABCD ... F)' = A'+ B'+C'+D' ... +F'
Digital Logic Design
Examples
 Example 2.2
 F1' = (x'yz' + x'y'z)' = (x'yz')' (x'y'z)' = (x+y'+z) (x+y+z')
 F2' = [x(y'z'+yz)]' = x' + (y'z'+yz)' = x' + (y'z')' (yz)‘
= x' + (y+z) (y'+z')
= x' + yz‘+y'z
 Example 2.3: a simpler procedure
 Take the dual of the function and complement each literal
1. F1 = x'yz' + x'y'z.
The dual of F1 is (x'+y+z') (x'+y'+z).
Complement each literal: (x+y'+z)(x+y+z') = F1'
2. F2 = x(y' z' + yz).
The dual of F2 is x+(y'+z') (y+z).
Complement each literal: x'+(y+z)(y' +z') = F2'

Digital Logic Design

You might also like