0% found this document useful (0 votes)
19 views23 pages

Chapter - 2 - Boolean Algebra and Logic Gates-Part - 1

This document contains information about a chapter on Boolean algebra from a course on digital logic design. It includes definitions of basic concepts in Boolean algebra like sets, binary operators, and postulates. It also discusses George Boole, who developed Boolean algebra, and defines the axiomatic rules for two-valued Boolean algebra using 0 and 1. The document defines terms like literals, product terms, and sum terms and outlines some basic theorems in Boolean algebra, including the principle of duality.

Uploaded by

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

Chapter - 2 - Boolean Algebra and Logic Gates-Part - 1

This document contains information about a chapter on Boolean algebra from a course on digital logic design. It includes definitions of basic concepts in Boolean algebra like sets, binary operators, and postulates. It also discusses George Boole, who developed Boolean algebra, and defines the axiomatic rules for two-valued Boolean algebra using 0 and 1. The document defines terms like literals, product terms, and sum terms and outlines some basic theorems in Boolean algebra, including the principle of duality.

Uploaded by

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

Faculty of

Engineering

ECE203
Digital Logic Design

Chapter 2
Boolean Algebra and Logic Gate

Dr. Ahmed Mohamed Abdeltawab


Electronics and Communication Department

ECE 203 Digital Logic Design Ch2-1


Algebras
Faculty of
Engineering

◼ 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

ECE 203 Digital Logic Design Ch2-2


BASIC DEFINITIONS
Faculty of
Engineering

 A set is collection of 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.

ECE 203 Digital Logic Design Ch2-3


BASIC DEFINITIONS
Faculty of
Engineering

 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
ECE 203 Digital Logic Design Ch2-4
BASIC DEFINITIONS
Faculty of
Engineering

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)

ECE 203 Digital Logic Design Ch2-5


George Boole
Faculty of
Engineering

 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 George Boole (1815 - 1864)
objects - the yes-no, true-false, on-off, zero one approach.
 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

ECE 203 Digital Logic Design Ch2-6


Axiomatic Definition of Boolean Algebra
Faculty of
Engineering

 We need to define algebra for binary values


◆ Developed by George Boole in 1854

 Huntington postulates for Boolean algebra (1904):


 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


ECE 203 Digital Logic Design Ch2-7
Boolean Algebra
Faculty of
Engineering

 Terminology:
◆ Literal: A variable or its complement
◆ Product term: literals connected by •
◆ Sum term: literals connected by +

ECE 203 Digital Logic Design Ch2-8


Postulates of Two-Valued Boolean Faculty of

Algebra
Engineering

 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

ECE 203 Digital Logic Design Ch2-9


Postulates of Two-Valued Boolean Faculty of

Algebra
Engineering

3. The commutative laws


4. The distributive laws

x y z y+z x.(y+z) x.y x.z (x.y)+(x.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

ECE 203 Digital Logic Design Ch2-10


Duality
Faculty of
Engineering

 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.
 Form the dual of the expression
a + (bc) = (a + b)(a + c)
 Following the replacement rules…
a(b + c) = ab + ac
 Take care not to alter the location of the parentheses if they
are present.

ECE 203 Digital Logic Design Ch2-11


Basic Theorems
Faculty of
Engineering

ECE 203 Digital Logic Design Ch2-12


Boolean Theorems
Faculty of
Engineering

 Huntington’s postulates define some rules


Post. 1:
closure
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

 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 !

ECE 203 Digital Logic Design Ch2-13


Proof of x+x=x
Faculty of
Engineering

 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

ECE 203 Digital Logic Design Ch2-14


Proof of x·x=x
Faculty of
Engineering

 Similar to previous Huntington postulates:


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.

ECE 203 Digital Logic Design Ch2-15


Proof of x+1=1
Faculty of
Engineering

Huntington postulates:
 Theorem 2(a): x + 1 = 1
Post. 2: (a) x+0=x, (b) x·1=x
x + 1 = 1.(x + 1) by 2(b) Post. 3: (a) x+y=y+x, (b) x·y=y·x
=(x + x')(x + 1) 5(a) Post. 4: (a) x(y+z) = xy+xz,
(b) x+yz = (x+y)(x+z)
= x + x' 1 4(b) Post. 5: (a) x+x’=1, (b) x·x’=0
Th. 1: (a) x+x=x
= x + x' 2(b)
=1 5(a)
 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 is also (x')'

ECE 203 Digital Logic Design Ch2-16


Absorption Property (Covering)
Faculty of
Engineering

 Theorem 6(a): x + xy = x Huntington postulates:

◆ 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
Post. 4: (a) x(y+z) = xy+xz,
= x (y + 1) 3(a) (b) x+yz = (x+y)(x+z)
= x.1 Th 2(a) Post. 5: (a) x+x’=1, (b) x·x’=0
Th. 1: (a) x+x=x
=x 2(b)

 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

ECE 203 Digital Logic Design Ch2-17


DeMorgan’s Theorem
Faculty of
Engineering

 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

ECE 203 Digital Logic Design Ch2-18


Consensus Theorem
Faculty of
Engineering

1. xy + x’z + yz = xy + x’z
2. (x+y)•(x’+z)•(y+z) = (x+y)•(x’+z) -- (dual)
 Proof:
xy + x’z + yz = xy + x’z + (x+x’)yz
= xy + x’z + xyz + x’yz
= (xy + xyz) + (x’z + x’zy)
= xy + x’z
QED (2 true by duality).

ECE 203 Digital Logic Design Ch2-19


Operator Precedence
Faculty of
Engineering

 The operator precedence for evaluating Boolean Expression


is
◆ Parentheses
◆ NOT
◆ AND
◆ OR
 Examples
◆ x y' + z
◆ (x y + z)'

ECE 203 Digital Logic Design Ch2-20


Boolean Functions
Faculty of
Engineering

 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

ECE 203 Digital Logic Design Ch2-21


Boolean Functions
Faculty of
Engineering

 The truth table of 2n entries

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

ECE 203 Digital Logic Design Ch2-22


Boolean Functions
Faculty of
Engineering

 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

ECE 203 Digital Logic Design Ch2-23

You might also like