1
00:02:29,000 --> 00:02:36,000
In the last lecture we talked about logic
functions and truth tables and how it can
2
00:02:38,460 --> 00:02:45,460
be implemented using gates. We took a simple
example of a function F which is if I remember
3
00:02:49,480 --> 00:02:56,480
was A OR BAND NOT C.
That means we said there is a digital system
4
00:02:58,850 --> 00:03:05,850
or a circuit we call it whatever there are
three inputs A B C and an output F and this
5
00:03:10,870 --> 00:03:17,870
output F is true for this condition of the
input combinations which is output is true
6
00:03:20,080 --> 00:03:27,080
if A is true OR if B is true and C is NOT
true. And we were able to realize this using
7
00:03:31,890 --> 00:03:38,890
gates a NAND gate to get B and NOT C and an
inverter to get NOT C out of C and an OR gate
8
00:03:42,560 --> 00:03:49,560
to combine A and
this term. We just took the arbitrary gate
structure and wrote the logic function and
9
00:03:57,350 --> 00:04:04,350
we also said that this is true under these
conditions it could be a control for a particular
10
00:04:05,540 --> 00:04:12,000
operation any different situation and then
we wrote the truth table with A B C as the
11
00:04:12,000 --> 00:04:19,000
input variables and the output F and we defined
certain things like min terms, sum of products
12
00:04:19,970 --> 00:04:21,549
and so forth.
13
00:04:21,549 --> 00:04:28,549
Many times either given a function before
you implement it as a logic circuit with gates
14
00:04:35,130 --> 00:04:42,130
or given a logic circuit and you analyze the
behavior we are not sure whether that is the
15
00:04:43,820 --> 00:04:50,530
simplest possible circuit in terms of number
of gates and number of inputs of each of these
16
00:04:50,530 --> 00:04:57,530
gates to retain the same function.
If I enable to get a same function implemented
17
00:04:58,510 --> 00:05:02,950
using a smaller number of gates or with smaller
number of inputs for a given gate I would
18
00:05:02,950 --> 00:05:09,750
prefer that because it is a saving in hardware.
So that has to be some methods of finding
19
00:05:09,750 --> 00:05:16,750
out whether what we have is the simplest possible
realization, if not what are the techniques
20
00:05:18,860 --> 00:05:25,860
we can use to reduce the given function or
a given circuit to a simpler form.
21
00:05:25,970 --> 00:05:32,140
As I said the other day there are two approaches;
one is called the Boolean algebra the mathematical
22
00:05:32,140 --> 00:05:39,140
tool wherein you write the function and use
some identities apply these identities to
23
00:05:43,550 --> 00:05:50,550
this function to the left hand side and right
hand side and simplify it to the extent possible.
24
00:05:50,700 --> 00:05:57,700
But the problems with such an approach is
we never know which is the minimum possible
25
00:05:58,260 --> 00:06:04,580
whether we reached a minimum because an identity
may not strike you, somebody else may think
26
00:06:04,580 --> 00:06:11,580
of something which you may not be able to
think of. You can never be sure of whether
27
00:06:12,690 --> 00:06:16,849
a particular minimization reduction is the
simplest.
28
00:06:16,849 --> 00:06:22,000
The other approach is the graphical method
where there is a systematic technique applied
29
00:06:22,000 --> 00:06:29,000
to a given function till we reach a specific
minimization beyond which we cannot go. But
30
00:06:29,650 --> 00:06:36,650
of course this graphical is sort of integrated
into a mechanized or automatic procedure.
31
00:06:43,280 --> 00:06:49,330
So you automate the procedure so that you
will not make a mistake. Hence it is not that
32
00:06:49,330 --> 00:06:55,860
graphical method it is called map method we
will see that it is not that it is totally
33
00:06:55,860 --> 00:06:58,040
a different technique compared to a Boolean
algebra.
34
00:06:58,040 --> 00:07:05,040
Boolean algebra is the algebra based on the
identity the logical behavior of these variables
35
00:07:05,630 --> 00:07:09,820
under different combinations and the same
thing will be applied in the systematic way
36
00:07:09,820 --> 00:07:16,820
in a graphical sense using a map so that some
sort of a tool to go systematically into the
37
00:07:17,410 --> 00:07:24,410
function and simplify it to the extent possible.
And that is more practical, easier to implement
38
00:07:27,000 --> 00:07:34,000
and more than that once you want to do a program
or automatic way of reduction using some computer
39
00:07:34,410 --> 00:07:41,410
programs such a technique which is step based
technique an automatic procedure based technique
40
00:07:42,000 --> 00:07:47,410
becomes easier to implement in the program
so that you can get the best possible results.
41
00:07:47,410 --> 00:07:51,120
What we are seeing in the class are simple
circuits with two inputs, three inputs, four
42
00:07:51,120 --> 00:07:55,639
inputs and a maximum of five inputs and not
beyond that because we cannot handle a circuit
43
00:07:55,639 --> 00:08:01,770
like that in a classroom, in a given time,
in a given space also becomes extremely complex
44
00:08:01,770 --> 00:08:07,389
then the principle and the concept which we
are trying to teach you gets submerged in
45
00:08:07,389 --> 00:08:12,370
numbers, equations and variables that is why
we always take simple examples. But then in
46
00:08:12,370 --> 00:08:17,370
practice in reality when you talk about digital
systems as I said a digital system could be
47
00:08:17,370 --> 00:08:24,370
a micro processor, a computer or as I said
a traffic controller or as I said aircraft
48
00:08:28,100 --> 00:08:31,310
navigation system or a missile launch system.
49
00:08:31,310 --> 00:08:36,940
Think of those systems how many variables
how many conditions will be there and how
50
00:08:36,940 --> 00:08:41,110
can you do the simplification if you do not
a have systematic procedure to do that, that
51
00:08:41,110 --> 00:08:44,560
is why we go for the second method. But before
going into the second method I want to introduce
52
00:08:44,560 --> 00:08:48,709
the first method because it is the basis on
which the second method is built it is a mathematical
53
00:08:48,709 --> 00:08:55,709
method being a scientific basis on which reduction
is based. So I will briefly introduce Boolean
54
00:09:01,980 --> 00:09:08,980
algebra and not use it very much for many
reasons as I said the other day again.
55
00:09:11,470 --> 00:09:18,470
Today the reduction at the gate level has
become more or less not essential because
56
00:09:22,920 --> 00:09:29,920
you are at the days where we need to save
gates because of the large technology availability
57
00:09:31,040 --> 00:09:36,690
of gates and the availability of circuits
in which a lot of these functions can be put
58
00:09:36,690 --> 00:09:43,690
in a very simple small IC so there is a need
for reduction at the gate level which not
59
00:09:44,020 --> 00:09:48,220
as great as it is used to be. Even then it
is required because occasionally there are
60
00:09:48,220 --> 00:09:52,350
situations where you want to reduce the given
function to a fewer number of gates for many
61
00:09:52,350 --> 00:09:55,860
reasons. That is one reason.
62
00:09:55,860 --> 00:09:59,579
The second thing is we are going to use the
other method which is going to be a more practical
63
00:09:59,579 --> 00:10:04,530
method extensively in the course for that
reason also you don’t have to learn Boolean
64
00:10:04,530 --> 00:10:09,699
algebra very much. But still as I said I want
to introduce this concept. So let us again
65
00:10:09,699 --> 00:10:14,890
take the same example. this given system digital
circuit which you want to implement you remember
66
00:10:14,890 --> 00:10:21,890
there are three inputs and the three inputs
can have eight different combinations and
67
00:10:34,630 --> 00:10:41,630
for these combinations the output is true
that means if A is true the output is true
68
00:10:47,089 --> 00:10:54,089
or if B is true and C NOT true B is true C
NOT true but already this is true because
69
00:11:01,040 --> 00:11:05,080
of A is 1 so for the rest of the combinations
A output is 0.
70
00:11:05,080 --> 00:11:12,080
This is the truth table we called it and each
of this row is called a min term wherein all
71
00:11:14,550 --> 00:11:19,830
the inputs are present either in the true
form or the complement form and you can write
72
00:11:19,830 --> 00:11:26,830
a function which is true form as a sum of
products. That means this is a sum of products.
73
00:11:27,860 --> 00:11:34,860
That means we have an output which is written
as a series with terms which are AND functions.
74
00:11:35,920 --> 00:11:42,779
When you say product you give a mathematical
analogy arithmetic analogy. Even though it
75
00:11:42,779 --> 00:11:48,490
is B and NOT C you call it a product B C NOT.
When you read it you say B C bar so it is
76
00:11:48,490 --> 00:11:52,470
a product and even though it is an OR function
we call it a sum function because of this
77
00:11:52,470 --> 00:11:58,240
plus sign. So this is a sum of product but
you write it from the truth table we will
78
00:11:58,240 --> 00:12:02,519
get what is known as a canonical sum of product
I said that. So we will first write the canonical
79
00:12:02,519 --> 00:12:09,519
sum of products and the canonical sum of products
will have the min terms corresponding to each
80
00:12:16,660 --> 00:12:23,660
of these input combinations for which the
output is true.
81
00:12:23,820 --> 00:12:29,390
So when you write that you get the canonical
sum of products so each of these product terms
82
00:12:29,390 --> 00:12:36,390
is called a min term. So F is true if A is
NOT true B is true C is NOT true then on all
83
00:12:44,940 --> 00:12:51,940
possible combinations A is true B NOT true
C NOT true plus A true B NOT true C true etc
84
00:12:55,300 --> 00:13:02,300
all the four combinations. So A true B NOT
true C NOT true plus A true B NOT true C true
85
00:13:05,550 --> 00:13:12,550
plus A true B true C NOT true plus A true
B true C true. These are the five combinations
86
00:13:14,920 --> 00:13:21,920
of inputs true or NOT true for which the output
is true, the other combinations or the combinations
87
00:13:25,160 --> 00:13:27,070
for the output are false.
88
00:13:27,070 --> 00:13:32,750
If I write in this form this is a canonical
sum of products because you have all the possible
89
00:13:32,750 --> 00:13:38,060
combinations of the input combinations for
which the output is true expressed in this
90
00:13:38,060 --> 00:13:42,209
form. And as I said this also called Y is
called sum of products because it looks like
91
00:13:42,209 --> 00:13:49,209
a product term combined by a sum series. Even
though it is NAND, NOR operations we are referring
92
00:13:51,450 --> 00:13:56,339
to AND is loosely referred to as a product
operation and OR is loosely referred to as
93
00:13:56,339 --> 00:14:03,339
a sum operation and each of these terms is
called a min term. There are eight min terms
94
00:14:03,950 --> 00:14:09,920
in this out of which for five min terms the
output is true for three other min terms the
95
00:14:09,920 --> 00:14:16,200
output is false. So we write the sum function
as sum of all the min terms for which the
96
00:14:16,200 --> 00:14:18,070
output is defined as true.
97
00:14:18,070 --> 00:14:25,070
Now let me show you how to apply the Boolean
algebra to this to get this form. So now let
98
00:14:26,980 --> 00:14:33,980
us use Boolean algebra. What is a Boolean
algebra? After all it is a very simple thing.
99
00:14:35,500 --> 00:14:39,709
Again fortunately for us it is not a very
complex mathematics because each variable
100
00:14:39,709 --> 00:14:46,709
can only take two values A and A bar so it
is a binary operation. so in the binary operations
101
00:14:49,950 --> 00:14:54,420
the functions can be easily understood even
though there may be a rigorous mathematical
102
00:14:54,420 --> 00:15:00,899
proof for some of these identities and theorems
as we call it in Boolean algebra from understanding
103
00:15:00,899 --> 00:15:06,700
point of view it is only simply a two level
you can always verify it by simply giving
104
00:15:06,700 --> 00:15:10,529
two different values for each of these things
and verifying whether it is true or false.
105
00:15:10,529 --> 00:15:14,560
If you make a statement then you can quickly
say whether it is true or false by giving
106
00:15:14,560 --> 00:15:19,360
values for all the functions all the variables
in that function and each of these variables
107
00:15:19,360 --> 00:15:24,440
can only have two values so give all the possible
values and verify it for all possible input
108
00:15:24,440 --> 00:15:30,790
combinations then the output is true. So I
can verify this without any formula on mathematics
109
00:15:30,790 --> 00:15:36,880
by simply giving alternatively 0 one 0 one
for A B C and then for each one of them whether
110
00:15:36,880 --> 00:15:39,800
it is true or false and then it is verified.
111
00:15:39,800 --> 00:15:42,550
So what are the simple rules we are going
to use? I am not going to introduce Boolean
112
00:15:42,550 --> 00:15:49,550
algebra in rigorous sense as I said this is
not required. Just to give you an idea, flavor
113
00:15:49,680 --> 00:15:56,680
of this so that you should not think these
are all some heuristic procedures which may
114
00:15:58,529 --> 00:16:02,399
or may not work under different conditions
I don’t want you go with that impression
115
00:16:02,399 --> 00:16:09,180
that is why I am just introducing this to
you as a concept as I said even though it
116
00:16:09,180 --> 00:16:13,550
is not important.
117
00:16:13,550 --> 00:16:20,550
Suppose I have a function A and it has two
values for all combinations of A OR A bar
118
00:16:23,420 --> 00:16:30,019
that means I have A in other words I have
an OR gate in which two inputs are connected
119
00:16:30,019 --> 00:16:37,019
one as the function A the other is complement
of that function the output has to be 1 because
120
00:16:37,050 --> 00:16:43,209
if one of them is true the output is true
if A is true A bar is false and if A is false
121
00:16:43,209 --> 00:16:47,519
A bar is true. If one of them is going to
be true it is going to be true. So this is
122
00:16:47,519 --> 00:16:54,519
first of the Boolean identities if you want
to call it that. We will only be using such
123
00:17:02,620 --> 00:17:05,230
simplification procedures here and not great
things.
124
00:17:05,230 --> 00:17:11,850
Similarly I can have an OR combination of
variable and its compliment the output has
125
00:17:11,850 --> 00:17:17,669
to be 0 because in AND combination when both
the inputs are true only then the output can
126
00:17:17,669 --> 00:17:23,050
be true. So I am giving the variable and its
complement as inputs, one of them has to be
127
00:17:23,050 --> 00:17:30,050
necessarily false so the output has to be
necessarily false. Most of the time this itself
128
00:17:38,220 --> 00:17:44,679
will do for reducing our Boolean expressions
because when you have a redundant term a term
129
00:17:44,679 --> 00:17:49,720
with A or the term with A bar with a common
variable we can take the common variable out
130
00:17:49,720 --> 00:17:56,720
and put A plus A bar lock it of as one. Similarly
we may have this A and A bar lock it of as
131
00:17:57,570 --> 00:18:04,570
0 most of the time that is good enough. For
example, a way of a function A what I mean
132
00:18:08,370 --> 00:18:15,370
by this is suppose I have A OR AB that means
I have a gate with AB as input feed into a,
133
00:18:24,750 --> 00:18:31,750
this is not this is A and B this is A OR A
AND B.
134
00:18:36,580 --> 00:18:43,580
Now use let us use Boolean algebra; A OR AB,
what is 1 OR B? Because one is an input which
135
00:19:01,669 --> 00:19:06,810
is always true and in OR function if one of
the inputs is true the output has to be true
136
00:19:06,810 --> 00:19:13,810
so 1 OR B has to be 1. So I can lock it of
and say 1 so A AND 1 is A because if A is
137
00:19:16,639 --> 00:19:23,639
true function is true if A is false the function
is false so this is A. That means A OR AB
138
00:19:34,770 --> 00:19:41,770
is A because of the fact 1 OR A is 1, 1 AND
A is A if you want to list them all as identities
139
00:19:46,169 --> 00:19:52,299
this is one of them, identity, this is another
identity, this is another identity, this is
140
00:19:52,299 --> 00:19:56,059
another identity, this is another identity.
That means if I have a variable present in
141
00:19:56,059 --> 00:20:03,059
two terms with extra term then there is no
need for this extra term. That means this
142
00:20:03,240 --> 00:20:07,500
OR gate is redundant this AND is redundant
as if its transmission is A. If A is true
143
00:20:07,500 --> 00:20:11,340
this function is true and if A is false this
function is false.
144
00:20:11,340 --> 00:20:16,270
If you are not convinced you can always verify
it by giving a truth table. I can draw A B
145
00:20:16,270 --> 00:20:23,270
AB, I said A OR AB is A I already showed that
it can be done by using this relationship
146
00:20:37,720 --> 00:20:44,720
1 OR B is 1, A AND 1 is A but then if you
are not convinced you are always write the
147
00:20:45,600 --> 00:20:52,600
truth table A B AB A OR AB 0 0, 0 1, 1 0,
1 1, AB is 0 0 0 1 because AND gate and A
148
00:21:02,910 --> 00:21:09,910
OR AB is this or this which is 0 this or this
is 0,1 1 so this is same as this.
149
00:21:17,250 --> 00:21:24,250
This is one other way of proving Boolean algebra
or Boolean identities any Boolean identities.
150
00:21:29,840 --> 00:21:36,840
But what I have not mentioned here is all
these formulae all these properties of commutation,
151
00:21:38,240 --> 00:21:42,669
distribution and all that you are applying
to normal algebra. For example, A and B is
152
00:21:42,669 --> 00:21:49,669
same as B and A, A or B is same as B or A
so this is called commutative law, distributive
153
00:21:51,530 --> 00:21:58,530
A OR A AND B OR C is same as AB OR AC it is
a distributive law. All these simple rules
154
00:22:02,010 --> 00:22:09,010
of algebra used can be used here for example
I have used this here. Thus laws of commutation,
155
00:22:10,580 --> 00:22:14,080
distribution and all those things are applied
here also equally well.
156
00:22:14,080 --> 00:22:18,650
As I said I am not going to do rigorous Boolean
algebra treatment that is why I have left
157
00:22:18,650 --> 00:22:25,650
out those which are very simple things the
things about which we are very familiar I
158
00:22:27,370 --> 00:22:32,150
am just skipping so that we can get the essence
of this. So what I am saying is by repeated
159
00:22:32,150 --> 00:22:36,360
application of these things whenever you find
a term like this we can lock it of and get
160
00:22:36,360 --> 00:22:43,360
it so you can think of this as a simplification,
we will see two other identities and then
161
00:22:43,840 --> 00:22:45,909
we will stop this.
162
00:22:45,909 --> 00:22:52,909
For example, suppose we have A what do you
think this will be? A OR NOT A AND B. So you
163
00:23:07,330 --> 00:23:14,330
can just write this if you want to; A B, this
is 0 because of B is 0, this is 1, this has
164
00:23:34,990 --> 00:23:41,990
to be 0 because B is 0 and now I am going
to combine this with A. suppose I combine
165
00:23:44,090 --> 00:23:51,090
this with A OR NOT A AND B then this will
be 0 1 1 1 which is the same as A OR B or
166
00:23:59,960 --> 00:24:06,960
A plus B if you want to call it A plus B also
so this is another simplification possible.
167
00:24:19,360 --> 00:24:26,360
You can also prove this by using some of the
other identities you have learnt earlier.
168
00:24:27,990 --> 00:24:34,990
Similarly prove
that A bar plus AB is equal to A bar plus
B. Why am I only choosing those things is
169
00:24:57,400 --> 00:25:02,240
because every time we are knocking of a term?
Here simplification means reduction in the
170
00:25:02,240 --> 00:25:09,240
number of gates or reduction in the number
of terms of a product term because the final
171
00:25:10,409 --> 00:25:17,409
expression is a sum of product expression,
and there are two ways of reducing the logic
172
00:25:18,000 --> 00:25:24,090
one is to reduce the number of terms, number
of product terms if we reduce you will get
173
00:25:24,090 --> 00:25:30,900
a reduction or in each of the product terms
if I reduce the number of variables in that
174
00:25:30,900 --> 00:25:33,220
term then also there is reduction.
175
00:25:33,220 --> 00:25:38,860
For example, a product term is equivalent
to AND gate. There are three inputs, you will
176
00:25:38,860 --> 00:25:43,580
have three variables in the product term I
need a three input AND gate. If there are
177
00:25:43,580 --> 00:25:49,500
only two variables in the product term I only
need two inputs AND gate. So you have to reduce
178
00:25:49,500 --> 00:25:55,990
in two ways. You have to reduce the number
of product term so that the number of inputs
179
00:25:55,990 --> 00:26:02,990
with the OR gate will be reduced because some
terms fit to an OR gate, the sum of this product
180
00:26:06,720 --> 00:26:10,240
term. That means each product term is put
into an OR gate OR gate is equivalent to a
181
00:26:10,240 --> 00:26:17,240
sum, it is really OR operation but we call
it sum just for the sake of understanding.
182
00:26:17,919 --> 00:26:21,580
So how do you reduce the complexity of an
OR gate the number of inputs of an OR gate
183
00:26:21,580 --> 00:26:25,070
is by reducing the number of product terms
so that the total number of terms you need
184
00:26:25,070 --> 00:26:30,390
to sum or total number terms for which you
need to get an OR function is reduced. And
185
00:26:30,390 --> 00:26:37,390
each of these terms which are in AND gate
output can be simplified by reducing the number
186
00:26:38,320 --> 00:26:43,419
of variables in that AND gate. So, for example
if you take this logic function I can reduce
187
00:26:43,419 --> 00:26:50,419
this by two ways. There are a total of 1 2
3 4, 5 terms and any number less than 5 is
188
00:26:51,610 --> 00:26:58,610
reduction and any number less than 3 in each
of the product terms is also reduction. So
189
00:26:59,159 --> 00:27:04,690
finally we got this function. This is what
we started with. Now I have to show you using
190
00:27:04,690 --> 00:27:10,200
the Boolean algebra that we have now developed
this it is the same as this. We will do it
191
00:27:10,200 --> 00:27:13,720
in a minute.
I am reducing it two ways. I am reducing the
192
00:27:13,720 --> 00:27:20,480
number of terms from 5 to 2 and each of these
terms reduce from three variables to only
193
00:27:20,480 --> 00:27:27,260
one variable in one case and two variables
in another case so it is a two step reduction
194
00:27:27,260 --> 00:27:31,640
or two way reduction that is why I am giving
you the identities that are only relevant
195
00:27:31,640 --> 00:27:34,190
from that point of view.
196
00:27:34,190 --> 00:27:39,440
Boolean algebra as I said can be rigorously
taught as a tool of simplification of Boolean
197
00:27:39,440 --> 00:27:44,590
functions. But in a practical level we are
looking at reduction in the hardware both
198
00:27:44,590 --> 00:27:50,340
in terms of number of gates and number of
inputs to each gate. So all the identities
199
00:27:50,340 --> 00:27:57,340
which are relevant in that context namely
this is this, this, this, this, this, this,
200
00:27:59,409 --> 00:28:06,409
this, this and this all of them are knocking
of either a term altogether in this case or
201
00:28:13,010 --> 00:28:20,010
in this case I am knocking of a variable and
a term, I am knocking of a variable in a term.
202
00:28:21,330 --> 00:28:27,730
So I have given you identities which will
knock of an entire term or knock of a variable
203
00:28:27,730 --> 00:28:31,669
in a given term.
204
00:28:31,669 --> 00:28:35,450
This is the concept of Boolean algebra from
the reduction point of view; this is just
205
00:28:35,450 --> 00:28:42,450
our primary goal in this course efficient
digital design. What is the mantra? It is
206
00:28:47,080 --> 00:28:52,080
to reduce the hardware, increase reduction
of hardware, cost saving, power saving, reliability
207
00:28:52,080 --> 00:28:57,210
increases, size increases or decreases and
so on and so forth. So you keep that as a
208
00:28:57,210 --> 00:29:02,679
single point goal and from that angle if you
look at we are going in the right direction.
209
00:29:02,679 --> 00:29:06,659
Now to quickly tell you that this is the same
as this, we will do a quick analysis of this.
210
00:29:06,659 --> 00:29:13,659
This is
211
00:29:37,159 --> 00:29:41,260
the original function the canonical sum of
product written directly from the truth table
212
00:29:41,260 --> 00:29:45,720
reading of the entries from the truth table
for which the output is true. And I want to
213
00:29:45,720 --> 00:29:52,720
make it F is equal to A plus B that is the
sum of products this is the canonical sum
214
00:29:52,730 --> 00:29:59,429
of products. Any term of this type is called
sum of products because it is sum of products
215
00:29:59,429 --> 00:30:03,600
term and if it is minimum beyond which it
cannot go then it is also called a minimum
216
00:30:03,600 --> 00:30:08,220
sum of products. So my goal is to make it
as a minimum sum of products. So this is canonical
217
00:30:08,220 --> 00:30:12,080
sum of products and by repeated applications
we get sum of products which are simpler than
218
00:30:12,080 --> 00:30:16,809
this and finally you get a minimum sum of
product beyond which you cannot reduce further.
219
00:30:16,809 --> 00:30:23,809
Now how do you do this? For example, can I
use this formula AB bar C bar and C. Supposing
220
00:30:27,360 --> 00:30:34,360
I leave this term as it is on a minute
C plus C bar is 1. So I am combining these
two terms and combining these two terms. We
221
00:30:56,539 --> 00:31:03,539
can knock of this C plus C bar as 1, so this
becomes. Now again I am going to use the same.
222
00:31:35,890 --> 00:31:42,890
Now this has to be reduced to this. We can
use one of these identities here A and A bar
223
00:31:58,960 --> 00:32:05,960
and B. I have an identity here, I have a variable
and another term in which the variable is
224
00:32:06,490 --> 00:32:13,059
complemented and some other term. So we treat
this BC bar as another variable, A appears
225
00:32:13,059 --> 00:32:20,059
as A bar here so you have a variable and the
same variable repeated in the complement form
226
00:32:25,059 --> 00:32:32,059
along with another variable or along with
other variables and this extra variable can
227
00:32:32,929 --> 00:32:39,929
be knocked off. A OR A bar B is A OR B.
228
00:32:43,330 --> 00:32:50,049
That means A bar gets reduced, and here also
the A bar will get reduced. So it is the same
229
00:32:50,049 --> 00:32:57,049
as this, so if you are not convinced there
are other methods of doing it. After all as
230
00:33:03,419 --> 00:33:10,419
I said there are several ways in which you
can do it. That is the problem with the Boolean
231
00:33:12,419 --> 00:33:17,070
algebra. Y it has to strike you to apply the
right identity at the right place and you
232
00:33:17,070 --> 00:33:21,690
never know whether it can be simplified any
further, nobody is going to tell you this
233
00:33:21,690 --> 00:33:22,320
will be the simplest.
234
00:33:22,320 --> 00:33:29,059
In exams of course they will tell you, prove
that lhs is equal to rhs that is a trick,
235
00:33:29,059 --> 00:33:35,490
there is also a trap there. You somehow start
with lhs go half way start with rhs go half
236
00:33:35,490 --> 00:33:41,779
way and somehow make a big confusion, make
so many terms and strike them off, remove
237
00:33:41,779 --> 00:33:48,779
them, erase them and say therefore lhs is
equal to rhs so I don’t know but that is
238
00:33:49,070 --> 00:33:56,070
one way of looking at it. But in a rigorous
way it is a question of whether you are trying
239
00:33:57,440 --> 00:34:01,809
to do it for marks or trying to do it for
a design for living, if you are trying to
240
00:34:01,809 --> 00:34:06,409
do a design for living then make any efficient
circuit and then we will not do all those
241
00:34:06,409 --> 00:34:13,409
dirty tricks. Then you have to make sure that
you have got the simplest possible circuit.
242
00:34:13,450 --> 00:34:18,409
So if you don’t like this application here
because it may not strike you here what I
243
00:34:18,409 --> 00:34:25,409
can do is I can always combine this, I am
going to add one term here, I am going to
244
00:34:39,549 --> 00:34:46,549
reuse this term. I have already used this
term A B bar C here and simplified it here.
245
00:34:52,450 --> 00:34:59,450
I am going to reuse this term here the third
term A B bar C I am going to reuse it. Now
246
00:35:03,069 --> 00:35:10,069
if I reuse it I am going to combine these
two, A I leave, these two I will combine as
247
00:35:11,380 --> 00:35:18,380
this this is also true, I have not done anything
different.
248
00:35:32,730 --> 00:35:39,730
I should have combined the fourth term. I
should not have combined this term the fourth
249
00:35:42,290 --> 00:35:49,290
term which I have already combined once AB
C C bar ABC, I am reusing this fourth term
250
00:36:01,560 --> 00:36:08,560
so it becomes A B C bar and take B C bar out
and write it as A plus A bar and lock it of
251
00:36:12,460 --> 00:36:19,460
make it one is it valid is it legal? Yes it
is, because what is A OR A? I can have an
252
00:36:24,710 --> 00:36:30,930
OR gate with the same input tied to all the
inputs and still the output is A. A OR A is
253
00:36:30,930 --> 00:36:37,930
A, what is A AND A? A. This is saying if I
have an OR gate if A is 1 both the inputs
254
00:36:46,200 --> 00:36:51,220
are 1 and the output is 1 and if A is 0 both
the inputs are 0 and output is 0. Similarly
255
00:36:51,220 --> 00:36:58,220
in AND gate if A is 0 this also is 0, this
is 0, this is 1, this is 1, this is also 1.
256
00:37:03,070 --> 00:37:08,829
That means I can use repeatedly the same term
again and again for simplification purposes
257
00:37:08,829 --> 00:37:10,000
that is another way of doing it.
258
00:37:10,000 --> 00:37:15,730
So I have two methods here at this time. I
had this of course all this time I knew that
259
00:37:15,730 --> 00:37:22,730
there is a simpler function which is A OR
B AND C bar since I knew that I was going
260
00:37:24,530 --> 00:37:30,740
to try. Supposing I give you this problem
in the exam up to this may probably do by
261
00:37:30,740 --> 00:37:37,740
combining this A plus A bar first step clear,
clear here. Here this is the way the Boolean
262
00:37:38,290 --> 00:37:44,960
algebra’s problem comes in from the practical
point of view. You may stop here and say you
263
00:37:44,960 --> 00:37:49,190
will argue with me that after all I got this
you have to give me full marks, somebody will
264
00:37:49,190 --> 00:37:52,849
say reduce 1 mark, this is not a question
of mark as I said again.
265
00:37:52,849 --> 00:37:59,849
Therefore it is problem solving for practical
use. So here it is difficult for you to strike
266
00:38:01,730 --> 00:38:06,290
that it can be reduced further by looking
at this an identity corresponding to this
267
00:38:06,290 --> 00:38:13,290
or if you don’t strike this if it doesn’t
strike you then you have to write it this
268
00:38:17,420 --> 00:38:23,109
way but what if you don’t write it that
way then it’s okay. What I am saying is
269
00:38:23,109 --> 00:38:30,109
this way you are not sure of simplified process.
Because now I had a goal I wanted to show
270
00:38:30,310 --> 00:38:35,730
it to you that is possible I tried to put
it this way.
271
00:38:35,730 --> 00:38:41,180
If I didn’t give you this F is equal to
A plus B B C bar the easy output of this is
272
00:38:41,180 --> 00:38:47,869
the minimum possible sum. We would probably
stop here this is okay, there is nothing wrong,
273
00:38:47,869 --> 00:38:51,550
I am just saying. So Boolean algebra tool
is very useful but you have to be careful
274
00:38:51,550 --> 00:38:57,310
you should remember to apply correct identify
in the correct place and be sure when to stop
275
00:38:57,310 --> 00:39:01,170
beyond which you cannot reduce further. But
we proved that this is possible now, this
276
00:39:01,170 --> 00:39:03,720
is Boolean algebra tool.
277
00:39:03,720 --> 00:39:09,119
Now, again this is a minimum sum of products,
from canonical sum of products we came to
278
00:39:09,119 --> 00:39:14,160
sum of products. Any of these expressions
in between sum of products are not canonical,
279
00:39:14,160 --> 00:39:18,730
not minimum. This is not the original line,
this is not the final line, it is the sum
280
00:39:18,730 --> 00:39:25,640
of products because this looks like a product
terms summed into a series. Finally you have
281
00:39:25,640 --> 00:39:32,640
this which is the minimum sum of product.
And each of these terms for which the output
282
00:39:33,369 --> 00:39:37,010
is true from a truth table is called min term.
There are eight min terms out of which five
283
00:39:37,010 --> 00:39:44,010
min terms have output as true and three min
terms have output as false. So we talked about
284
00:39:44,829 --> 00:39:51,380
truth table, canonical, sum of products, min
terms, sum of products and minimum sum of
285
00:39:51,380 --> 00:39:52,290
products.
286
00:39:52,290 --> 00:39:59,290
Now an equivalent approach can be done from
a slightly different angle that is called
287
00:39:59,910 --> 00:40:04,619
De Morgan’s theorem. Again this is some
thing which you might have learnt even in
288
00:40:04,619 --> 00:40:11,619
high school in your set theory if you remember.
Do you remember set theory? Some of these
289
00:40:13,020 --> 00:40:19,380
things you learnt in set theory. I will quickly
state De Morgan’s theorem and it can also
290
00:40:19,380 --> 00:40:26,380
be done in a slightly different way using
De Morgan’s theorem.
291
00:40:27,260 --> 00:40:34,260
Suppose I have a NAND function and complement
the overall instead of complementing each
292
00:40:42,339 --> 00:40:49,339
term, I convert each variable into its complement
and convert the operation into its complement.
293
00:40:55,849 --> 00:41:02,750
OR is considered to be a complement operation
of AND. So AND operation is converted into
294
00:41:02,750 --> 00:41:09,390
OR, A converted into A bar and B converted
into B bar. So if you have a function AB A
295
00:41:09,390 --> 00:41:16,390
AND B the complement of that function can
be written as OR operation of complement of
296
00:41:19,369 --> 00:41:26,369
A and complement of B. This we already proved
when I tried to get this NAND gate concept.
297
00:41:31,040 --> 00:41:38,040
What is A AND B? This is only a NAND operation.
Did you not say this is the same as inverting
298
00:41:45,650 --> 00:41:52,650
the inputs and OR in them. Likewise I can
start with an OR operation and complement
299
00:42:08,079 --> 00:42:15,079
the whole way write it as OR complemented
as complement of AND operation, A complemented
300
00:42:15,290 --> 00:42:22,290
of A bar B complemented of B bar. Again saying
the same way that I can have a NOR gate function
301
00:42:29,640 --> 00:42:36,640
this is equivalent to complementing A and
complementing B and feeding to AND gate. These
302
00:42:39,200 --> 00:42:45,109
two identities are called De Morgan’s identities
or theorems.
303
00:42:45,109 --> 00:42:52,109
Many times the De Morgan’s theorem is used.
So if you are not clear about that F is equal
304
00:43:03,339 --> 00:43:09,490
to A plus BC bar that is for original function
we talked about you are only given the truth
305
00:43:09,490 --> 00:43:13,819
table, you are only given the min terms for
which the output is true five min terms for
306
00:43:13,819 --> 00:43:20,819
which the output is true, the original truth
table or the canonical sum of product expression
307
00:43:22,260 --> 00:43:28,560
in terms of min terms. There is another way
of approaching because there are five terms
308
00:43:28,560 --> 00:43:31,400
for which the output is true; I want to simplify
it to a minimum number.
309
00:43:31,400 --> 00:43:38,140
Can I see which of the terms for which the
output is NOT true output is false; there
310
00:43:38,140 --> 00:43:43,520
are only three of them. Out of eight possibilities
for five terms it was true and for these three
311
00:43:43,520 --> 00:43:50,089
terms it was NOT true so is it possible probably
to start with those three terms and simplify
312
00:43:50,089 --> 00:43:55,829
it may be instead of simplifying for five
terms and a smaller number? May be it is possible.
313
00:43:55,829 --> 00:44:01,630
Perhaps it is possible to start with three
terms and simplify it. This approach can be
314
00:44:01,630 --> 00:44:08,630
tried so the same truth table if you take
F is NOT true for the three possibilities.
315
00:44:13,280 --> 00:44:17,569
If you remember the original truth table I
will not write it now again. For the first
316
00:44:17,569 --> 00:44:24,569
row for the second row and for the fourth
row output is false. The original truth table
317
00:44:25,540 --> 00:44:32,540
row 1, row 2 and row 4. So what is it for
row 1? It is A bar B bar C bar for which the
318
00:44:36,339 --> 00:44:43,339
output was false so F is NOT true for this
combination, NOT true for this combination
319
00:44:49,119 --> 00:44:56,119
and NOT true for this. These are the three
combinations for which the output is NOT true.
320
00:45:04,680 --> 00:45:11,030
Now I am going to apply my De Morgan’s theorem
in that result. If I have a function its complement
321
00:45:11,030 --> 00:45:18,030
is applied by De Morgan’s theorem on each
of the terms on the right hand side. So from
322
00:45:18,569 --> 00:45:25,569
here applying De Morgan’s F can be written
as this which is same as, this operation becomes
323
00:45:48,550 --> 00:45:55,550
AND operation and this operation becomes AND
operation and each of these AND operation
324
00:45:58,190 --> 00:46:05,190
becomes OR operation, each of this AND becomes
OR and each of these variables get complemented.
325
00:46:07,920 --> 00:46:14,920
That means it becomes A OR B OR C, this is
AND complement removed, complement removed,
326
00:46:21,670 --> 00:46:28,670
and complement removed and and this OR becomes
AND C becomes complemented, B gets complemented,
327
00:46:37,460 --> 00:46:44,460
complement of B and complement of A get removed
and finally you have C bar.
328
00:46:50,500 --> 00:46:57,500
I will rewrite it here to avoid confusion.
Each of these terms is called a sum term because
329
00:47:21,020 --> 00:47:28,020
it is a sum operation and this is called a
product of sums. So this is a product of sum
330
00:47:28,150 --> 00:47:35,150
F is POS product of sum, each of this is a
sum term and multiplication of the sum terms
331
00:47:41,690 --> 00:47:48,690
gives the final expression so it is the product
of sums and it is also called MAX terms. MAX
332
00:47:50,490 --> 00:47:57,490
term is what you got directly from the truth
table. Min term when you look at the ABC type
333
00:48:00,150 --> 00:48:07,150
of thing, MAX term is when you look at A OR
B OR C so OR operation if you apply it is
334
00:48:07,569 --> 00:48:10,400
called MAX term.
335
00:48:10,400 --> 00:48:16,540
So MAX term is of all the terms of the truth
table, eight terms of the truth table and
336
00:48:16,540 --> 00:48:21,869
each of them can be written as a MAX term.
For some of the MAX terms the output is true,
337
00:48:21,869 --> 00:48:26,460
some of the MAX terms the output is false.
And product of sum expression is written using
338
00:48:26,460 --> 00:48:33,460
the MAX terms for which the output is false.
You write down the MAX terms for which the
339
00:48:34,359 --> 00:48:38,130
output is false, you get a product of sum
expression this is also called as canonical
340
00:48:38,130 --> 00:48:45,130
product of sum expression because canonical
product of sum so I can simplify this further
341
00:48:46,380 --> 00:48:53,380
by a repeated application of Boolean algebra
to give me the minimum product of sum minimum
342
00:48:58,740 --> 00:49:05,740
POS like minimum um of product. So I can start
with the truth table proceed with min term
343
00:49:07,540 --> 00:49:12,700
canonical sum of products, reduce it to a
minimum sum of products. Or given a truth
344
00:49:12,700 --> 00:49:19,700
table I can start with max terms, product
terms, write a canonical product term expression
345
00:49:22,200 --> 00:49:27,150
for the output and reduce it further to get
a minimum product of sum expression.
346
00:49:27,150 --> 00:49:34,150
If you do that by just multiplying this and
by repeated application of Boolean algebra
347
00:49:37,829 --> 00:49:43,530
you will get the expression as, I will give
you the result, I want you to try it as an
348
00:49:43,530 --> 00:49:50,530
homework F becomes A OR B I want it in this
form, I can always apply Boolean algebra,
349
00:50:01,440 --> 00:50:08,089
I said F is equal to A plus BC bar don’t
proceed from here and prove this.
350
00:50:08,089 --> 00:50:15,089
I wanted to go through this exercise of taking
the canonical product of sum expression from
351
00:50:15,609 --> 00:50:22,609
the truth table because I started with something
which is true instead of starting something
352
00:50:23,670 --> 00:50:29,839
with true I started with something as false
applied De Morgan’s that means this becomes
353
00:50:29,839 --> 00:50:34,030
something for which it is true so this is
the function. But the expression is not sum
354
00:50:34,030 --> 00:50:40,950
of product it is the product of sum expression.
I wanted to apply to this product of sum expression
355
00:50:40,950 --> 00:50:44,800
our Boolean identities known Boolean identities
or unknown Boolean identities any identity
356
00:50:44,800 --> 00:50:50,910
which I would have missed here is also fine
with me and get it in a minimum product of
357
00:50:50,910 --> 00:50:54,559
sum and that happens to be in this form, in
this form I want.
358
00:50:54,559 --> 00:51:01,559
So can you do that as an exercise that is
A OR B and A OR C bar. So now I gave you a
359
00:51:04,099 --> 00:51:07,059
flavor because I don’t want to spend too
much time on this Boolean algebra. But at
360
00:51:07,059 --> 00:51:12,569
the same time you should know that it is a
very powerful tool you used, very easy really
361
00:51:12,569 --> 00:51:13,650
what is the big deal about it?
362
00:51:13,650 --> 00:51:18,829
It is just knocking of the variable wherever
possible to reduce the complexity. You can
363
00:51:18,829 --> 00:51:24,900
lock of terms, reduce the input to the OR
gate, lock of variables to reduce the input
364
00:51:24,900 --> 00:51:31,900
of the AND gate that is the crux of the Boolean
algebra. We did that, it is not all that complicated,
365
00:51:34,119 --> 00:51:41,119
the only thing is uncertainty. The right identity
you should use if it doesn’t strike what
366
00:51:41,500 --> 00:51:48,500
happens and you never know when to stop unless
you are given what is the minimum sum because
367
00:51:49,630 --> 00:51:53,190
you are the designer nobody is going to tell
you this is the minimum if it is an exam I
368
00:51:53,190 --> 00:51:57,710
can tell you reduce to this form, if it doesn’t
come to that form then you know you have not
369
00:51:57,710 --> 00:52:03,200
got the result. But for that it is a good
tool but as I said we will remove the uncertainty
370
00:52:03,200 --> 00:52:10,200
by applying the graphical method the map method
which we will see in the next lecture.
371