0% found this document useful (0 votes)
11 views29 pages

EEE 241 - Lecture 05 & 06

dld lecture

Uploaded by

zoya351344
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views29 pages

EEE 241 - Lecture 05 & 06

dld lecture

Uploaded by

zoya351344
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 29

EEE241 Digital Logic Design (DLD)

Lecture 5 – Boolean Algebra

Dr. Muhammad Rizwan Azam


COMSATS University Islamabad (CUI) Islamabad, Pakistan.
Lecture Outline

• Boolean Algebra & Logic Gates


• Background
• Basic Definitions
• Axiomatic Definitions
• Basic Theorems
• How to make Logic Circuits
• How to simplify Logic Circuits
Algebras

 What is an algebra?
 Mathematical system consisting of
 Set of elements
 Set of operators
 Axioms or postulates

 Why is it important?
 Defines rules of “calculations”
 Example: arithmetic on natural numbers
 Set of elements: N = {1,2,3,4,…}
 Operator: +, –, *
 Axioms: associativity, distributivity, closure, identity elements, etc.
 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

3
Basıc Definitions

 A set is collection of objects 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 defined 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 4
Basıc Definitions
 The most common postulates used to formulate various algebraic
structures are as follows:
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
5
Basıc 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)

6
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 (detailed in his 'An Investigation
of the Laws of Thought, on Which Are Founded
the Mathematical Theories of Logic and
Probabilities', 1854) was based on a binary
approach, processing only two objects - the yes- George Boole (1815 -
no, true-false, on-off, zero-one approach. 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 Shannon
(1916-2001), picked up the idea and ran with it

7
Axiomatic Definition of Boolean Algebra

 Huntington postulates defines Boolean algebra


formally (1904):
 B = {0, 1} and two binary operations, + and .
1. Closure with respect to operator + and operator ·
2. Identity element 0 for operator + and 1 for operator ·
3. Commutativity with respect to + and ·
1.

4. Distributivity of · over +, and + over ·


5. and
6. Complement for every element x is x’ with x+x’=1,
x·x’=0
7. There are at least two elements such that
8
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
3. The commutative laws
Postulates of Two-Valued Boolean Algebra

4. The distributive laws

y+ x. x. (x . y)+(x .
x y z x.z
z (y+z) y 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
Postulates of Two-Valued Boolean Algebra

5. Complement

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

• Note
• A set of two elements
• + : OR operation; . : AND operation
• A complement operator: NOT operation
• Binary logic is a two-valued Boolean algebra
Boolean V/s Arithmetic
Algebra
• Distributive Law:
• “+” over “•” (i.e., x + (y • z) = (x + y) • (x + z) ) is valid for
Boolean algebra, but not for ordinary algebra
• Inverse:
• No additive or multiplicative inverse
• So, no subtraction and no division operations
• Complement:
• Ordinary algebra does not have complement
• # of elements
• Ordinary algebra deals with real numbers (∞ set of elements).
However B = {0,1}
Duality Principle
 The principle of duality 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.
 Form the dual of the expression

 Following the replacement rules…

 Take care not to alter the location of the parentheses if


they are present.

13
Basic Theorems

14
Boolean Theorems
 Huntington’s postulates define some rules
 Need more rules to modify algebraic expressions
 Theorems that are derived from postulates
 What is a theorem?
 A formula or statement that is derived from postulates (or other
proven theorems)
 Basic theorems of Boolean algebra
 Theorem 1 (a): x + x = x (b): x · x = x
 Looks straightforward but needs to be proven !

15
Proof of x+x = x (Theorem 1a)
 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)
 Show that x+x=x. Post. 5: (a) x+x’=1, (b) x·x’=0
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

16
Proof of x· x = x (Theorem 1b)
Huntington postulates:

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


Post. 3: (a) x+y=y+x, (b) x·y=y·x
 Similar to the previous
proof
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.

17
Proof of x+1 = 1 (Theorem 2)
 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) Post.
5(a)3: (a) x+y=y+x, (b) x·y=y·x
Post. 4: (a) x(y+z) = xy+xz,
= x + x' 1 4(b)
(b) x+yz = (x+y)(x+z)
= x + x' 2(b)5: (a) x+x’=1,
Post. (b) x·x’=0
=1 Th. 1: (a)5(a)x+x=x
 Theorem 2(b): x . 0 = 0 by duality
 Theorem 3: (x')' = x
 Postulate 5 defines the complement of x, x + x' = 1 and x x' = 0
 The complement of x' is x and is also (x')'

18
Absorption Theorem
• Huntington postulates:
Theorem 6(a): x + xy = x
• x + xy = x . 1 + xy by 2(b) Post. 2: (a) x+0=x, (b) x·1=x
= x (1 + y) 4(a) Post. 3: (a) x+y=y+x, (b) x·y=y·x
= x (y + 1) 3(a) Post. 4: (a) x(y+z) = xy+xz,
= x.1 Th 2(a) (b) x+yz = (x+y)(x+z)
Th. 1: (a) x+x=x
=x 2(b)
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+x
y
0 0 0 0
0 1 0 0
1 0 0 1
1 1 1 1
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
Operator Precedence

 The operator precedence for evaluating Boolean


Expression is
1. Parentheses
2. NOT
3. AND
4. OR
 Examples
 x y' + z
 (x y + z)'

21
Boolean Functions

• Boolean algebra deals with binary variables and logic operations.


• A Boolean function expresses the logical relationship between
binary variables, evaluated at all possible values.
• A Boolean function consists of
• 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
Boolean Functions

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

• Two Boolean expressions may specify the same function


• F3 = F4
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
Algebraic Manipulation

• By manipulating a Boolean expression according to the rules


of Boolean algebra, it is sometimes possible to obtain a
simpler expression for the same function
• Thus reduce the number of gates in the circuit and the
number of inputs to the gate.
• To minimize Boolean expressions
• Literal: a primed or unprimed variable (an input to a gate)
• Term: an implementation with a gate
• The minimization of the number of literals and the number of
terms → a circuit with less equipment
• F = x + x’y (2 terms but 3 literals)
• It is a hard problem (no specific rules to follow)
Boolean Functions
Simplification
• Simplify the function given in previous Example

• The function is reduced to only two terms and can be


implemented with fewer gates
Algebraic Manipulation Examples

• Simplify following functions to minimum literals.


• x(x'+y) = xx' + xy
= 0+xy = xy
• x+x’y = (x+x')(x+y)
= 1 (x+y) = x+y
• (x+y)(x+y') = x+xy+xy'+yy’
= x(1+y+y') = x
• 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
• (x+y)(x'+z)(y+z) = (x+y)(x'+z), by duality from function 4.
(consensus theorem with duality)
Complement of a Function

• An interchange of 0's for 1's and 1's for 0's in the value of F
• Complement can be derived algebraically by DeMorgan's theorems (for
two variables)
• (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)
• Generalizations: Complement of 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'
Examples

• Example 2.2 - Complement by DeMorgan's theorems


• 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'

You might also like