= 1+
+ *x(M))
(^x(p^)
X!
obtain
we
X!
Mp.*)
+
X!
MM)
+
(\302\260y(q>k)
+
M?>*)
+
X-
\\
+
X!
<*y(k,p))
p
+
X!
down
5(y)
breaking
By
-
+
\302\253(y)-1
\302\253(*)
M?>fe) +
X]
is lackingto concluded(x)
All that
+
0y(q>k)
if
yk
>
This can be seenby
(i)
and subtracting we obtain
similarly
p
>
the
(iii)
if
yp
0 +
0;
ifyp
0+1.
follows
that
Proof. So
far,
do now.
which we
=
+
then
ay(k,p) = 1 + 1>
+
<7y(fc,g)
then
(ry(qfk) +
+ 1 =
+
o-y(A,qr)
If x R+ y then R
+
z such that 8(x) > d(z) >
Theorem 4.8.2. an obvious
all p
5(x)
some
be
MM)).
show that for
o>y(k,q)
-
then
Proof. Supposex k > 1. If k = 1, some must
^y(p\302\273fe)
= 1
- 0
+ 0
= = =
\342\226\241
4.8.4.
Lemma
-
is to
d(y)
cases,
1 +0;
(ii)
^y(*\302\273p)
examining
X- o-y(tj).
If x R+
The
x, then
y. By >
6(y),
x Rk~*
definition of transitive closure,xRk y for by the preceding lemma. If k > 1,there z R
d(y). D transitive
y. By
of R,
Lemma4.8.3,it
R+, is irreflexive.
lemma gives b(x)> d(x),which
is
\342\226\241
shown that
intuitive notion of relative
induction and
closure
the preceding
contradiction. we have
5(x) > diy).
Algorithm
degrees of
4.8.2
must
disorder,
always
terminate.
corresponding
The to dis-
Section 4.8
Sorting
Application:
the diagram in Figure 4-22,was
tances on
Essentially,
the
of this
basis
each step of
is that
shows
4.8.3
Lemma
what
the
the degree of disorder, and thereforeonly a finite is completely steps may be performed before the sequence a more careful analysis, to see just how will now proceed with may be taken in this process. 4.8.3 Lemm& gives a quick upper bound on the number of _
each
since
Thus,
\302\273
izi * X]
\302\243 *x(ij)
the algorithm reduces5(x)by - l)/2 n(n steps on any input
step of
never take morethan
at
of
number
We
order.
in
many
steps
steps.
-
- o - n(n
\302\273pl i - X>
E
proof.
algorithm
decreases
\302\253(*>-
423
and Searching
1) \342\226\240
9
least
sequence
one, it can of length
n.
Of course,we have not shown that this number of steps is required for any input sequence, though there are several widely sorting taught for some inputs. algorithms that do perform this numberof interchanges makes One of these is the \"BubbleSort,\"which repeated bottom-to-top of pairs passes over the sequence to be sorted,comparing adjacent elements.
Though technique
has
4.8.2
Algorithm
not typical of the algorithms
A
more
in
an interesting
provided
by means
termination
of proving
use
where
of
an
ordering
long sequences
example relation,
of
the
it is
must be sorted.
of sorting is basedon the concept ofmerging two into one sorted sequence. This operationis alsoof of other because it lies at the heart of a number
method
typical
sorted
sequences in itself, fundamental algorithms, including the usualmethod of updating in data it is and because sequentialfiles processing applications. For variety, we for this as a recursive shall an natural, operation algorithm interest
present
definition.
function
Algorithm
4.8.3
Input:
Two
Output:
A
the
total ordering, merge
sentence,
single
sequence
(au..
Sequences.
= (al9..
A
sequences,
to some
according
of
Two Sorted
Merging
<.
.,an) and
B = (bu.. .,fcm>,
(A,23), which
is a sorted permutation
.,6m>.
.,an,bu..
Method:
Aif|B| = 0; merge (A,B)
=
|Bif|A| \\(bx)
Here the symbol\"
(au..
=
0;
\342\200\242 <\302\243*!> merge
\342\200\242\" stands
,,an)
\342\200\242
merge
for
\342\200\242
(blf..
(
catenation .,6n)
=
.,an),B)
sorted
if
aY
<62>.. .,6m>) if a!
<
6^
and
^ bx.
That is, (au.. .,an,bu.. .,6n). of sequences.
424
Chapter
4: Relations
and
Digraphs
If A =-(1,2,5,12,12,16) and B - < 2,3/7,13,21) then = The (1,2,2,3,5,7,12,12,13,16,21). merge (A,B) important propertiesof are stated in the following of two sequences the lemma. merge 4.8.3.
Example
Let C
4.8.5.
Lemma
sequences
with
respect
and a
sequence
to
= merge (A,23), of A
permutation
the lemmais
A-23orC
left: eitherax
<
bx or bx
< ax.
and
B are
S. Then C is alsoa
sorted sorted
\342\200\242 23.
If | A | = 0 or | B | = 0 = 23 = A-23. Supposing| A
Proof.
A
where
order on
a total
\\ >
true,
trivially
0 and
|B
\\ >
0, there
C =
since
are two
(One must hold,since< is assumed
case, C = (ax) \342\200\242 merge
=
A
cases to
be
argue that of A \342\200\242 we may assume by induction this is clearly a permutation 23, since = (on n and m) that (c2,...,cn+m) .,an), 23) is a sorted merge((a2,.. \342\200\242 permutationof
In the first
is the
Merging
algorithms.
These
.,an),
((a2,..
B). We
behind an important family sort a large list by breaking algorithms
basic concept
list into small sorted lists and then merging until they have all been combined backinto
these a single
of
sorting
the
unsorted
sorted
lists
together
sorted
list.
4.8.4. The sequence(5,4,1,2,6,3,2,3) be broken Example might below might of merges (5) (4) (1,2) (6) (3) (2,3).The sequence in the desired sorted list. then be performed,resulting into
(5) (4)-(4,5)
<1,2)<6)
\342\200\224
(3)
(2,3)
(4,5X1,2,6) (1,2,4,5,6)
(1,2,6)
\342\200\224(2,3,3) \342\200\224(1,2,4,5,6)
(2,3,3)
\342\200\224
(1,2,2,3,3,4,5,6)
of different algorithms for sorting by isbroken up and to how the originalsequence differing according that are merged used to determinethe pairsofsequences together. these is given in the algorithm below. There
are
a number
merges, the rule
One of
Section 4.8
Sorting
Application:
425
and Searching
4.8.4 Merge Sort.
Algorithm
Input:
A sequence S of n elements (aua2,.. .,an) drawn from a set with orderingrelation,denotedby <. The elements of S arranged into a nondecreasing sequence
a total Output:
is a permutation of
\342\200\242
-Ar(n)>
where
.,7r(n)>
.,n.
1,2,..
Method:
1. Break S into a collectionof up to m sorted S{1},.. .9S{m. sequences 2. Repeat the following until only one list remains: Suppose this is the beginningof the ith stage and the sequences so far are S}0,.. .,S*l). - Sj\302\260 for i = 1,.. .,Lfe/2J and SL&+j,} LetS}m)-merged, ,S\302\243,) in the case that k is odd.
The objectivebehind It can
merges.
length lessthan
21.
By the
4.8.3.
Theorem
produced by the
this is to build up large lists with few algorithm be shown that by the endofthe ith stage there is no list of
4.8.2
Algorithm
end of the ith stage(i all
have
lengths
>
1), the
>2\\ except
for
sequences (possibly)
last one. less than 1. Thus, as a have length first stage every list has length at least 2, i - 1 every list By induction, at the end of stage
Initially, no sequencemay
Proof.
basis for
after
induction,
except
last.
the
(possibly)
has length>2',except
the
(possibly)
the
last,
S{kl).
1} two lists Every new list S{ff produced by the end of stage i comesfrom > 2', except for the last one, which may be S(kl) Sy ! and S'jj*, each of length or a list created list. It follows that all but by merging S{kl) with another
the lastofthe Sf+l)
have
length
>2l+1.
\342\226\241
on the it is possible to obtain an upper bound n. Since step 2 of required to sort a list of length 4.8.4 when one list is left, supposethe end of stage i terminates Algorithm to one. Then there is reduced is the first time the number of sequences are two lists at the beginning of stage i. Thismeanseitheri = 1 or the two 1. In the latter case, we know lists were produced at the end of stage i \342\200\224 that one of the two lists is of size >21'\"1.Thus n > 21'\"1 + 1, which implies i < log2(n - 1) + 1. two that show of the complexity of merging would merging Analysis each stage of Thus sequences of combined length t takes0(C) time. 4.8.4 takes 0(n) time. Since the algorithm goesthrough at most Algorithm Using
number
this
theorem
of stages
426
Chapter
and Digraphs
4: Relations
log2(n -1) 0(n \342\200\242 log2n).
the
of
the number
bound on
upper
of
is thus
algorithm
algorithm must
result
for
specific
time complexity
is no need to show separately that this we have already shown a stronger
There terminate,
the total
1 stages,
+
stages
a
demonstrating
by
it
go through.
may
that when it Similarly, the partial correctnessof this algorithm, follows from the that S is is a sorted fact terminates S sequence, directly into sorted Lemma the broken 4.8.5, sequencesand, by merge initially of being sorted. operation preservesthe property
Exercises
4.8
for Section
1.
of values for i, l(i), m(i)> 4.8.1 with inputs x = 24 and by Algorithm the
Give
and
sequence
A
u(i)
=
computed
(1,8,9,15,24,
32,34,35,37,43,95,99).
2. Give the digraph of the relationR on P4 3. Give the degrees of disorder of the following (a)
in this
defined
section.
permutations.
(1,2,3,4)
(b) (4,3,2,1)
(c) (1,3,2,4)
(d) (3,1,4,2)
4.
Give-the
merge(A,B)
sequence
B = (1,24,93,97,101,102). Show
merges
of
shorter
where how
A = (1,24,95,100,101) and it is defined in terms of the
sequences.
= < 10,8,9,7,5,6,4,2,3,1 as input to > is given 1 it is into the broken collection of 4.8.3, Algorithm Give the (10), (8,9), (7), (5,6), (4), (2,3), (1). sequences collection of sequences as it would be at the endof each succeeding stage, until the algorithm terminates. the sequence S
5. Suppose
and
6. Complete the
and
7. Derive
8.
prove
of the
evaluations
and B
proof
at Step
of Theorem
4.8.1.
a formula for the total number function merge to evaluate merge{AyB)>
of
(recursive)
A
where
are sequences of length n and m, respectively.
Which
of a total ordering are actually used (explicitly in the proof of Lemma by this lemma fails if any one of these
properties
implicitly) that counterexample,
or
4.8.1?Prove, propertiesis
not
satisfied.
9.
10.
used (explicitly properties of a total orderingare actually in 4.8.2? the of Lemma Prove,by implicitly) proof that this lemma fails if any one of them is not satisfied. counterexample,
Which
Show
that
obtained by an algorithm
any
of permutation of at most n
the sequence
- 1 pairwise that takes as input two sequences,
a series
or
(1,2,.. .,n> can be Invent
interchanges.
A
= (au..
.,an>
Section4.8 and B =
<
bx,..
permutation .,n).
<1,2,..
wise
11.
An
427
and Searching
Sorting
Application:
the sequence A according to the .,6n) and rearranges described by B. (Assumethat B is a permutation of The desired output is
interchanges.) variation
important
sorted
sequences,
is taking the union of two which has no repetitions.Thisis defined
on merging
each of
by
=
unionCA,23)
\\
A
if|B|
B
if| A
(a^ {ax) (bx)
union((a2,..
= 0;
if ax <
bx\\
.,an>,<62,..
if ax =
bx;
.,6m))
\342\200\242
if&i
union(A,<62>-\342\200\242-,bm>)
is an odd or of elements are then the degree of disorder is interchangedin any permutation, odd an or decreased eitherincreased integer. In fact, if i < j and by is decreasedby an odd that and are d(x) interchanged, prove Xi Xj < if if > increased and x, Xj. x> Xj integer
l(i)
1
1
2
1 4 5
3
4
m(i)
6 3 4
u(i)
12 5 5 5
(a)
0
(b)
6 (The
pairs are
(c)
1 (The
(d)
3 (The
only pair only pairs
<
permutation
a pair
4.8
Section
for
1. i
4.
\342\200\242
|
.,an),23)
the degreeof disorderofany if that an even integer. Then prove
Answers
3.
union(
Observe that
12.
Selected
\342\200\242
= 0;
(4,3),(4,2),(4,1),(3,2), (3,1), (2,1).) out of order is (3,2).) out of order are (3,1),(3,2), (4,2).)
1,1,24,24,93,95,97,101,101,102)
This
is obtained
as
<1>merge\302\25324,95,100,101>, (1,24,93,97,101,102)) <1> <1> merge\302\25324,95,100,101), <24,93,97,101,102\302\273 (1>(1) (24) merge\302\25395;i00,101), (24,93,97,101,102)) (1) (1) (24) (24) (93) (97) (101) (101) (101) (102) merge\302\253), (102)).
5.
(8,9,10)
(5,6,7)
(2,3,4) (1)
(5,6,7,8,9,10)(1,2,3,4)
(1,2,3,4,5,6,7,8,9,10)
11.
The the
main case
difference between this and at = fej. Prove the following
merging is the treatmentof
lemma.
Chapter
and Digraphs
4: Relations
Let
Lemma.
without
sequences
is a
=
A
repetitions,
repetitions and
sorted sequence without
{c,-|l< i <
=
\302\243} {a,-|
1 < i
< n]
..,6m> be sorted C
U {6,.|1 < i < m}.
SORTING
TOPOLOGICAL
APPLICATION:
and B = (6lv .,an) = and C union(A,B) =
(au..
There are many situations where a natural partial orderingon a set and it is desired to extend this partial orderingto a total ordering; the elements of the set in some order that consistent is, to enumerate with the given partial ordering. of this arises in compiling programs in the programming One example exists
language
In
Ada.f
compilation
a program may be brokeninto many Each unit includes a list specifying certain
independent
information
an
Ada,
units.
must be compiled before it. From this these compiler must discover an order in which
which
these that is consistent specifications, fits This is a problem naturally relationsand digraphs.Let be the set that
binary
relation
that
must
ux
1.
on compilation J?* is
whether
digraph (U,R) containsany
of binary units. Let R be the
of compilation
units defined by ux R u2 iff it is specified compiler'sproblemis thus:
a partial orderingon directed
nontrivial
U
[i.e.,
whether
If not,
cycles].
We
call
shall
discovering algorithms
fairly
a sequence of U
such as with
the onedescribed above
respect
to
R,
such
a
call the
and
the
report that
there is no legalorderofcompilation. 2. If R* is a partial ordering, constructa sequence (ulf...fun) < in k. that U = [uly.. .,uj and for each R*9j (ujfuk) topologicalenumeration
Ada
may be compiled such an order exists.
units
before u2. The
be compiled
Determine
units
provided into the terminology
with
U
other
process of
There are severalnatural topological sorting. for this problem. We shall consider that solving to state and prove, though not necessarily simple one
oneof them is the most
efficient.
Algorithm
4.9.1
Topological
Input:
A
digraph
sort. G =
(V,E),
with
n vertices.
A topological enumeration Sn = (slf.. ,9sn Output: on V. E, providedE* isa partialordering tAda is
a registeredtrademark
of the
U.S. Department
>
of
V with
respect to
of Defense(AJPO).
Section4.9
Topological
Application:
429
Sorting
Method:
1. Let
=
U0
= ( ) (the u / v}.
V, S0
E \302\243
{u | (u,v)
and
2. Repeat the following
(a) Choosest
Ut-Ui-i -
= 0, provided that T^si) halt and output a messagethat
{*,-},
all vGV.
3. If
not
already
\342\200\242 and
S-S,..!
<*,->,
Example 4.9.1. Considerthe digraph {(a,6),(a,c),(a,e),(6,d),(6,e), (c,d), (d,e)}. The topologicalsorting described algorithm sequence
following
i
To
Si
u,
0 1 2 3 4 5
\\a,b,c,d,e\\
G
- {sjfor
where E = figure 4-24.) would compute the
is shown in above
G:
T,(a)
TAb)
TAc)
)
\\a\\
[a]
4>
T,(d)
\\b.c\\ \\b.c\\
T,(B)
la.b.d] \\b,d\\
\\c,d,e\\
(a,b)
4>
4>
4>
[c\\
id)
{d.e}
(a,b,c)
4>
4>
W
M
(a.b.c.d)
4>
4>
*
(a,b,c,d,e)
4>
4>
4>
4>
prove
topological
ordering
on
a Sn computed by this algorithm is actually of V with to E, provided E* is a partial respect need to prove a stronger theorem,onewhich V, we actually the state of completion at the endofeachstagei.
the that enumeration
G*
Figure
st
is not
= ({a,6,c,d,e},2?)
(This
B%
where
H(S)
= (bu
b2
1
if^GS
0
otherwise
bn)
with
bi =
for
i =
1,2,...,
proof that h
n. For examplewhen
n =
4, h
({uu u2, uA\\)
=
The
(1,0,1,1).
is an isomorphismis left to the reader.
ExercisesforSection 6.2
1.
Let
least
this
in a
elements
l2 be
lx and
gib (lub) then this 2. Show that if a poset
poset L. Provethat
3. Let V = {1,2,3,4,6,8,12,24} be a poset
ordering|
(\"is
with
Does the
poset
A greatest
element?
a least
have
to the partial and lub of every
respect
the gib
of\.") Determine
divisor
of elements.
pair
a
l2 have
and
L has a least element (greatestelement),then element is unique.
(greatest) a
if lt
is unique.
(lub)
gib
element?
4. Provethat
is a
gcd)
1cm,
(M;
of positive
a set
integers
N
lattice under that
represents
/, wheretherelation/ on njn2
iff
nx
is a
divisor of
n2. (1cm = least commonmultiple;gcd = greatestcommon
divisor).
5.
Prove
that if
and
lx
(lx V l2
6. Let
elements
~
(lx A l2
lx)
L be a poset with
that L (ij
=
l2 are
forms
G {1,2}),
a
lattice
a least
if for
there is an
(ij G {1,2}).
of a lattice
element
any
~
(l2
and a xlfx2fyuy2
<
A),
then
lx).
greatest element.Show \302\243E L,
element z G L such that
where x,-
<
xt < z <
yj9
y;
Section
Boolean
6.2
7.
lattice
A
<
(l2
A
V (I,
lx) ->(l2
all /i,/2,/3 G
if for
is modular
>
A
587
L,
(/2 V /3)).
= lx A
/3)
Algebras
Show that in a modular lattice /3) -
G
qi9q2
any
>
that
is a
of a
subsystem
every
algebra.
10.
/3)).
Boolean algebra is a Boolean
Boolean
algebra if a
Boolean
algebra
in any
that
Show
\342\200\242 x =
0 and
a + x
= 1,then
= a.
that in any
11. Show
four equations
the following
are
equivalent:
mutually
a
12.
(Z2 A
V
on a set Q. For relations equivalence define qx < q2 appropriately, and show that lattice under the defined operation <.
E(Q),
(2?(Q);V,A Show
x
I,
E(Q) be the setof all
8. Let
9.
(^ V
>: lx) \342\200\224 (/2 A
(/2
that a
Show
b =
-
+ b=
a, a
Boolean algebra23
(be) = (a 4-
a +
b, 5 + 6 = l,a-6
for
6)c
the
satisfies
G
all a,6,c,
23
=
0.
law:
modular where
a <
c.
(Hint: see exercise5 in section1.4.)
13.
from
functions
14.
a
Draw
a set
A
n elements
containing
of the
diagram
in the
of elements
number
the
Determine
Boolean algebra of to the set {0,1}.
all
ordering relations between all of all functions from the set
partial
elementsof the Boolean
algebra
{a,6,c,d}to{0,l}.
15.
(a)
the set of positivedivisors {l,2,5,10,ll,22,55,110}_be Show that (DUOtlcm,gcd, ,1,110) is a x - 110/x for any x G D110. where element is 1 and the a < b mean in this algebra? unit is 110. What does =
LetD110 of
110.
Thezero
(b) Showthat if 18 then definition
Dl8
=
{1,2^3,6,9,18}
(Dl8ilcmygcdy ,1,18) . of the operation
is the set of positivedivisors is not a Booleanalgebrafor
between (c) The essentialdifference that 110is square-freeand 18
square-free m2 if
Show
divides
that if Dn is the
integer n, then
x = nix for
any
the is not.
Dn.
,/,n)
two examples A positive integer n
divisors
is a
of any
above
positive integer m impliesm
set ofall positive
(Dnylcmygcd>
x G
n for
Booleanalgebra
Boolean
of a
is
is
= 1.
square-free
algebra where
Chapter 6: Boolean
Algebras
B:
(a)
a_+
(b)
ab +
(c) a
Selected
b =
a
6 \302\251
for
Answers
the
for a,b,c
hold
following
G
6 \302\251 \302\251 ab,
be = ac if < c if
a + c=6 ac = 6c iff
(d) (e)
Boolean algebra23,
that in any
Show
16.
+
< a,
c < b
a <
c and fc
c iff
a
c <
a
< c, < c,
fc \302\251
fc. \302\251
6.2
Section
9. Let thus
and
preserved Thus,
B.
be a subsystem of the Boolean algebra <23;V,A, ) the commutative, associative, and distributive laws are in
satisfy the identity
laws.
complement
and,
FUNCTIONS
BOOLEAN
Let J8 = an atom if
< 23,
a
+,
be a Boolean for every x El
algebra.
\342\200\242, ,0,1 >
=\302\243 0 and
or It is easy to showthat of all atoms in 23, then B
a G
element
An
B is called
B,
x
\342\200\242 a =
x
\342\200\242 a =
a
0.
Boolean algebra, to
B is a finite is isomorphic
if
and if
R is
the set
where ' denotesset complementation. this section.) An
immediate
of
finite
every
whose
domains
above is that
of the
corollary
the powerof the cardinality
exercises
(See
of
is a
Boolean
algebra
have the
same cardinality
power of 2. Also, must
left as an exerciseto the reader).
It is
clear
from
the
above
the cardinality
of
discussion
Boolean
be isomorphic
that the
whose
domain
is {0,1},with
the
+ ,.r,0,l>
operations
given
B is
2 to
algebras
(details
are
\"smallest\"Boolean
algebrais
j82=
end of
of the domain
the cardinality
2?. Namely,
at the
14-19
in Table
6-1.
Section6.3
X
X
+
0
1
0 1
1
0
0 1
0 1
1 1
In any
For of the
elements
n-tuple
algebras
expressions 2. If ft are
and
For example,
=
0
1
0
0
1
0
0 1
(xl9x29..
for
mappingthe algebra the
are
fi2
0
and any
generated
expressions
\342\200\242 0 \342\200\242 +
1,
Xi
x2x3,
Boolean
finite
Boolean expressionsgeneratedby .,xn) over B, recursively as
of the Booleanvariables B. elements of 3e over generated by of B
element
Any
3c
and
in general,
B2 in particular, we define
algebra
1.
Boolean
\342\200\242
define functions
one may
system
algebraic
itself.
into
589
Functions
Boolean
jcx
+
in 3c are
by elements
xxx2
of x
are Boolean
Boolean
over
B,
so
expressions
generated by elementsof 3e over the Boolean algebra B2. If the elementsof 3c are interpreted as Boolean variables that can in B, then the Boolean expressions represent assume only values elementsin B. Thus, these expressions can be interpreted as functions of form
the
/:Bn
\342\200\224B
elements of 3c for any argument 3c,can be determinedusing /(?), . We refer to these functions as Boolean the operations +, \342\200\242, functions of n variables over B. For example,xY + x2 determines the function f(xux2) = x1 + x2; thus, /(0,0) = 1,/(0,1) = 0,/(l,0) = l,and/(l,l) = 1. where
and
It is
clear
that
Boolean
functions.
different For
Boolean example,
expressions x1
\342\200\242 +
(x2
may determine
jc3) and
(xx
\342\200\242 -f
x2)
the same (xx
\342\200\242
jc3)
the the same Boolean functions. DeMorgan'sLaw, Laws, the Distributive Laws, and otheridentitiesfor Boolean Absorption One expressions. algebras bring out forcibly the redundancy of Boolean of the main objectivesof this section will be to eliminate the ambiguity which would otherwise result, by developing a systematic processthat will to a simple reduce \302\253>^n) every Boolean expression /(^Ci,^c2>\302\253 \342\200\242 canonical form such that two Boolean expressions represent the same Booleanfunction if and only if their canonical forms are identical. functions fx and f2 over the same two Boolean Furthermore, any given the use n-tuple 3c E B, new Boolean functions can be determinedthrough of the following three Booleanoperations.
always
determine
590
Chapter
6: Boolean
Algebras
= 71(x1,...,*\342\200\236),
g(xl9...,xn)
=
. .,Xn)
h,(Xi,.
\302\253(Xlv .
.,*n)
+
. ;Xn)
f\\\\Xu.
= /l(*lv
\342\200\242 'j^n)
\342\200\242 \342\200\242>^n)>
l2\\x\\y
' I2\\xlf
\342\200\242 \342\200\242>*\302\253)\342\200\242
will result in the of this process a finite number of times functions over n variables. development of a complete classof Boolean in {0,1 }n and 2 elements in {0,l}, there are 22\" Since there are 2n elements Boolean functions of n variables over B2. Let Fn be the set of all Boolean functions of n variables over B2- The system Iteration
7n=(Fn,
+
0,1)
,.,\"
is a Boolean algebra of the 2r functions of n algebrais calledthe free Booleanalgebraon
Definition or its
6.3.1.
complement,
Definition B, which
A
x* is
literal
6.3.2. A form of
Boolean
has the
over B2. This over B2-
to be a Booleanvariable
x
there
that
clear
Example 6.3.1.
minterms
four
The
generated by xu... ,xn over n of distinct literals is (product) are 2n minterms generated by n
expression
a conjunction
variablesin B2.
in
n generators
5c.
calleda minterm.It is
x1and jc2,
defined
variables
generated
by the two
variables,
J52are
XjX2,
X\\X2y
X\\X2i
and
X\\X2*
of a disjunction a Boolean (sum) of n expression of the form distinct literals is calleda maxterm generated by jcx,. .. ,xn. form for any Boolean function of The next theorem gives the canonical like to denote a n variables, but before stating and proving it, we would minterm by Similarly,
where
(0 11
= x{
if
xf
if
xf = xh
for
i =
1,2,.. .,n.
Section6.3 is denoted by
a maxterm
Similarly,
591
Functions
Boolean
where
I 0
if
1
if
[
Theorem 6.3.1. written
in
the
xf = xf =
Xi xi9
Boolean
Every
i =
for
1,2,.. .,n. .,xn) over
f(xu..
expression
Scan be
forms
11...1
f(xl9.. ,,xn) =
21
normal
(disjunctive
afemfe
form),
fc=00...0
11. 1 f(xi9..
.,:cn)
=
IX (Pk + k=00...0
where A assumes {0,1},and where
all
normal
(conjunctive
Mfe)
form),
configurations j\\j2..
2n possible
such Jn\302\273
that
j( (E
ai,..i.ssft-,...y.-/0,ivJB).
Proof.
the
Using
of
definitions
mji-.Jn = ^ and Mjl..jn= 0 iff
jct
/(*!,...,*\342\200\236)
if xxx2
\342\200\242 \342\200\242 \342\200\242 =
xn
7x72
\342\200\242 \342\200\242 \342\200\242 and
Jn>
=
jcjjc2
\342\200\242 \342\200\242 = \342\200\242
xn
y^'2
\342\200\242 \342\200\242 \342\200\242 and
Jn>
.>7n,
it
is clear
that
also
0 otherwise; +
Mh...jn
1 otherwise.
is left as an exercise to the readerto show forms of Theorem 6.3.1areunique. Based on the previous discussion, we may function expressions represent the sameBoolean It
M;i
1,2,.. .,n. Hence
\342\200\242 <*>,...;\342\200\236 \"*,,..,\342\200\236
f(xu...,xn) =^v.Jn if
and
mjlmmjn
Vi,i =
= 7t
\342\226\241
the
that
conclude iff
expanded that
they
normal
two Boolean have the same
canonical forms.
The
form is a is a sum of minterms and each minterm form of literals. is sometimes product Accordingly, this canonical referred to as the minterm form or as a sum-of-products form. Likewise the conjunctive normal form is also called the maxterm form or a disjunctive
product'Of-sumsform.
592
Chapter
6: Boolean
Algebras
= (0
\342\200\242 \342\200\242 +
+ jc3) we variables
(jcx
f(xlyX2yXs)
x1
For the
write the
(1
x2)
\342\200\242 \342\231\246 +
xx
\342\200\242 \342\200\242
(0
x2)
Xj
x2)
table of
Boolean expressionf(xux2,x3)= (xxx2) \342\200\242 values for all possible values of functional
*3
*i
x2
0
0
0. 0 0 1 1 1 1
0 1 1
f
0 1 0 1 0 1 0 1
0
0 1 1
of
form
0 1
0
0 1 1 1 1
/ is:
= 0 \342\200\242 (*i\302\2432*3) +
1
*
(^2*3)
+ 0
\342\200\242
+ 0
\342\200\242
+
1
\342\200\242
1
\342\200\242
+ 1
*
=
(*i + x2)
Xl,X2yX^,
disjunctive normal
Then the
+ x2)
-j\" XjX2\302\253
6.3.3.
Example
\342\200\242 \342\200\242 +
(1
x2)
xt
= X\\X2
= (x1
f(xux2)
is
form
normal
f(xux2)
the
The representation of
6.3.2.
Example
in disjunctive
~\\~
X^X2X3
XyX2X3
+
(*iX2*3)
~t~
XiX2X$
t\"
(XiX2*3)
(* 1^2*3)
(XiX&s)
(* 1*2*3)
~\\~ XiX2X\302\247, X]X2X\302\247
normal form is nothing morethan the sum of the disjunctive minterms which correspond to the combination of values of for which takes on the 1. value xux2xs / the product of those three Likewise, the conjunctive normal form of/is maxtermsthat correspondto thosevalues for which / is equal of xl9x2,x3 to 0. This is becauseif /? = 1 then /? + Mix_in = 1 and this term is eliminated from the conjunctive normal form. Therefore, the effectively Note
that
those five
of /
is:
(Xj +X2
+
form
normal
conjunctive
=
f(xuX2yXs)
We have used the operations of
operationscanbe
as
defined
well.
called functionally complete
existsa form
The
FQ constructed
usual way to
test
if
a
+
X3){XY
+,
and \342\200\242,
A set if
X2 +
for
XgMXj
+
on elements
X2 +
of B.
of operations Q = {rlv every
Boolean
*3).
function
from xl9.. .,xn,Tl9.. .,rr suchthat set of operations is functionally given
But other
. .,rr}
FQ
on B
is
/ there denotes complete
/,
Section
Boolean
6.3 is to attempt to generate the sets {+, } or well known that these two are functionally
} from {\342\200\242,
(a) The
6.3.4.
set, since it is Theorem 6.3.1 (by
complete
sheffer stroke function = X1 I X2 =
f\\XlfX2)
is functionally
593
a given
and DeMqrgan's laws). Example
Functions
XxX
since
complete
X i I
X i \342\200\224 X ^X i \342\200\224 Xj
and
(#1
The dagger
(b)
I
Xj)
I
(#2
I
I
*2
= XjX2
X2
= Xi
-j\"
X1
=
Xi
+
X2.
function =
/(Xi,X2)
is functionally
= ^l
#2/
Xj
\\
4-
X2
since
complete
\\
X\\
X\\ ==Xi
= Xj
and \\x 1 j.
Exercises
for
following
the
Boolean
(x
A y) V
arguments
2.
minterm
The
x,y
\\
\\x21
is
a
X2)
==
Xj
4 X2
=
Xj
-f~
x2
\342\200\224
x^x2
6.3
Section
1. The
X\\)
over
algebra
(x
A
(a
expression generated by x,y over = where B = {O,a,0,l}:
(x,y) G B2. normal
the Boolean
Boolean expressiongeneratedby is given in Exercise1 above described algebra form
of a
by
f(x,y)
= (aAx~Ay)V(l3AxAy)V(0AxAy)V{lAxAy).
Give the maxtermnormal
form
of/.
594
Chapter 6: BooleanAlgebras 3.
all 16 Boolean functions of one Boolean algebra describedin Exercise1 above. Which of the following statements are always
Enumerate
4.
over
variable
true?
the your
Justify
answer.
(a) If x(y (b)
5.
If z
=
+
the
Obtain
Boolean
= x(y
z) then
w,
+ w), + f)=
x(y
then 2 = w. x(y + w). of the
following
expressions:
(a)
jcj
(b)
(x1
(c)
xxx2 4-
\302\251 x2
\302\251 (Jj
\302\251 x2)
\302\251 jc3)
xs
(d) xx + [(x2 4- F3)(x2x3)] a(xlyx29...,xn) is the
(*i
6. If
4- x2J3) of
dual
B be a Booleanalgebrawith number of sub-Boolean algebras
fi(xlyx2,..
7. Let
of a
partitions
set
with
of
each
the dual
8. Write
(a) x + xy (b)
forms
canonical
sum-of-products
(x
- x+
1)(0
that
the
the number of
n elements.
Boolean
equation:
y
x) =
\342\200\242 +
is equal to
that
show
Show
elements.
2n
of B
then .,*\342\200\236),
9. Let/(:t,;y,2)= ry
0
4- ^cy^
4-
xyz.
Show
that
(a) f(x,yyz) 4=/(x,y,2) 4- x ^ f(x,y,z) (b) f(x,yyz) + z * f(x,y,z) (c) f(xyy,z) X2
10. Let B bethe setof
set
a <
atoms
for someatom c. (a)
functions
For each
from {a,6,c} to {0,1}.Determinethe function /, determinethe subset of
/.
11. Prove that in any
12.
all
of B.
atoms
of
Booleanalgebraif
a
> z
and a
\302\245= z, then
az
> c
the Booleanalgebra
{2,5,11} are the only atoms in in exercise 15 of section 6.2. Find all atomsin Dn when n is a square-free that
Show
Dno
described
(b) integer. of Duo. of Boolean (c) Determinethe number subalgebras in the Boolean 13. Determine that the set of atoms algebra of all subsets of a set A is just the singletonsubsetsof A. 14. Prove that if ax and a2 are two atoms in a Booleanalgebrasuch that axa2
\302\245= 0, then
15. Prove that
atoms of
if
ax =
ax
a Boolean
a2.
4- a2
4-
6, where b,aua2>...,an are B, then at = b for some i. an >
\342\200\242 \342\200\242 \342\200\242 4-
algebra
all
Section
6.4 16. Prove
isl.
17.
that in every
Boolean
finite
sum of
the
algebra,
b is a nonzero element of a finite that Boolean that a is an atom ofJ3.Thenpreciselyoneof
Suppose
Suppose
595
Mechanisms
Switching
all atoms B.
algebra the
following
hold:
or a < b.
a < b
18.
nonzero element c of a finite that every the sum of preciselyall the atomsa such that
Boolean
Prove
a <
other sum of atoms is equalto c.
19.
Let
Boolean algebra and let R
a finite
B be
Defineh : B -* P(R)
h(x)
as
follows:
= 1,
d>
20.
Let
B
minimalif a
jc
Selected
Answers
5.
= 0.
Show
if jc
6.4
0
^
algebra. An if, for every
and
that a
(a)
= jcx \302\251 jc2
(C)
= XiX2Xs
jc^
is an atom
iff
a G
element jc
a is
\302\243 J5,
jc
< a
J5 is
said to be
implies
jc
= a
or
minimal.
4- Jc\"iJc2 +
XiX2\\Xz
Xi^^
4- 2
(c) f(x,y,z)
SWITCHING
0.
^
for Section 6.3
=
9.
atoms of B.
is a Booleanalgebraisomorphism.
a Boolean
be
no
ifx-0
[{aGJ?|a<:c}
Show that h
set of
the
be
B is
algebra
c. Moreover,
~f~
= xy
+ \302\2433) XiX2X^ 4-
xyJ
(Xj
-f
#i)(#2
\"I\"
4\" \302\243;\302\2432#3 + ^1^2^3
4- ryz
4- 2
= xy
\342\200\224
X2)XZ
4-
\"I\"
2
^
#l#2^3
f(x,y,z)
MECHANISMS
In the first and specifically
three the
sections, Boolean
we discussed algebra
of all
Boolean algebras in general, subsets of a given set and the
algebras algebra of all functions into a two-elementset.Boolean in theoretical considerations, but by far the most are important very and engineering important application lies in the realm of electrical as not is Such an surprising digital signals, computer design. application mechanical switches, diodes, magnetic dipoles, and transistorsare all
Boolean
596
Chapter
6: Boolean
Algebras
two-state devices. These two
states
current, magnetizedor not magnetized, and closedor open.It is easy to see
correspondence and 1 represent
between
the
two
Boolean
be realized
may
high
that
variables
potential
as current or no or low potential,
one may have a one-to-one and digital signals where 0
states.
units in a digital computercan be (combinational circuits or logic of inputs and generatea collection of in the sense that it is capable Each outputs. input and output is \"binary\" of assuming only two distinct which are designated 0 and 1 for values, n inputs convenience. More a switching mechanism with and m formally, if is a realization of a function f:B2\342\200\224*B2 where outputs .,xn are the n inputs and xux2,.. (zuz2,.. .,zm) = f(xux2,. . .,\302\243*)>then \342\200\242 are the m outputs. The function a switching Zi,z2,. '*zm / is called / (and, hence, the switching mechanismrealizing function, and usually /) is specified by a truth table where each row of the table lists the output .,2m) for one of the T inputs (xlyx2,.. .,xn).Two switching (zlyz2y.. mechanisms are said to be equivalent if they h^ve the sametruth that table, is, if they are the realizations of the same function. A gate is a switching one mechanism with thus, a gate realizes a only output; switching various functional Accordingly, mechanisms as switching viewed which a collection networks) accept
Boolean
function
f:B2\342\200\224^B2.
we develop an assortment of switching mechanization techniques using some specific designexamples. The first step in the design of a switchingmechanismis to define the This is done by translating the generaldescription of concisely. problem into either logic equation or truth table form. As a specific the problem consider a common output device used to display decimal example This device is known as the seven-segment numbers. (SSD) display in Figure 6-1(a). The seven segmentsare labeled shown with standard from a through g. The 10displays, decimal letters representing digits 0 in Figure 6-1(b). through 9, are shown Let us examine the problemof designing a logic system that will turn in on correct the to coded decimal(BCD) response segments binary The four wires indicate the number to be input. input displayed by the of l's and 0's on them. The seven of the binary pattern outputs logic to display the desired digit. system must turn on in the properpattern From the word description and the pictured displays in Figure 6-1(b) we can tabulate the desired outputs for each valid of inputs. combination Each row on the tablerepresents a different number and each displayed, In
this
section
column represents an input or output signal.Sincethe input codes are BCD representations of the digit displayed, the four input columns are in the BCD codes for each of the decimal generated by writing digits. The columns in and in are the then filled output displays filling by inspecting
Section
Switching Mechanisms
6.4
697
LJ] /
l\\
I
A
/
\\ri\\
0
Input
codes
(a)
(b)
A
a b
B
c
Binary
coded
C
decimal
input
D
Logic
w
Seven
d
network
to be designed
segment
display
e
\302\273\302\273
device
r \302\273\302\273
\342\200\224\342\226\272
g
(c)
Decimal displayed
Inputs
Outputs
ABC
D
|
a
b
c
11110
2
0 0 0 0 0 0 0 1 0 0 1 0
1
1
3
0
0
1
1
1
1
110
4
0
1
0
0
0
1
10
0 1
1
1
0
1
d
e
f
g
10 0 0 0 0 110 1
0
0
1
1
1
11
5
0
1
0
1
1
0
110
6
0
1
1
0
0
0
11111
7
0
1
1
1
1
1
10 0 0 0
8
1
0
0
0
1
1
9
1
0
0
1
1
1
11111
10
0
11
(d)
Figure 6-1. truth
table.
(a) Segment
identification,
(b) desired
displays, (c) logicproblem,
(d)
/
598
Chapter 6: Boolean
Algebras
is shownor a 0 if it is not. For example, the 7 requires 7. We can thus fill a, 6, and c, so we write 1110000in row table from the word and picture description of the
the segment
a 1 if
segments
only
entire
the
out
problem.
translated the problem statement into the language of the truth table from generalized a seven-segment display.
thus
have
We
standardized requirement
of
driving
Actually the truth tableof Figure
possible table
truth
four
of
combinations
columns in the
last six rows
rows and
indicate
to
indicates
generate and once. Another
X's
writing
we \"don't
that
rows. Their omission from the same thing as \"don'tcare.\"The
outputs
Since there are 16 have a more complete
for these
are
very
very
equation.
A
for
effective
useful
logic
way
equation
concise,
is incomplete.
we could
inputs,
all 16
generating
by
6-1
the
showing
several
of expressing logic expresses only one
the truth
in
the
output
care\" what table, table
the
however, is easy
to
switching functions at
functions is the logic function, so that, for
each for output logic equation could be written 6-1. Since logic equations are (a-g) in the truth table of Figure in form to discrete gating structures, they useful similar are very very The logical when the switching is to be mechanizedwith logic gates. and are used to indicate \"not,\" \"or,\" respectively, symbols -, +, and \342\200\242, d of our seven-segment \"and.\" Looking at Figure 6-1 we see that segment must be on when displaying the digits 0, or 2, or 3,or 5, or 6, or 8. display in place of or, we can write for the the logic equation Using the + symbol a separate
example,
function
variable d as
d-0 Thisis
+
2
+ 3
+ 5
+ 6 + 8.
in terms want an of the displayed digit, but we really equation in D. and The code terms of the variables, C, A, B, input input equation and not-J5 and not-Cand not-D\";we can therefore write an for 0 is \"not-A an
equation:
digit 0 = A
\342\200\242 B \342\200\242 C \342\200\242 D.
Likewise
digit
2 = 3 =
A
\342\200\242 C . B \342\200\242
digit
5 =
A
\342\200\242 B \342\200\242 C .
digit 6 =
A
\342\200\242 B \342\200\242 C .
digit
A
\342\200\242 B \342\200\242 C \342\200\242
Z),
D,
Dy
Z),
Section
6.4
599
Mechanisms
Switching
and
digit 8
-
. B
A
\342\200\242 C . D.
We can now substitute these expressions for for d as follows: into the originalequation
+
D. We
equation for
can
output d as a function
similar
write
+ A-B- C-D
+
\342\226\240 B. \342\226\240 C \342\200\242 D +
A
+ A-
+ c =
A
\342\200\242 B- \342\226\240 D + c- \342\200\242
D +
\342\200\242 B. C
\342\200\242 D jB. \342\226\240 C-
A
.
A
+ A
c.
\342\200\242 D +
c.
D +
\342\200\242 B~. \342\200\242 B-
\342\226\240 D + B- \342\226\240 c \342\200\242
/-A.
\342\200\242 B-
c
D + +
equations
disjunctive
For
normal
A
\342\200\242 B.
\342\200\242 D +
A
\342\200\242 B.
C
C
\342\226\240 D
C
\342\200\242 D
C
\342\226\240 D
C
\342\200\242 D
\342\200\242 B.
\342\200\242 D +
A
\342\200\242 B-
A
\342\226\240 C \342\226\240 D + \342\200\242B.
A
\342\200\242 B-
A
\342\200\242 B. \342\226\240 C \342\200\242 D
A
\342\200\242 B. C
\342\200\242 D
A
\342\200\242 B.
C
\342\200\242 D
\342\200\242 \342\200\242 B. \342\226\240 D c \342\226\240
\342\226\240 D +
A
\342\200\242 B. \342\200\242 C \342\200\242 D +
A
\342\200\242 B-
c.
\342\200\242 D +
A
\342\200\242 B.
D +
\342\226\240 A
\342\200\242 Bc-
D
c. B< + A.\342\200\242 These
D+
\342\200\242 B. C
\342\200\242 5. . c.
c .5 + 3.
\342\200\242 B>
\342\200\242 B. \342\200\242 C
A
A^<\342\200\242 B< c
A-B-C.D
A
D + A 5- \342\226\240 c. \342\200\242 + A. \342\226\240
e-A
+
A-B-C-D
D
c.
\342\200\242 !\342\226\240 B-
+ A.
g=A
inputs
the other
+ A.B-C-D
+ A.B.C-D
+ A-B-C-D
A-B-C.D
6 =A
the
of
for each of
equations
follows:
as
outputs
a =
C, and
of inputs
in terms
digits
+ A.B.C.Z).
A.B.C-5
a logic
have
thus
We
A9 B,
the
+ A
D +
A
c.
\342\200\242 D +
C
\342\226\240 B.
D
c
D + \342\200\242B. \342\200\242 >B-
.c
D.
for the seven-segment display are presentedin variables. There are 24 - 16mintermsof four
form.
example:
m0
-
A
\342\200\242 B \342\200\242 C \342\200\242
ml
-
A
\342\200\242 B . C
m2
-
A
\342\200\242 B \342\200\242 C \342\200\242
m5
-
A
\342\200\242 \342\200\242 \302\243 C \342\200\242 D,
m14
-
A
\342\200\242 J3 \342\200\242 C \342\200\242
m16
- A
Dy
. A Dy
Z>,
\342\200\242 D. fi \342\200\242 C \342\200\242
600
Chapter
6: Boolean Algebras
These numberedminterms (notethat the numbers correspond a useful shorthand for writing are simply binary weightedvalue) For example,
form.
canonical
in
functions
a = m0 + m2 + m3 + m5 + = Sm (0,2,3,5,7,8,9). numbers Sincethe table digits, displayed shorter but alsoeasierto minterm
The other canonical form, shown below:
directly the
conjunctive
+ B
Mx
-A
+
M15
- A
+ B
in
1. A 10
of the
one
SSI
(small
These
gates.
on the truth
equation
Figure 6-1. form, uses the
is not
only
maxterms
D, D,
+ C + D.
for all but onecombination of the variables, of maxterms. For example, as a product
and any function can be written a = M9-Mn- M14 - n M(9,ll,14). It is customaryto classify the gate
(IC)
+ C+ B + C+
= A
+ m9
to rows the
writing
from
M0
is true
maxterm
each
form of
write
m7 + mB
correspond
directly
this
and
Clearly,
to the
three following
of an
complexity
integrated circuit
categories.
scale integration) device has a complexityof lessthan in one are ICs that contain several gates or flip-flops
package.
2. A MSI
(medium scale integration)device
100gates.Theseare
ICs
registers,counters,
and
that
provide
elementary
has
of 10 to functions such as logic a complexity
decoders.
3. A LSI (large scale integration) device has a memories, 10,000 gates. Examples of LSI ICsarelarge and calculator chips.
4.
A
complexity
of
100
to
microprocessors,
of (very large scale integration) device has a complexity a half 10,000 gates. Right now a piece of siliconabout LSI is now giving 100,000 square could contain over gates. memories VLSI in all phases of design and including larger
VLSI
than centimeter
more
way to microcomputing
devices.
Though MSI,LSI,and functions
more
much
discretegates,
much
logic
VLSI have made it possible to mechanize than the method of connecting economically level\342\200\224even in the still be done at the must
logic
gate
Section 6.4
601
Mechanisms
Switching
designs. Though the discretegatepart of the system the minority of the logic\"work\" in the system, it represents a largepart of the computer scientist's detail design and checkoutwork. It is therefore master important that computer sciencestudents fully the techniques of gate minimization. functions that can be described both by switching Logicgatesperform most
sophisticated
may perform
equationsand by The
block standard
most
truth
representation of
logic
circuits
is the
in which the logicelements are represented by standard logic symbols by IEEE Standard No. 91 are shown in Figures 6-2 to 6-7. that there are two types of symbols, the note
diagram, The
symbols.
Y 32.14,1973)
(ANSI
tables.
common pictorial
The reader uniform-shape
will
the
and
symbols
symbols.
distinctive-shape
The
the International Elecuniform-shape symbolsarethoseestablished by trotechnical Commission (IEC Publication 117-15)and are widely used in Europe. The IEEE has includedthesesymbols in its standard, but the of in the distinctive-shape symbols remain the standard preference United States and have found wide in other parts of the acceptance world. The distinctive-shape symbols will be used here.
Input
=o
A
\342\200\242
B
A
=Q-
Figure
6-2.
Output
A
B
0
0
0
I
0
1
0
0
1
1
I
\342\200\242
B
AND function.
Output
Input
=0-
=E-<
Figure
6-3.
F
A
B
F
0
0
0
0
1
I
1
0
1
1
I
I
B
INCLUSIVE OR function.
602
Chapter6: Boolean
Algebras
Output
Input
A
B
+
= A+B
A-B
=E>
Figure
6-4.
NAND
A
B
F
0
0
1
0
1
1
1
0
1
1
1
0
function.
Output
Input
B=
A +
A
A
+ B=
A
\342\200\242B
\342\200\242 \302\243
=EJ-
Figure 6-5.
NOR
/I
B
F
0
0
I
0
1
0
I
0
0
1
1
0
function.
Input
J^>o-/i
A
F
0
1
I
0
1
/!-]
|o-/
Figure
6-6.
Inverter.
Input
^\302\243)-A\302\256B
Output
AbZ^7]~aQb
Figure
6-7.
EXCLUSIVE-OR.
Output
A
B
F
0
0
0
0
I
1
I
0
I
I
1
0
Section 6.4
the
the AND function. The AND
Figure 6-2 represents inputs are high (1).
603
Mechanisms
Switching
is high
output
all
iff
in 6-3 represents The symbol shown the INCLUSIVE OR Figure is low (0) iff all inputs function. The OR output are low. a function The NAND symbolcharacterizes whose is low (0) iff output all inputs are high (1) (Figure 6-4). The NOR symbol shown in Figure 6-5 characterizes a function whose
is high
output
iff
all
are low.
inputs
Figure 6-6,is a device
The INVERTER, shown in complement.
that
provides
the
illustrated in Figure 6-7,characterizes an even-odd
EXCLUSIVE-OR, recognizer.
all the
Though
gates are shown
desired.
as
inputs
gates,
four-input
they can
inputs,
make it
have as many standard
fairly
to
gates, three three-inputgates,two gate per package. between the gate structure and the logic in gating why logic equations are so useful
four two-input or one eight-input
together
package
two
with
pin limitations
Package
The one-to-one equationmakesit
relationship
see
to
easy
design.
Exercises
6.4
for Section
1.
A
digital circuit
is a
function
majority
1. The output truth table of a three-input majority inputs are
of the
majority
circuit of a majority
2.
Two
fx and
functions,
digital
can
function
hconditions
what
Under
variables
Tx
xTx
0 otherwise.
is
and
function
with 4
be obtained
f2, are
+
whose output is 1 iff Obtain show that
the
the the
NAND gates.
used as controlmechanisms:
yT2.
x and of input variables y and timing two digital functions be 1 at the same
T2, will the
and
time?
3. Design generates
and a combinational circuit that acceptsa 3-bitnumber an output binary number equal to the squareofthe input
number.
4.
Two
2-bit numbers
four-variable
function
A
=
axa0
and B
/ (al9a0,bub0).
=
bxbQ
are
to be
The function
a(A) < a(B), wherea(X) = xx x Assume that the variables A and
value
1 whenever
2-bit
number.
a |a(4) - a(B)| < 2. Design using as few gates as possible.
combinational
compared
by a
/ is to have
the
for a x0 x 2\302\260 B are such that system to implement/
21 +
604
Chapter 6: Boolean 5.
Algebras
that
patterns
binary
code.
A
consecutivenumbers are represented by
code where
A number
table
truth
a Gray differ in one bit position only is called for a 3-bit Gray-code to binary-codeconverteris
shown.
3-bit
Gray
Code
b
c
0 0 0
0 0
0
1
1
1 0 0
0
1
1 1
0
1
0
1
1
Selected
h
h
0
0
0
0
0
A
0
1
1
1
1
1 0
1
functions
fi,f2>fs
1
1
0
1 0
1
0 0
1
1
0
1
1
using
only
for Section 6.4.
Answers
1.
1
the three
Implement
Outputs
a
0
Code
Binary
Inputs
y I i' X V I zt
I
0
0
0
0
0
1
0
0
1
0
0
0
0
1
I
1
1
0
0
0
1
0
1
1
1
1
0
1
1
I
1
1
00
01
11
10
00
1
0
0
0
01
1
1
0
0
11
0
1
1
1
10
1
1
0
1
bxbj\\
fmin
F = xv
Fr
\342\200\224 ffiffo
+
bibo + where
aob\\
+
x means
a\\bo +
a\\bi
0 or
1.
+ xz -f
vz
NAND
gates.
Section
6.5
Boolean Functions
Minimization of
6.5
FUNCTIONS
OF BOOLEAN
MINIMIZATION
Our aim in minimizing which is equivalent
605
/ is
function
a switching
to / and which
to find
an
g
expression
cost criteria.
some
minimizes
The most
minimal is to find an expression with cost popular criteriato determine of terms in a sum-of-productexpression, number there provided
a
minimal is no fewer
other literals.
uncomplemented
same such expression with the in a literal is variable (A
with
of the function:
the minimization
J \\X-[)X2iX\302\247) == combination
the
Similarly,
of
==
XiX2X$
=
XiX2X$
the
X^X2X^*
=
Xi%3\302\273
second and the third #2*3(^1
4-
XiX%\\X2
terms
yields
= *2*3>
*i)
terms yields
and fifth
fourth
4- XiX2X$
XiX2X^
~ \342\226\240 ^2/
^1^3x^2
of the
combination
combination
X\\X2X\302\247 *
first and secondproducttermsyields
of the
XiX2X$ -f
Thus the
X\\X2X\302\247 '
X\\X2X\302\247~t~ X\\X2X\302\247 '
X\\X2X\302\2474\"
and the
and
complemented or
form.)
Consider
The
of terms
number
4- X2)
= X1X3.
reduced expressionis
/
(Xi,X2,X^)
=
XjX3
4-
X2X% 4-
X1X3.
in the sense This expression is in irredundant (or irreducible) form, that any attempt to reduceit any further by eliminating any term or any literal in any term will yield an expression which is not equivalentto /. the Theabove reduction is not unique. In fact, if we combine procedure first and second terms of /, the third and fifth, and fourth and fifth, we
obtain the expression
f
\\Xlyx2yX3)
=
X1X3
4-
XiX2
4- ^1^3,
a different irredundant expressionof/. various terms and applying of combining algebraic procedure the rules of Boolean algebra is quite tedious.The map technique of here provides a systematic method for minimization
which represents The
them presented
functions. switching
to
6C6
Chapter
6: Boolean Algebras A A
*
r
B
AB
AB
ABC
ABC
ABC
ABC
AB
AB
ABC
ABC
ABC
ABC
_
>/-\342\200\224
C
Figure 6-8.
the
of
diagrams.
in 1952, is a diagram, developed by E. W. Veitch diagram in that circles are replacedby squares
Veitch
The refinement
Veitch
Venn
and
form of a matrix. Figure6-8illustrates a Veitch diagram for two and three variables. the Veitch we represent graphically the various diagram By a manner that minimization is simplified.An inspection of combinationsin such a one-variable the various cells in the matricesrevealsthat thereis only between any two adjacent cells. Elach cell is identified by a change minterm. in the
arranged
Clearly minterms that can be combined diagram for functions inside the squaresindicatethe minterm square. The brackets labeledA, J3, C,
are
shows a Veitch
of
the indicated
and therefore
are
variables
top
half and
B =
function
Any
l's and
of four
the
represents
f =
set
the
as
6-10(a)
The numbers
variables.
represented by that D indicate the regions where C = 0 in all the squaresin the bottom half, for example. number
can be
variables
O's to indicate the function,
Figure6-10(b)
Universal
true;
1 in the squaresin
Figure
adjacent.
four
represented by
with
a truth
filling
simply
table. For
function
+ A-B-C-D.
A-B'C.D
A
A
A
A
B
B (a)
Figure 6-9.
(c)
(b) Development
of Karnaugh
maps
by
Venn
diagram
in
example,
approach.
Section 6.5
607
Functions
of Boolean
Minimization
to the above idea was represented by M. Karnaugh in who on the 1953, rearranged the alphabeticalassignments map. Since there must be a square for each we can begin with a minterm, set and divide it into 2n squares universal by using the Veitch diagram An
improvement
approach as seenin decimal
The
6-9.
Figure
of the minterms is
representation
in
given
Figure
6-
10(a).
to be the most valuable tool The Karnaugh map techniqueis thought with Boolean available for dealing functions. It provides instant can be used to obtainall possible recognition of basic and combinations patterns, minimal and is to all of varieties terms, easily applied complex problems.
map is accomplished through recognitionof of l's in adjacent cells immediately patterns. appearance the presence of a redundant variable. identifies the of one, two, and four on a cells Figure6-11illustrates grouping It all of a four-variable takes four variables to define cell a map. single the of one the two cells eliminates four-variable variable, map: grouping two variables, and the groupingof eight grouping of four cells eliminates the
with
Minimization
The
basic
cells
three
eliminates
variables.
of l's in the
given grouping
Any
product term. That is, the The
ABCD.
ABD.
grouping
Minimization
map
Karnaugh
is
single
by a
identified
is defined as
6-ll(a) cells, as in Figure 6-ll(b), is identified involves the gathering of the various groups cell
in Figure
of two
by
in the
in a \"ring\" where the variables are arranged if the map would these be squares adjacent pattern If were inscribed on a torus (a doughnut-shaped form). you have in the on a remember that torus,just squares map difficulty visualizing be the same row or column, but on oppositeedgesof the map, may
most
efficient manner, of symmetry,
so that
combined.
AB
AB
00
CD\\
00||o 01 1
11 3 10 2
01 11
12 5 13 7 15 6 14
4
10
00
CD\\
0
4
12
8
1
5
13
9
11
3
7
15
11
10
2
6
14
8
9
1
>D
10
01
11 10
ooj 01
11 10
-*
B (a) Figure
C
6-10.
A
\342\200\242 D +
Mapping a
4-variable function:
\342\200\242 B \342\200\242 C \342\200\242 D.
(b)
(a)
minterm
numbers/(b)
f
= A \342\200\242 B
D\\
00
ABD
A
ABCD
A
c^ \\B
11 10
01
B
C\\
00
00
01
01
11
00
D
TTT
11
m
10
10
(71 (b)
(a) A
ACD
00
01
00 111
ll
C\\B
BD
A
II
10
00
C^\\
01
11
11
10
10
1 i
[Tj
[7]
(c)
DN
(d)
BD
A
00
A
11
01
00
C\\B
10
D>
AD
00
01
*
ll
01
01
11
11 ll
10
1
11
(f)
(e)
AB
A
C\\B
DN
00
00
01
A
11 10
C\\B
DN
171
01
l
01
11
i
11
10
ill
10
Figure 6-11.
00
01
*
1
11
00
1
1
11
1
1
(h)
(g)
608
10
10
11
11
11
00
11
11
11 10
01
ll
00
01
C\\B
11 10
01
Minimization
on a
4-variable
Karnaugh map.
11
11
Section6.5
of Boolean
Minimization
Functions
609
A
C
\\B
p\\
01
11
11
i|
i
i
00
hi
11 Figure
10
1
ITJI
11
6-12.
is minimized /(A,J3,C,D) = 2 m(2,3,4,7,10,ll,12,15) map shown in Figure 6-12.
The function the
Karnaugh
BCD / = 2 m(2,3,4,7,10,ll,12,15) =
Quite
of the
some
often
occur.In this
we \"don't
case
+ BC
possible combinations care\" what the function
on
+ CD.
of input values never does
if these
input
combinations appear. Diagrammingmakesit easy to take advantage of these \"don't care\"conditionsby letting the \"don't care\" minterms be 1or on which value results in a simpler expression. 0, depending Figure6-13shows an example of the use of \"don't cares\"to simplify functions for segments a to g previously the seven-segment display 10 through 15 will never occur, we put 0's on referred to. Since minterms in We then l's on the diagram for the the diagram thosepositions. put minimized functions of the minterms. The seven-segment appropriate in 6-13. display are shown Figure Fiveand six-variable mapsareshown below in Figure 6-14 and Figure
6-15,respectively.
The
A
=
side.
by
1, the other
eachmap.In
has two four-variable maps five-variables in identical are BCDE, but one They = 0. The standard four-variable adjacencies apply in in the same relative position on the two squares
map
Karnaugh
placed side
to
A
addition,
4 and
20, are
maps,
e.g.,
to the
six-variablemap.
for
correspondsto
also logically
Similar
adjacent.
Exercises for Section6.5
1.
Simplify
the
following
acde +
Boolean
acd +
eh
expression^ + acfgh
+ acde.
arguments
apply
r
t
\302\273
x
1
xl
x|
x
x
lx
11
\302\243<
[x\"1 TxT
frT
m1
ll
)D
?\302\243> 1
i|
lx X
|llJ 0 =
/I +
i
]_jlJ
V
\342\200\242
C- D
\302\243\342\200\242 D +
+
b=
\342\200\242 \302\243D
11
|x
~|7|*
X
Mx]
X
||x
X
c=
1
X
in
1
X
1
YD
1
111 |x
11
1)
X f =
[fxf
xl
x|
X
1
X
[x~
~T| J|7|
IT]
1
C- D
f=C
[fxT
1
\"^
D
+
+ A +
)D
g= B-
610
Figure
lx
1
1
lx
1
1
D + B-C+
1
B
l
B-C
11
1
1
rn
Tfjl
X
PI
xl
#<
x|
l
>\302\243>
X
B - D+
+ B-C+B-D
A
>/>
e =
i|
*
+ B-C-D
d=C-D
|X
j
11
L
\342\200\224\342\226\240
B X
ll
lx
-K\302\243>
X
d
X
|x1
d =
A
' [7|
11
|x
\"'
e
\302\243
\"
(TT
1
X
M
C
1
>D
*--
B+
rrfl
fl<
i|
c =
1
/4 r
B
11
D + C- D + C \342\200\242
A
ll
\342\200\242A
C+
6-13. Seven-segment display driver
minimization.
B- D
Section
Minimization of
6.5 A =
.BC
DE\\
00
01
0
A
Boolean Functions =
1
611
BC
II
10
00
01
11
10 /DE
001
0
4
12
8
| 16
20
28
24
01
1
5
13
9
17
21
29
25 01
11
3
7
15
11
19
23
31
27
10
2
6
14
10
18
22
30
26 10
Figure
Five-variable
6-14.
Karnaugh
00
11
map.
B *^
t
\\
0
4
12
8
16
20
28
24
1
5
13
9
17
21
29
25
3
7
15
11
19
23
31
27
2
6
14
10
18
22
30
26
32
36
44
40
48
52
60
56
33
37
45
41
49
53
61
57
35
39
47
43
51
55
63
59
34
38
46
42
50
54
62
58
\\F
E( '
A<
)F
E{
D
D
Figure
6-15. Six-variable Karnaugh
map.
612
Chapter 6: BooleanAlgebras 2.
the
Reduce
expression
following
to a minimal sum-of-products
expression.
/the
3. Minimize
(x
+
\302\251 yz)
(xy
\302\256 w)
using
expressions
following
+ xyw.
table or
a truth
map
technique. + ABCD+ BCD + ABCD. = ABCD + ACD + ABCD + ABCD. (b) / = ABC + ABC + ABC + ABC. (c) f /
(a)
- ABCD
(d) / = BCD+ ACD jh + B + C)(A
(e) /=(A
ABCD. + C).
ABCDjh + J3
4. Prove or disprove the following
equalities
a truth
using
table or
map technique. + ABC = (B + C)(B + = (A + J3)(A + B)(B + C + (b) AC + AB + ACD + D)(A + B + C). (c) ABC + (A + B)D = (AB = (d) ABD + BC + CD ABD + CD + BC. 5.
+ ABC
ABC
(a)
+ ABC
C). D).
(POS) forms, select setsofthe O's of the as a sum term, with variables the being of those that would be usedif this same set were being
To design product-of-sums function. Realize each set
complements
realized as a productto produceTs.
Obtain
a
minimal
realization
POS
of
f(A,B,CyD)
=
2m(0,2,10,ll,12,14) = nM(l,3,4,5,6,7,8,9,13,15).
6.
the
Minimize
following
functions.
switching
(a) 2m(l,2,3,13,15).
(b) 2m(0,2,10,ll,12,14). (c) 2m(0,2,8,12,13). (d)
2m(l,5,6,7,ll,12,13,15).
(e)
2 m(0,l,4,5,6,ll,12,14,16,20,22,28,30,31).
(f) 2m(6,7,10,14,19,27,37,42,43,45,46).
7.
Simplify
each
Boolean
algebra.
of
the
+ w) xyz -f xyz + xy(z (b) x +yz + w(x + yz). (c) xy(z + w) + xy(z + w)
(a)
(d)
xyz +
xyw
+
xyw
expressions by using
following + (z +
+ yzw.
xyz.
+ w).
the rules of
Section 6.6
to Digital
Applications
8. Minimizethe following functions, + (a) / = 2 m(0,5,10,15) 2,(1,7,11,13)
using
Computer
the map
613
technique. don't care
20 denotes
where
minterms.
2m(0,l,4,5,8,9)
(b) /-
+
2,(7,10,12,13).
+ 2,(2,5,7).
2m(l,3,4,6,9,ll)
/-
(c)
Design
Selected Answers for Section6.5 KAB
3.
C\\
(c)
00
01
11
10
00
01
11
10
1
1
0 1
6. (c)
wzX
1
00
01
1
11
10
or
6.6
of
Anin
- xyz
+ ww
+ xwz
Anin
- xyz
+
+
xyw
y wz
TO DIGITAL COMPUTERDESIGN
APPLICATIONS
InitialDesign
1
Arithmetic
the
Logic
Unit of
a Digital Computer
computercan be
unit (ALU) of a digital For one for each pair of bits of the input operands. each where operands with m bits, the ALU consists of m identical A and B which are designated as inputs the bits of inputs receives stage 6-16 shows the from 1 (low order bit) to numbers Figure subscript by An
partitioned
arithmetic into
logic
stages,
stages,
block diagram The
Ck_i is
of an ALUstagek.
are
carries
the input
function
designated
selection
connected
in a
carry to stagek and lines
as selectors
m.
chain through the Ck is
the output
ALU
stages,
where
carry of stage k.The
are and to all stages of the ALU are identical to be of the arithmeticor logicmicro-operation
614
Chapter
6: Boolean
Algebras Bk
Ak
1'
1'
Function
selector
k
Stage
i'
Fk
Figure
performed by the the
of
function
6-16.
frth
ALU.TerminalsFY
ALU.
In many
from
ALUs
4-bit
one
IC package
the
next
the required
Fm generate
a package for
ALU.
J3,
and
is
enclosed
will contain four outputs
selector determines the A m-bit ALU can be perform.
function can
to
cases, a 4-bit ALU
integrated circuit (IC) package.Such for A, four inputs four with inputs
number of lines for the operationsthat the ALU
of an
stage
output
within
number of
constructed
by cascading several packages. The output carry of the package must be connectedto the input carry
higher-order
one
four stages for F. The
from with
bits.
on the micro-operations The internal constructionof the ALU depends that it implements. In any case, it always needs full-adders to perform are sometimes Additional included for the arithmeticoperations. gates I n to minimize number of terminals for order the logic micro-operations. k 2k IC to ALUs use selection lines the function selection, specify micro-operations.
The most basic digital arithmetic function is the circuit that performs the binary digits. A combinational arithmetic addition of two bits is called a half-adder. One that of three bits (two significant bits and a previous performs the addition is called a full-adder. The name of the former stems from the fact carry) a full-adder. to implement that two half-adderscanbeemployed are called the augend and addend The input variablesof a half-adder bits.The output variables are called the sum and carry. It is necessary to two output variables because the sumof 1 -f 1 is binary 10, which specify has two digits. We assign symbols At and J3, to the two input variables, and Ft (for the sum function) and C,- (for carry) to the two output in Fig. 6-17(a). The variables. The truth table for the half-adderis shown are 1. Ci output is 0 unlessboth inputs of the sum. The bit The Fi output represents the leastsignificant Half-Adder.
addition
of two
Section6.6
to Digital
Applications
A
Bi
Ci
Ft
0
0
0
0
0
1
0
1
I
0
0
1
1
1
1
0
i
Logicdiagram
(b)
functions for the two Ft
Half-adder.
6-17.
Figure
Boolean
615
Design
Br
table
Truth
(a)
Computer
- Aft
-
+ Aft
directly from
be obtained
can
outputs
Ai
0
Bh
Ct - Aft.
The logic
an AND
and
gate
Full-Adder.
arithmetic
sum
A
of
6-17(b). It
in Figure
is shown
diagram
OR
is a
full-adder
third
The
input,
It consists
Ct-_i, represents
the carry
denoted
3, and are
outputs
from
three and
Bi9 represent the
sum of
three binary
3 need by the symbols Ft (for C, gives the output carry. in Table 6-2. The eight rows 2 and
shown
combinationsof l's
input variables designate all possible and O's for the output these variables may have. The sum of the input bits. When determined from the arithmetic
is equal
l's
O's the output is 0.TheFt output to 1. The C, output has a carry
is equal of 1 if two
tol.
Thus
lower
previous
designated
the
bits are
the two the
and
inputs
the decimalnumbers variable
is
that
are
At
arithmetic
the
because
0 to
and C, (for carry). The binary sum) The truth tableofthe full-adder O's
by
of
position.
Two outputs are necessary digits rangesin value from two binary digits. The two under
circuit that forms
combinational
input bits. variables, input
three
outputs. Two of the two significant bits to be added. significant
consistsof an exclusive-
gate.
the two functions
for the full-adder are Fi-Ai\302\256Bi\302\256Ci.1
and
Ci =
APi +
Afin
+
BA-i.
and
variables all
input
to 1 when only one input
or three
inputs areequal
616
Chapter 6: BooleanAlgebras 6-2.
Table
Truth Table.for
Full-Adder
Inputs
Outputs
W,.i
CfF;
0 0
0 0 0 1 1 1 1
Clearly,we
also
can
d =
Aft + (Aft
gates
25
with
of
0 1 10
0 1 10 10 1 1
Aft)
- Aft
C.-.x
+
(Ai
\302\256Bi)
C-.l
functions require a total of nine to generate Ct_j. A NAND circuit
6-18. Figure is of basic importance
in
form
The
realization.
+
gone into the
has
effort
0 0
0 1
of these two one inverter
plus
inputs
for this form is shown Since the full adder
deal
0 1 0 1 0 1 0 1
write
realizations
Two-level
0 1 1 0 0 1 1
leading
in digital computers,a great problem of producingthemosteconomical of the to best economy is a function
used.
technology
as IC,as pointed out before, the Since today full-adders are realized scale forms of interest arethosesuitablefor medium (MSI) integration form. are shown below in Figures 6-19and 6-20. Two of these realizations of realization the Figure 6-20 appears to be moreexpensive, Although in full-adder is used and this form is better suited for IC realization chips such as SN7480and
SN7482.
A popular
realization
Using this
design we
more
perform
with shown
the three in
Control
Figure
of a also
will
full-adder is by add
control
utilizing
bits so
two
half-adders.
that the circuitwill
than just addition. The circuitof the full-adder control bits S0,Si, and S2, as well as the mode bit M is
operations 6-21.
line S0 controls input At.
modelineMcontrolsthe 1, the terminalsmarked
carry
input jc,
y,
and
Sx and C,-_i. When
Lines
z have
S2 control input Bh The S0 Sx S2 = 101and M =
the values of
Ah
Bi9
and
Cif
respectively.
Control lines S2 Sx S0 may each combinationprovides a
have
different
eight
bit possible for Ft function
combinations and and Ct, The mode
=r>
o
=o
Q-,
Br
c,-r
Cm
^BO
o SO AJ
B>
BO
Figure
6-18.
Two-level
FO
realization
of a full-adder.
c,
o
B>t\342\202\254>^=!D
to
M>
o Figure
6-19.
Full-adder
realization
with
8 gates
and 19
inputs.
Ci-x
>\342\226\240
Bi~+
o-
=D-
Figure 6-20.
Full-adder
realization
with
10 gates
and
22
inputs.
A,-
rf>
On
^O
pD
l~
)E>*
CM
t=Q Figure
618
6-21.
Controlled
^
full-adder.
Section 6.6
to Digital
Applications
Table6-3. Effect X
s1
0
0
1
A,
0 0 1 1
So
lines on
of Control
s2 0 1 0 1
controlM enables input carry betweenan arithmeticand logic the propagates gate making
y
619
Design
Full-Adder.
M
z
0 1
c,.,
0
B,
0
B, 1
and
C^
the
When
function.
z
through
Computer
is used to differentiate M - 1, input carry C,_!
- C^. Thisallows
the
propagation
for an arithmetic microcarry through all the ALU stages M - 0, the input carry is inhibited, z - 0. This is operation. When making a necessaryconditionfor a logic micro-operation. Hence, the ALU can
the
of
provideup to eightarithmetic operations Table 6-3 showshow the control lines
and eight logic operations. control inputs Ah Bh and C,. The value of jc may be 0 or At depending on whether S0 is 0 or l^Controllines z Si and S2 control the value of y which may be 0, 1, J3, or J3t. Terminal M is 0 or 1. on whether may be equal to 0 or Ci_x depending Table6-4 shows a list of the Boolean functions for each of the eight
positive combinations of the controllines:w
0, output Ft xy since
is the
2=
higher
M
F, (with
under
w
this
terminalof the next listed
as
same
0. However,
ALU.
since
F{:
signal stage
- 0) provide
of Thearithmeticoperations
Boolean
listed
the
of
functions
are
- w;
the
are
M
when
and output carry
functions
for one
Boolean
functions
functions
of the
- 1.The operations in the one-stage when M
generated
stage of the
ALU.
l=i X
SqSiS2
w
M-0
M-
1
C, for M
0
0
0
0
B,
0 1 0 1 10 10 1 1 1 1
B,
B,
B, \302\256 C,.,
0
Bt
CQ
B,
0
1
B, 1
A,
0
A,
A
A,
B,
A,\302\256B,
A\302\256 B,
A,\302\256B,\302\256 C,.,
A,B, +
A,
B, 1
A,\302\256B,
A,\302\256B,
A,
\302\256 C,_i B, \302\256
A,B,
A,
A,
A,\302\256C/_1
A,
0 1 0 1 0 1
A,
C/.,
1
\302\256 Cf_i c\342\200\236
a,\302\256c\342\200\236
- 1
0
0
0 0 1
0 0
0
y
Ct
-
-
propagate to the z
logic
eight
\302\256 y;
6-4.
in Table
Table6-4. Boolean
0 \302\256
arithmetic
eight
x
represents
is not allowed to when M - 0. The
ALU
the
ALU
- w
B/C/_1
BjCj.i
c,_,
AC/-i
+
AC/-1+ BtC,^
+ AC/_, C/-i
+ S/C,.,
620
Chapter 6: BooleanAlgebras 6-5.
Table
M
S0S^S2
0
0 0 0 0
0
0 0 0 0 0 0
Logic Micro-Operations
0 0 0 1 10
F=0
Clear
F=B
Transfer
F=B
Complement B
F- 1 F=A
Transfer
A\302\256B
arithmetic
The conditions
control
of
OR
operations
B bits
A
Complements
F=A
and
AND
bits
Exclusive-OR Exclusive-NOR
F-A@B
F =
all
Set all
are
stages in cascade.
m identical
are listed in
ALU
the
for M = 0. These arethe F functions Note that there are 16possible micro-operations in the ALU. and only 8 of them are available
a fourth
ALU. Description
The ALUis constructedby connecting The logicmicro-operations performedby
logic operations
the
Micro-Operation
11 10 0 10 1 1 10 111
providing
in
for
two
Table 6-5.
logic operands
the two important not generated in this ALU. By In fact,
line it is possibleto includethesefunctions. are derived from Table 6-3and the
6-4.
Table
of full-adder circuits is adder In each case, a parallel binary composed lines are either used, but someof the input missing or complemented. Thus, in row 001, input A is missing because all the x inputs of the function for to zero by selection line S0.The output full-adders change = 1. In row = 0 and F = B + 1 when this condition is F = B when Cx C0 soF = 010, input A is changed to zero and all B inputs are complemented = = = 0 and F B + 1 when C0 1. In row 110,all bits of input B B when C0
so are complemented
that
the arithmetic
F generates
operation of A
plus
for row 111 represents Boolean one stage of a decrementmicro-operation. the ALU is The C0 that enters the first low-orderstage carry in four Hence, micro-operations. employed for adding 1 to the
l's
the
of J3. The
complement
function
of
input
sum
arithmetic micro-operations
1.Thethreecontrol set to 0 or 1 for functions
generate
a
require five
M must
lines.
control
an operation lines specify micro-operation. particular as the the same operation
and input carry Some of the
logicfunctions
always be
C0
must
be
arithmetic
when
C0 =
0.
Others have no useful application.
Thearithmeticmicro-operationsthe ALU are shown in Table 6-6. the input carry C0= 1,a oneisadded It shouldbenoted by making in
that
to
A
+
B when
M =
1 and S0Sx
S2
= 110
is equal to the complement plus subtractionoperation,sincethe output A
2's
and the
result is A
of J3. This logic
function
+ B
+ 1 which
is equivalent to a for a full
subtractor
Section6.6
to Digital
Computer
Micro-Operations
in the
Applications
Table6-6. Useful M
S0S)S2
Arithmetic
Micro-operation
C0
1
0 0 1
1
F-B+1
1
0 10
1
F=\302\243+
1
F =
10 10 1 1 1 1 1 1
1 1 1 1 1
0 1 0 0 1
Increment B
+ B
0
F-A
0 1
F=A + B
F = yi
+
B+i
0
F=
-
1
the same as the output
ALU
Description
2's complement
1
y\302\273+i
A
621
Design
B
Increment
A
Add A
B
and
A plus 1's complement A plus 2's complement Decrement A
of B of B
and the next carry in the full-adder the minuend that is complemented. Thus by creating 2's the except of the and subtrahend it to the minuend we achieve complement adding the operation of arithmetic subtraction. In conclusion, we have used a simple full-adder stage to achievea of arithmetic and variety logic operations in the digital computer. is exactly
function
borrow
resembles
the
of a
function
function
full-adder,
for the
Multiplexers A
is a
multiplexer
2n lines
digital system
and transmits
information
line
that receivesbinary on
a single
output
from
information
line. The
one input
is determined selected from the bit combinationof n selection It is analogous to a mechanicalor electricalswitch, such as the selector switch of a stereo araplifer,which the input that will selects drive The input can come from the speakers. either tape, AM, FM, or phono, AUX linesworked of the switch. An example of a 4 x 1 by the position in Figure 6-22. The four input lines are applied to multiplexeris shown the circuit but only one input line has a path to the output at any given time. The selection lines Wx and W2 determine which input is selectedto have a direct is also known as a data path to the output. A multiplexer selector sinceit selectsone of multiple input data lines and steers the to the output is specified by information line. The size of the multiplexer the number of its inputs, 2n. It is also impliedthat it has n selection lines being
lines.
one
and
output
Clearly come
the
from
4x1
line.
the function of the multiplexer is in gating of a number of different sources.The logicfunction multiplexer is
F-WlW2I0+WlW2Il
+ WxW2h+
WXW2I3.
data that describing
may
622
Chapter
6: Boolean
Algebras
4XI
fO
i \342\200\242
MUX
Inputs
2
Ouiput
/.\342\200\224*-
3
O-i m>~
/,\342\200\224*-
^2
FK,
Select
Block diagram
(c)
\342\202\254>
wx
w2
F
0
0
/o
0
1
A
1
0
/2
1
1
/3
A
(a) Logicdiagram
(b) Figure
In general
for a 2n
6-22.
x
4
by
table
Function
1 multiplexer.
1 multiplexer 2\"-l
t-0
where
m^ represents
ith input
the minterm i
of the selectionvariables,
Thus when
n
- 3,
the multiplexer
F, where
F-
and
It is
the
line.
ro
\302\243
- Wx W2 W3/0
+
Wt
W2
logicfunction
W3/1
+ Wx
will
be represented
by
W2W3/2
'+ ^1^2^3/7. wants to load a 16-bitdata registerfrom 16 four-input with can be accomplished this sources, come in eight IC packages. Now,
if one
distinct that multiplexers
one
to four
Section
Applications
6.6
*1
x2
x3
0
0
0
0
0
1
0
1
0
0
1
I
1
0
0
\\
0
1
1
1
0
1
1
1
to
623
Design
Computer
Digital
F
*1
x2
F
\302\260)
0
0
0
0
1
*3
1
0
1
1
1
*3
o]
\302\260)
ij
')
l]
']
o)
MUX
A
Figure
6-23.
Multiplexer
k
implementation of a
logicfunction.
useful as basic elementsfor implementing table of Figure F defined function a by the truth logic as shown 6-23.It canberepresented by factoring out the variablesxY and to of xx and x2, the function F corresponds x2. Note that for each valuation of using a oneof four terms: 0, 1, jc3 or x3. This suggeststhe possibility multiplexer circuit, where xx and x2 are the two select inputs four-input if the data inputs are that choose one of the four data inputs. Then, of connectedto 0, 1,jc3, or 3c3, as required by the truth table, the output is F. The the will correspond to the function approach multiplexer a of three variables can be realizedwith completely general. Any function variables of four Similarly, any function multiplexer. single four-input etc. an eight-input can be implemented with multiplexer, is a straightforward approach, which Using multiplexers in this fashion function. to realize a given of ICs needed often reduces the total number If the function of Figure 6-23is constructedwith AND, OR, and NOT gates, its minimal form is Multiplexers
functions.
are
also very
Consider
F
-
xx
x2
+ xx
x3 +
x2 \302\243i
x3
624
Chapter 6: BooleanAlgebras which
a network of three AND gates and oneOR for this than one IC areneeded implementation.
implies
of more
for multiplexer approachis moreattractive Of course, expressions. simplesum-of-products two
implementa
We
will
its sum
the
parts
In general, the that do not yield relative merits of the
number of ICs neededto
function.
given
6.6.1
Example
by the
be judged
should
approaches
functions
Thus
gate.
LetF(xlyx2yx3)
-2m
(1,3,5,6).
F with a 4 by 1 multiplexer. First,we implement of minterms form. The next step is to connect the
variables(x2y x3) to the selection line and x3
selection
lines
with
x2 connected
to
the
lowest-order
selection
line
to
F in
express
- 1 the high-order W2.
last
The
n
first
connected to the input linesin both complemented (xi) and uncomplemented form (xj as needed. Fromthe truth table of F shown in Figure 6-24it is clearthat x1 is 1 for 1 and 3, and thus I2 should be minterms 5 and 6 and 0 for minterms connectedto xY and 73 to xly where J0 = 0 and IY = 1. in It is not necessary to choose the leftmostvariable the ordered to the multiplexer. In fact, we sequence of a variable list for the inputs can chooseany one of the variables for the inputs of the multiplexer, we modify the multiplexer implementation table.Suppose we provided with want to implement a multiplexer, the same function but using variables xY and x2 for selection lines WY and W2 and variable x3 for the Variable inputs of the multiplexer. x3 is complemented in the evenvariable
xx will be
numberedminterms
and
uncomplemented
in
the
odd-numbered
variable in the sequenceof listedvariables. is shown in Figure 6-25. This implementation MultiplexerICsmay have an enable input to control the operationof the unit. When the enable input is in a given the outputs are state, binary disabled, and when it is in the other state (the enablestate),the circuit functions The enable input (sometimes called as a normal multiplexer. can be used to expand two or more multiplexer ICsto a digital strobe) with a larger number of inputs. multiplexer In somecases two or more multiplexers are enclosed within one IC in The I Cs selection and enable inputs multiple-unit may be package. common to all multiplexers, as illustrated in Figure6-26in which we show a quadruple two-line to one-line multiplexerIC, similar to IC each of 74157. has four This unit capable multiplexers, selecting package to be equal to either one of two input channels;namely, Ft can be selected in state 1 and Ii or Jh 1 < i < 4. The enable E disablesthe multiplexers enables them in state 0. It is very important science student to be familiar for the computer
minterms,
since
it is
the last
Section
Applications
6.6
to
Minterm
(a)
Multiplexer
Figure
6-24.
with
X\\
*2
*3
F
0
0
0
0
0
1
0
0
1
1
2
0
1
0
0
3
0
1
1
I
4
I
0
0
0
5
1
0
1
1
6
1
1
0
1
7
1
1
1
0
(b)
Implementation Implementing F
With
architecture
- 2/n (1,
with
a 4
by
1 multiplexer.
the advent has taken on
to create systemsthat were previously this reason, the materialintroduced
illustrated
3, 5, 6)
table
Truth
digital functions encountered in computerhardware of MSI, LSI, and VLSIfunctions, computer a new dimension,giving the designer the ability
the various
design.
x2, x3)
(x1f
625
Design
Computer
Digital
with
two
key
matter subject an essential prerequisite organization of digital computers of the characteristic
For is being
or impractical.
uneconomical
this
throughout
chapter
that explain the typical covered in Chapter 6. This material represents to the understanding of the internal architecture. and the design of computer
applications
\342\226\272F
Figure
6-25.
Another implementation of
Figure
6-24(a).
626
Chapter
6: Boolean Algebras
k>
ten
Function
w
\\e
6-26.
Exercises
Quadruple
F
all O's
0 0 1
select /
0
Figure
Output
X
1
(enable)
table
selectJ
2-to-1 line multiplexers.
for Section 6.6
1.
Show
and
that
a full-adder
a three-input
2. Obtain the simplified
of-productsform
circuit consists
majority
Boolean and
draw
OR of a three-input exclusive
function. function
the logic
of the
full-adder in sum-
diagram using NAND gates.
Section
to
Applications
6.6
are 16 logicfunctions lists 8 of thesefunctions. 4. The OR and AND logic 3. There
= A
B \302\251
operations
of
the
OR
that when
modification
this
with
of
logic functions.
of the ALU are altered.What
be implemented
+
A
values
the
determine
AB,
by
S3 as
identities
Boolean
two
the
and AND
4 show
Exercise
can be includedin the ALU selection line using a fourth
= 0 +
and AB
AB
+
S^SxSq for M for
5. Forthe S3
remaining
functions
Figure 6-27.Using
shown in the B
two
the
Table 6-6
variables. 8 functions.
Boolean
for
circuit and
the output
modifying
List
627
Design
Computer
Digital
S3 = 0, none other
and what
the
of
other
operations
logic
are their
can
selection
values?
(Original
output)
(Modified
6-27.
Figure
6. Let full
us denote AtJ5t
by
now be
can
adder
G, and
output)
At
\302\251 JBt
by P,.
expressed as C, =
Gt
The output P, C^.
+
carry of the G, is called a
are Ts, carry-generateand producesan output when both At and \302\243, is of the called a because irrespective input carry.Pt carry-propagate with the of the carry from Ct_j it is the term associated propagation be as to C;.Any output expressed carry may
Ck
=
Gk +
PkC0
where Gk
=
+ Pk-iGk-2
Gk_x
Pk = Pk-lPk-2 This
part
(a) (b)
Show that Show that function A,
7. Draw
*
of
the
\342\200\242 \342\200\242 \342\200\242 +
Pk-iPk-2
P2G1
P2P1'
ALU
the carry propagation time in the look-ahead is known as the carry
the technique reducesthe carry P, in a full-adder can be expressed +
* \342\200\242 \342\200\242
\342\200\242
for reducing
technique
parallel-adder technique.
*
+
time.
propagation by
the
Boolean
J5t.
the logic diagram of a 4-bit adderwith
look-ahead
carry.
List
628
Chapter
6: Boolean
Algebras
the Boolean functions and
the
draw
and
for outputs
logic diagram
G5
P5.
the following two functions using multiplexers and gating as possible.
8. Realize external
as
little
(a) fi(xy*,w) = 2^(2,4,6,10,12,15) = 2ro(3,5,9,H,13,14,15).
f2(x,y,z,w)
(b)
9. Given the function (a) Realize this
for Section 6.6
Answers =
plus
multiplexers
four-input
using
as required.
externalgates
1. F
= 2m(l,2,4,5,6,7,8,9,l(UU4,15). an eight-input using multiplexer.
this function
(b) Realize
Selected
f(x,y,z,w) function
is identicalto the carry.Hence,
+ yz
+ xz
xy
o MAJ
5.
When
s3 1 1 1 1 1 1 1 1 REVIEW
S3 =
0 then S3AtJ3;
s2 0 0 0 0 1 1 1 1
Si 0 0 1 1 0 0 1 1
FOR CHAPTER
= 0
So
-carry
and
=
Fx
Ft +
Fi
0
0
1
Bi
0
Bi 1 A
1
0 1
A& B, + B{ +
1+ A,+
B, A, \302\256 At 0 Bs
0 1
For M
Gr
AiBi
Gi
AiBi
A, +
A, B, A,
AiB,
A,
A +
Ai +
Ai +
Ai
Bi
B.t
1
Bi
\302\256 Bi
(AND)
Bi
B,
A,
+ A,Bi Bi + AiBi Ai \302\256 Ai
A,
=0
B,(OR)
A,\302\256B,(EQ)
Bi
6
1. The variables.
is
following
the
Without
deduce the
values
variablesxux2,x 3.
truth formally for
the
table
for several
deriving
functions
functions of 3 input
Boolean expressions, in terms of the A/2/3/4 any
Section
6.6
2.
*1
x2
0
0
0 0 0 1 1 1 1
0 1 1
0
0 1 1
*3
u
0 1 0 1 0 1 0 1
0 0 0 0 0
the
Simplify
Applications
to
h
u
f*
0
1 1
0
0
0 1 1 1 1
0 1 1 0 0
0
0 0 0 Boolean
following
Digital
Computer
629
Design
using laws of
expressions
Boolean
algebra:
(a)
xy 4 xy
(b) (x + y)(x + y) (c)
3.
xz
+ xyz
(d) (TVy) + J5c + y) (e) x + xy + xy /\342\226\240 Prove the following using the (a)
xy
lawsof Booleanalgebra:
= x
+^xy
(b) (x + y) (x + y) - x (c) x(x +y) =xy_ + xy + xyz = y (d) xy2
(e)
y
(f)
3cyz 4-
+ (w\302\243
a;2)
+ xy 4- xyz
3cyz
- y(a; +
4-
xy2
jc)
= z
4. Give the canonicalsum of products(or disjunctive for the following functions:
(a) f(x,y,z) = (x 4-
(b)
/ (x,y,z)
y)
(x,y,z)
=
M2M3M5,
form)
(z 4- 5c)
where / = 1 iff
an
of input
number
odd
equals 1.
(c) /
normal
M, are
where
variables
maxterms.
5. Using Karnaugh maps, minimize the
function
=
f(a,b,c,d)
2 m(0,l,2,3,4,5,8,10,12,13,14).
6. Minimize \"don't-cares\"
the
function
is the
whose
f(a,b,cyd)
following:
\\cd
ab\\
00 01 11
1 1
10
0
0
1
1
0
0
X
1
X
0
1
X
0
0
Karnaugh
map
with
630
Chapter6: Boolean 7.
Algebras
Implement
the function
/ (a,fe,c,d)= 2 m(4,10,13,15) using
an
1
8 x
multiplexer.
8. (a) Constructa 32 x 1multiplexer (b) Construct a 16 x 1multiplexer an enable input, and an OR 9. 10.
11.
12.
Design Using
a full-adder full-adders
using using
five two
8x1 multiplexers, 8x1 multiplexers,
gate.
using half-addersand an OR only design a circuitthat will
the switching variablesxux2,x3,and x4. (a) Show that the set {F,G}is functionally = x\342\200\224* = 3c + y is the implication F(x,y) y x is the negationfunction,
gate. output
the
of
where
complete function
sum
and
G(x)
=
(b) Showthat {HyK} is not functionally complete where H(x,y) x *-* y is the function that outputs 1 iff x and y have the same = x +y\\s the inclusiveOR function. value and K(xyy) = ABCD Draw the logic diagram of the function/(A, J3,C,D) + AC + BCDusing only NAND gates.
7
Flows
Network
7.1
AS
GRAPHS
OF
MODELS
Many systems
OF COMMODITIES
FLOW
involve
the
flow
such as
oil drums, automobiles, manufactured
be somethingintangiblesuch
systemsof telephonesand and factories,warehouses,
as
lines; retail
The modeling of such physical directed graphs, with the edges telephone
may
be
goods,
something or money;
tangible
or it may
or heredity. Thus, disease, or interconnections of networks; all involve the flow of
information, railway outlets
a network.
commodities through
in
transmission,
communication,
The commodity
of commodities.
or transportation,
railway
lines,
channels
general,
systems
is frequently
accomplished
by
graph representing roads, airline routes, oil pipelines,or power lines\342\200\224 tracks, The vertices of through which the commodityflows. of the
can represent highway intersections, outlets, telephone railway airline terminals, oil reservoirs,or power stations\342\200\224in relay where the flow of the commodityoriginates, is relayed, or points
the graph
stations, general,
terminates.
The
information conveyed by a graph is basically vertices are adjacent and which vertices directed Two models of physical systems may paths.
structural
which
information indicating
connected by
structurally
similar\342\200\224may
significantly
different
interconnections
of
an
even
be
isomorphic
as
graphs\342\200\224but
For instance, the physical interpretations. can a electric network and telephone system
are be
have
be
be might by a graph, but edgesof the electric whereas the interpreted by parameters such as resistanceor voltage be interpreted by edges of the telephone network modelmight parameterssuch as cost per unit length or maximum of calls per unit of number and we time. We must account for these parameters as part of the model, of a wecan for each do so by either edge or vertex labels.Thus, graph edge specified
network
model
631
632
Chapter
Flows
7: Network
a number of parameters that representnatural and limitations do the same for the verticesof the of the edges. (We could in this chapter we shall restrictour attention in our discussion
associate capabilities but
graph,
to edge
labelings.)
7.1.1.
Example
representa third city. A
the
per
highway
doesn't
of a graph is a
there
a
through
pass
the two
between
the speed limit, while a third label of cars that can travel along the
number
maximum
each vertex by an edge if
distance
the
denote
indicate
could
label
second
connected
correspondingcitiesthat
One edgelabelcould
couldrepresent
Let
System.
are
vertices
between the
highway
cities.
Traffic
A
Two
city.
of time.
unit
7.1.2. An Economic Model. Example of production centers, warehouses, and set of highways, railways,and waterways. This
Suppose
transportation per unit transport vehicles.
Example 7.1.3.
A
of
markets.
unit
vertices
and
channels
edge
Typical
of of available the cost
time,
number
We
Model.
Dynamic
modeled by
can be
system
the
or
commodity,
connected
markets
a graph where edges representtransportation and represent the production centers, warehouses, labels could include the maximum volume per
a by a
have
we
that
system
may incorporate a
dynamicfeature into eitherthe traffic model or the economic model. For instance, we may have several cities located on a road map, and edge the maximum number of units shipped per day. capacities may represent it takes we may also know the number of days to ship the Moreover, commodity betweencities.If we wish to find out the number of units of from city A to city B, say, over a period of 3 days, we shipped commodity can add the dimension of time to the network by replacing each city vertex
v by
four vertices
(Of course,v0 (u,v)
which
represents
can be
(Vi,vi+i)
commodity to Let us
vlf
each
v2, v3,
v on
city
takes k days to
\342\200\242 \342\200\242 (u3_kyv3), (^l^fc+i)*\342\200\242
edges
v0,
traverse, we with
be storedtemporarily
the
vt
infinitely
at
following
any
city
represents
day.) Then for make
can
the same
assigned an
be more precisein
where
the starting
the
capacity as (u9v). large
v on
day i.
each
road
(u0,vk)t
edges
capacity
Finally,
to
the
allow
vertex.
example.
Suppose that oil is beingtransportedfrom that there are markets at g, h, and L Suppose, moreover, four stations or reservoirs denoted by vertices c, d, e, and /. Each relay week there are 20,000 and 60,000 to a and 6, while barrelsofoilavailable 20,000, 30,000,and 20,000barrelsare needed respectively by g9 h, and L Example
refineries at
a and
7.1.4.
b to
Section7.1
as
Graphs
Models
(a)
of Flow
633
of Commodities
(b)
7-1.
Figure
are markets pipelines connecting the refineries,reservoirs,and with is labeled by edges in the graph of Figure7-l(a).Each edge a number indicatingthe maximum amount of oil in thousands of barrels that canbetransported via that pipeline per week. In cases where there are multiple sources as a and b) and (such them combine multiple terminals(such as g, h, and i) we can artificially to a single source vertex and a singleterminalvertex two extra by adding S and D, represent vertices as we did in Figure7-l(b).Thesetwo vertices, the total supply and demand.Eachedge(S,x) is labeled with a number x can supply each week. representing the total amountof oilthat refinery
The
denoted
Likewiseeach edgeof the
edge
for
(h,D),
of
barrels
these
With
a
instance,
week; the edge of oil each week.
oil each
barrels
20,000
form is labeled with a number (xjl) of oil demanded by market x eachweek.The is labeled 30 because market h requires30,000
amount
total
the
representing
examples
preliminary
as defined
network
(transport)
Definition
7.1.1.
and containsno
loops
directed
A
is called
it can (S,a) is labeled20because
we see below. graph
a (transport)
of the essentialcharacteristics is (weakly) connected network if and only if
G that
are two distinguished verticesS and source and sink of G, respectively; function (ii) there is a nonnegative real valued (i) there
supply
and
D
G, called
of
k defined
on the
the
edges
ofG.
The edge of
function
k
G, the value
is called k(e)
function of the capacity of e. We the capacity
is called
G and if think
e is
of k(e)
any
as
634
Chapter7: Network
Flows
maximum rate at vertices, distinct
the
representing along
transported
e. The
Frequently it is the casethat
in-degree0
the source
network
a transport
in
S has
this is not always
out-degree 0, but
D has
sink
the
and
D,
vertices.
intermediate
are called
which a commodity can be from the sourceS and the sink
the
case.
We generally
that (G,k) is a transportnetwork, and by this we k is the capacity function is the directedgraph and
will say
indicate that G
definedon the edgesofG.
If
=
G
such
that
y
could be
any
Similarly,let B(v) are
that
For
-
example,
= 0,
{y E
Thus
A
in
the empty
V(G)
\\ (y,v)
denote - {y
A(v)
that
E
vertex
with
(v)
and edge
V(G)
of ally
E V(G)
\\ (v,y)
E V(G)
E
E(G)}
are \"after v\" Then B(v) is the set of
\"follow
E(G)}.
set
the set
v\" or
i>.\"
\"before
- {ajbj},while
jB(S)
from v.
is incident
graph
called the set ofverticesof G
vertices B(c)
is a directed vE V(G),let
(V(G)MG))
set E(G)ythen for
the A(e)
set.
graph of Figure 7-l(b), A(c) = \\dye) and and B(e) = {c}. Notethat A(D) - 0 and
= {g,h,i}
Exercises for Section7.1
1.
The
in and
accompanying
which c.
graph
(Figure
oil for 3 cities, j\\ fe, Vertices d, e, /, g, ft,
and and
a pipeline system from 3 refineries,a, fe, delivered
7-2) represents m is
i represent
stations. The capacitiesofthe pipelines are
intermediate shown
on the
pumping edges.
as a transport network. (a) Model this system that refineries Add to model the additional facts (b) a, fe, and your can produce at most 2,10, and 5 units respectively. in model the facts that cities j, k, and (c) Incorporate your and 7 units 4, 3, require respectively.
Figure
7-2.
c
m
Section
Graphs as
7.1
Modelsof
Flow
is possibleto go from city A to city C either directly to5:00 through city B. Duringthe period4:00 p.m.,the
2. It
times
are 30
minutes
toJ3,
15 minutes
or
by
average
from B to
going trip
C, and 30
maximum capacities of the routesare B route, 3000vehicleson the B to C route, and 6000vehicleson the A to C route. Represent the flow of traffic to 5:00 p.m. as a transport network.(Hint:let from A to C from 4:00 vertices cities at a particular time.) represent Suppose3 applicantsAu A2, A3 apply for 4 jobs Jl9 J2, J3,
minutes
A
from
4000
on
vehicles
3.
A
from
635
of Commodities
C. The
to
A to
the
network.
there are 5 girls
Gl9 G2> ..., Gb and 5 boysBu J32, ..., J35. further, that Gx dates Bl9 J32, and J34; G2 dates B2and J33; G3 dates B2; G4 dates J33 and J35; and G5 dates J33, J34, and J35. in a transport network. (a) Represent this information (b) Is it possiblefor all 5 girls to go to a party with a boy she usually dates?
4. Suppose Suppose,
5. Suppose5 personsA,
J3, C, D, E belong to 4 committeesClf C2, C3, C4 - {A,C,Z>}, C3 - {C,D^B}, where Cx - {J3,C}, and C4 = {A,D}. C2 this information in a transport network. (a) Represent for the committees where toselect4 chairpersons (b) Isit possible
no person chairsmorethan
6. A
manufacturing
that
firm
forecastthe demandfor
The task of
each the
producing
one
committee?
product various
of articles can certain period of time. can be assigned to
a variety
produces
over a articles
take varying amounts of time to producethe for number of articles and d, be the demand each article for i = 1, 2,.. .,n;letm be the number of workers and ^; Assume the timerequired worker to produce the Ith article. by the/h also that the 7th worker can produce for at most c; units of time. for producing article i by (a) At first ignore the time ty required worker j and designa transportnetwork for the case n = 3 and different
who
workers,
articles.
Let
n
be
the
m = 2.
(b)
how
Describe
(c) Discuss
how
to design the
time
transport network.
7. From
a transport ti}-
could
networkin general. be
incorporated
into
your
to a single run a of n cities, Cl9 C2, ..., Cn buses group destination Cn+1.If thereis a roadfrom C, to C;, let ttj be the time required to go from Ct to C; by this road, and let fy; be the maximum number of buses which can usethe road from C, to C; per unit of time (bij - 0 if there is no road from Ct to C;). Let bu be the maximum number of buses that can be stationedat Ch and let A, be the
636
Chapter
Flows
7: Network
Figure 7-3.
number
is:
question
many
of
buses
at
stationed
buses
the buses
should
How
arrive at
as possible
Draw a transport network (Ci(t), C{(t + capacity bu for
and times of shown
7.2
of
tij))
i =
(at time t = 0). The
be scheduledin orderto have in a given time interval 0? =
vertices
b^ and
C,-(\302\243)
are
them
labeled
edges of
(Ciyt)9
edges (C.-(*),Ctf*
3, 4, 5 and t = 0, 1,2,3,4
between
as
Cn+1
with
capacity
1, 2,
travel
Q originally
the
where
on the
1))
+
5 cities
road
map
7-3.
in Figure
FLOWS to ask about a system suchasthe onepicturedin of oil so that the possible to organizethe shipment demands of marketsg,h, and i are met? The total amount of oil available of Figure to a is 20,000 barrels per week. (Thisis indicatedin the graph of 7-l(b) that a has only one incoming edge (B(a) = {S})and the capacity of a's oil. this edge is 20.) Since A (a) = {c,/}, c and /are the only recipients the barrels to c and 0 barrels to /, exceptfor Thus, a could sendall 20,000 a can send a fact that the edge (a,c) has a 12,000 barrelcapacity. Thus, a can send a maximum of maximum of 12,000barrelsto c.Butlikewise a could send 16,000 barrels to/and 4,000to c; 16,000barrelsto/. Hence, or 8,000to/ and 12,000 to c; or 10,000 to / and 10,000to c;and so on. we have not begun to considerhow b could distribute its oil, Although we alreadyseea largenumber of potential plans. Let us begin to organize our thoughts concerning this and as we proceed we will beginto problem, A
Figure
question
practical
7-1 (b)
is: Is it
seethe basic of the Let us labeledges ideas
with
second
the
amount
concept two
of flow.
numbers,
of flow through
first the
that edge.We
(1) The amount of oil transported along any capacity of that edge.
capacity of the edgeand will
edge
make
cannot
two rules: exceed
the
Section
7.2
637
Flows
at the sourceS and the sink D, the amount of oil flowing v must be equal to the amountofoil flowing of the out at an intermediatevertex.) vertex. (Thus, no oil gets \"stored\"
(2) Except
a vertex
into
Of
the
send
edges
(c,e)
16,000 barrels to
to send
decide
could
a could distribute its oil,supposewe
ways refinery
possible
arbitrarily
20,000 to and (c,d)
c from fe, but since are 10 and 7 respectively,
maximum of 17,000barrels.Thus,
A(c)
/ and 4,000barrelsto c.We = {e>d}and the capacities of
c can send out a be stored at c, c can been chosen to receive4,000 we
no
since
see that
oil can
Since c has receiveat most 17,000 b. Let barrels us make a, c can receive at most 13,000barrels the choice to send 13,000barrelsto from b. Likewise we choose to send sent from S to b. b to d. Thus, there must be 13,000 26,000 barrels.
from
from
c
from
We
only
continue
making
choices
to the above
subject
7-4. in the diagram shown Figure indicated market We see that, for this choiceof flow, i received
as
constraints
two
jn
and h did not. The following
a summary
is
of the
but g
its demand
schedule we
have
developed:
a sends
16,000 to/
4,000 to c
b sends 13,000toc
tod 13,000
Total
g receives
16,000
h receives
10,000
i receives20,000
Total
46,000
46,000
a and b are capable of producinga total of is only 70,000, the capacity total demand not restrictions have the flow to the extent that affected until later to see whether or demand. We will have to wait receive their not this flow is the best possible schedule. Thus,
even
barrelsof oil
80,000
though
and
the
somemarketsdid
a% 06,16)^/08.16^
(12,0)/
(17,
0)y
(20,
1^(10,
10), ttXd5, 10)r
h
(30,
16)
10)^
(20, 20)
(13,
13)
-\342\226\272\342\200\242 *\342\226\240\342\200\242 , <
Figure
d
(30, 20)
7-4.
638
Chapter 7: Network
Flows
Let (G,k) be a transport network S source with 7.2.1. k is defined on the edgesof G. function D. Assumethe capacity F defined on the edges in G is a nonnegative real-valuedfunction
Definition
and sink A
flow
of G suchthat
(i) 0 < F(e) <
(ii) If x is any
k(e)
for
each of G,
vertex
edge e E E(G). different from the
sourceor the sink,
then
values F(xyy) such that y E. A(x) must equal the sum of all values F(z,x) suchthat z E B(x), and from (iii) F(e) = 0 for any edge e incident to the source S or incident of all
the
sum
the
sink D.
called the capacity constraint,and it insures an edge does not exceed the capacity for along that the sum of all flows at (ii) requires incoming to the sum of all outgoingflows at x. In symbols, (ii) becomes
Condition (i) is the amount of edge. Condition equal
flow
E V(G)
for every x
Thus,
is the
2yEMx)F(x9y)
the net
x. Moreover,
flow out
flow
x is
- {SM
of x and 2zE~B{x)F(z,x) of
out
that
(i.Z.I)
z<=B{x)
yGA(x)
that
a vertex
x is
flow into
is the
defined to be
net flow into x is, of course, conditions (ii) and (ii')assurethat 2zeb(x)F(z>x) 2yeA(x)F(jc,y). Thus, for an intermediate vertex x the net flow out of x equals the net flow into no flow is either created x, and this common value is zero.In otherwords, or destroyedat an intermediatevertex. condition (ii) or (ii') is referred to as the conversation Frequently, -
2yeA(x)F(jc,y)
2zEBix)F(z,x),
while the
~
equation. Condition
not in
(iii)
that
insures
the flow moves
from sourceS to sink
D
and
the reverse direction.
Note that zero flow,
every
transport
where F(e)
= 0 for
has at least edge e E E(G).
network each
one flow, namely, the Another exampleof a
in Figure 7-5. We still follow of labeling is depicted the convention e each edge e as (k(e),F(e))where is the of and k(e) F(e) is the capacity flow
flow
along
e.
Example
7.2.1.
Consider the
example of a network
flow
shown
in
Figure 7-5.
Note the zeroflow into the source S along the edge (6,S).While it is that for each intermediate vertex x> the flow into x equals the flow of x, we only illustrate this fact for the out vertex e. The flow into e is
true
Section
Flows
7.2
639
Figure 7-5.
F(a,e) +
F(cye)
2 + 2 = 4.
The Such
flow
edges
along
=
2 +
edges
are said
2 =
4, while the flow
out
of e
is F(eyD)
+ F(eyd)=
and (aye) is actually equal to the capacity. saturated; all other edgesof Figure 7-5
(S,a)
to be
are
If an edge e is unsaturated, then we define the slack of e in a flow F to be s(e) = k(e) - F(e).Therefore, the slack of edge (eyD) in Figure 7-5is 8 while the slack of edge (d,D) is 2. in this example the flow out of the sourceS is equal Note further that in turn, is equal to the flow into to F(S,a) + F(SyC) = 4 + 2 = 6, and this, the sink D. That this is always the we case will be proved later, but first need some additional notation and terminology. In general, if X and Y are any subsets of V(G),we shall write (X, Y) for the set of all edgeswhich a vertex x E X to a vertex y E Y. In go from we shall write (x,Y) for ({jc},Y) and (Y,jc) for (Y,M). Let us particular, of all edges incident to x, and sincethese note that (V(G)yx) consists = from a vertex y E B(x), we have all incident are (V(G),x) edges = (J3(jc),jc). Similarly (x, V(G)) (xyA(x)). into the real numbers (g Now E(G) g is any function from suppose We shall a capacity function or a flow function). might be, for example, x E X, y E Y, and where write g(Xy Y) for the sum of all values g(xyy) is the sum of all values Y) = 2(xo,)e(x,Y)g0t,y) (xyy) E E(G). Thus, g(Xy x E X to a y E Y. We the an adopt g(e) where e is an edge from convention that g(XyY) = 0 if (X, Y) is the empty set. Likewise,g(X,
640
Chapter
7: Network
Flows
for X C
sum of all values g(xyy), for which any (x,y) is an edgein = = E(G). Thus, g(X,V(G)) 2xexg(x,V(G)) Moreover, 2x\302\243Xg(x,A(x)). = 2xeJrf(V(G),x) = 2xEXg(B(x),x). Thus, if g is a flow g(V(G),X) function, then g(V(G),x) is the flow into x arid g(:t, V(G)) is the flow out In particular,
wherex G X and y
is the
V(G))
g(X,
V(G),
in V(G)
vertex
is
of x.
In general if X, + g(X,Z) g(X,Y)
Y,
exclusion. In particular,if #(X,Y) + g(XtZ).
Theorem 7.2.1. LetS and a
of
network
F(S,V(G))-F(V(G),D)We first
Proof.
by
=
UZ)
respectively, of S -
the flow out
Then
D.
into
flow
the
and sink,
Y
=
and
of inclusion
sets, theng(X,
source G.
in
flow
then g(X,Y U Z)
principle
disjoint
the
be
D
be a
Let F
(Gtk).
the
Z are
Yand
of V(G),
subsets
are
Z
and
- g(X,Y D Z)
observethat
F(V(G),V(G))-
\302\243
F(x,V(G))
(7.2.2)
-
\302\243 F(V(G),x) x\302\243V(G)
by condition
However,
x E
each
V(G)\\{S,D}. Thus,
in
F(SfV(G))=
D.
S, and
Thus,
A(S)
out
flow
the
and
F(V(G)JD)
a2,...,
let bu b2,..., =
sum
{ax, a2,
fet
- 0 = F(D,V(G))
defined
the transport
on
the verticesthat are incident
denote
a3,.. .,aj
all the
vertices
and B(D) =
{6lf
incident to fe2, b3,...,
quantity \\F\\
- F^aJ
+ F(S,a2)
+
\342\200\242 \342\200\242 \342\200\242 +
F(S,am)
-F(S,V(G))
= F(bl9D)
+ F(62,D) +
= F(V(G),D)
is called the value
ofthe
flow
F.
since
D. Thus, equation (7.2.3) theorem is proved. \342\226\241 of
flow
for
becomes
- F(V(G),S)+ F(V(G),D)
Let F be a am denote all
7.2.2.
Definition
(G,fc).Let ai9 source
S and no
7.2.1,F(x,V(G))- F(V(G),jc)
that F(V(G),S)
we know
addition,
no flow into
the above
+ F(D,V(G))
F(S,V(G))
But,
(ii) of Definition
\342\200\242 \342\200\242 \342\200\242 +
F(btfD)
(7.2.3) there
is
becomes network from
the
the sink fej. The
Section
641
Flows
7.2
The
flow
in
7-5 has
Figure
value 6, while
the
flow
in
7-4 has
Figure
value 46.
Definition 7.2.3.
A flow F in a network (G,k) is > if | F\\ flow | F | for every flow F in (G,k). Thus, a flow F is maximal if the value of F is F is maximal if there of any flow. In other words, a flow
calleda maximal
the largestpossible
value
is no flow
F*
such
that|F|<|F*|.
We should hasten to remark that, at this stage,it is not clear that a a maximal flow at all. It is at least given network (G,k) must have that the set of values of flows set of conceivable could be an infinite in a maximal that set. Our numbers that does not contain number will to show then be that there always is a maximalflow, and objective in a flow our major concern will be to determine the value of a maximal a flow. such given network and to discussa method for constructing
7.2.2.
Example
maximal.
The
value
of
any
Let us explain why on the
flow defined
|F|
flow
the
Not every examplewill
= F(S,a)+
be
easy to
this
techniques
for
Figure
7-6 is
networkis suchthat F(S,b)
SinceF(S,6)
more sophisticated
in
analyze.
determining
(2, 1)
Figure 7-6.
W&will
maximal
< k(ayd) question,
have
flows.
+ k(a,c) it follows
to develop
642
Flows
7: Network
Chapter
Definition 7.2.1and Theorem7.2.1combine
In summary, the following
F(x,V(G)) -
F(V{GU)-
ifx
|F|
if:c=D if
x*S,D
7.2
for Section
1. Determinewhich
the
of
networks.Explain
graphs
in Figure
7-7 are transport
answer.
your
(c)
produce
= S
\\F\\
0 Exercises
to
fact:
a
>D
Figure 7-7.
2. Considerthe flow
In
the
graph
F in
the transport network shownin Figure7-8. to label edges as (m,n)to indicatethat
continue
we
is m and the flow is n. Find the (a) capacity of the edges(S,a) and (b) Find k(a,D) and k(b9d). (c) Find F(S,a), F(a,c), F(a,D), and F(fe,d).
the
capacity
are saturated. (d) Determinewhich edges (e) Determine the slackof edges(ayD)
(f)
Find|F|.
(g) Determine (h) Determine
A
(a),
A (6),
B(D).
and A (d).
and
(a,c).
(S,6).
7.2
Section
Flows
643
7-8, determine
which
(5,2)
\342\200\242 D
the capacities in the network of the following are flows. Explain.
3. Using
(a)
(c)
Figure
(b)
>D
(d)
Si
(e)
of
'\342\200\242D
\342\200\242 D
S<
\342\200\242D
4.
Consider
the network
(a) Find two (b) Find the
value
with
of
each
as in
capacities
maximal
different
flows.
of these
flows.
Figure 7-8.
644
Chapter
7: Network
Flows
kinds of military
5. Seven
are
equipment
by five cargo planes. Thereare4
units
to be
flown
of each
a battlefield
to
kind of
equipment
and the five planes can carry 9, 8, 6, 4, and 3 units, respectively. in such a way that no 2 cannot be loaded Showthat the equipment units of the same kind are on the same plane. Hint: draw a graph 14 5 vertices representing vertices: the planes, 7 vertices with 2 vertices S and D kinds the of and equipment, representing of t otal number of units equipment and total loading representing capacity. and flow F in Figure 7-5, computeF(X,Y) where 6. Forthe network X =
(a)
Y={dye]
{a,fe,c}
(b) X = {S,c}
(c)
=
X
{S,c}
Y-1M
{fe}
Y=lS,c}
{a}
Y-{6}
= {a4A
Y=\\D)
=
(d) X
y={a,fe}
(e)
X =
(g)
X
(i)
X
(f) X = {S,a,fe,c}
Y={L>}
(h) X = {d,e} 7. In value
=
the of
possible.
Y={a,M Y={a,d,e,Z>}
{S,fe,c}
the
with
networks
following
flow
and a way
(If it is not
indicated
possible to increasethe value,
not.)
(2,2)
W
S.JL2U.;
,JL\302\260\302\261.D
(b)
(3,3)
(d)
(3,3)
the
flows, determine
to increase the value
(4,3)
of
the explain
flow why
if
Section7.3 8. In the following of
value
each
the
in
the missing edge flows Determine the
fill in
networks,
transport
result is a flow of the flows.
the
that
so
645
Cuts
and Minimal
Flows
Maximal
network.
given
(4,3)
(5,4) S^J^
(b)
(5, )
Selected
for Section 7.2
Answers
Label
the Plf P2> P& P* and P5 whose planes and 3 respectively.Thennotethat no plane
units of equipmentsinceno same
the
plane.
units, the planes can
maximum
7
most
equipment. Sincethere
are
(b) 8, maximal
requires
Other problemsaremore
Px
are
there
Obviously
of a
CUTS
flow. For and
be
a network.
for
found
many
practical
Sometimes,
quite easily by
certain
the transport
as in
inspection.
limiting
networkin Figure7-9(a).
of
any
flow. Let
the possibilitiesof
values on
instance,thetotal capacity
source S limits the value source
can
the solution of
difficult.
Consider
7.3.1.
Example
the
a
7.1 and 7.2 that finding a maximal flow
Example 7.2.2,a maximal flow
from
9 and 8 is 7 units. Thus,the 5 carry, + 7 + 6 + 4 + 3 = 27 units of of 4 x 7 = 28 units, no such total
Sections
in
saw
problems
value
are to be in
P2 can carry
flow
MINIMAL
AND
FLOWS We
same kind and
0
(a)
MAXIMAL
more than 7
is possible.
loading
7.3
can have
in fact,
can
they at
carry
of the
2 units
even though
Therefore
are 9,8,6,4,
capacities
7\\
of be
T2 be the total capacityof
incident
edges
the edges
total into
the
from the
capacity of edges the sink. Then,
646
Chapter
Flows
7: Network
a%
-\\
(8,4)/'
>
\\
ar
<
7\\
\\ b
m
5
\342\200\224
\342\200\224\342\226\272
y\302\260
<7'5)\\
W-W (I \342\200\224S
4)
\\(7,
yC(>,5)
b%
\302\273 \342\200\242d
(5,5)
(a)
7-9.
Figure
in
Figure
7-9(a),
Tx =
k(S,a) + k(S,b)
- 8+
7
-
15
+AW,D)
T2-*(c,D)
-7 + 6-13.
Isis
patent
two
values.
that
< 13
|F|
limitations on the values
edgesare
and
unreliable,
be able to network
of
for
flow
any
a.flow.
if \"enough\"
transmit the desiredflow.
(a,c) and (b,d) in no
Figure
7-9.
for
Consider,
If these
of flow from
amount
cannot exceedthe smallerofthese F. There are, however, other For example, it may be that some of these edges fail, then we will not
of any flow
value
the
Thus,
the edges
example,
removed from
edges were
S could reachthe
sink.
limit the capacitiesof theseedgeslikewise = 4 + 5 = 9. If we find flow; therefore, |F| < k(a,c) + k(b,d) value 9, then we know that that flow would be a maximal flow. in Figure 7-9(b) is, therefore, maximal.
conclude
that the
Example7.3.2.
Consider
the
example
shown
The flow out of the source and the flow into edge capacity. Nevertheless,the \"bottleneck'' therefore the
of
flows
transport
shown
illustrated
flow
in
network.
Figure
is a
maximal
7-11 are
the
sink
we value of a a flow of The
are nowhere is
flow
7-10.
in Figure
(c,d)
the
Thus,
saturated,
near and
flow. Of course,the examples
also maximal
flows
in
the
same
Section7.3
647
Cuts
and Minimal
Flows
Maximal
(7, 1)
(20, 1).
1)
(4,
b
7-10.
Figure
These
following definition.
suggest the
examples
D
d (5, 1)
(2,2)
c
Definition 7.3.1. source
S and
sinkD.
but^D
X, (\302\243
Let
(XyX) of
all
is a transport network with that (G,k) Suppose X, Suppose that X is a setofverticessuch that S \302\243 denote the complement of X in V(G). Then the set from a vertex in X to a vertex in X is calledan S-D
X
edges
cut.
7-9, the
In Figure examples
sets Xx
such
sets
of
that
=
X2 =
jS},
{S,a,b}9and X3 -
are {S,a,fe,c,d}
cuts.
S-D
are (X\342\200\236Xt)
of network flow. For concept of a cut is centralto the study if a river is a X can north-south viewed as the set be screen line, example, chosen as the set of vertices eastofthe river, then and the cut (XyX) is the setofall westbound on bridges roads crossing the river. Then we can
The
across these of
capacity
east to west by
total trafficjrom
the
calculate
roads in (X,X). We
are
led,
notion of the
to the
therefore,
traffic
the
counting
just
a cut.
7.3.2.
Definition the (G,k), C. Thus,the then
If C is of C
capacity k(C)
capacity
set
any
is defined
k(C)
of
sum of
is the
transport network of the edges of
edges
in a
the
capacities
by:
Z k(e). e\302\243C
In
particular,
write k(X,X)
we are for
the
interested in the capacitiesof S-D cuts X of all capacities of edges from
sum
We (X,X). to X. We
e
(7,0) (20, 2)
b
(4, 2) c
(2, 2) d
\342\226\272 \342\200\242D
(5, 2)
(20,
0)
b
(4, 0)
c (2, 2) (b)'
(a)
Figure
7-11.
+\302\273*D
d
(5, 0)
Chapter
7:
Flows
Network
caution
the
that
there may of
computation
an S-Dcut (X,X)
X
to X
do not enter into
but they
k(X,X).
the cuts
Specifically,
be_edgesfrom with
smallest
a minimal
cut
are critical.
capacities
if there
is no S-D cut (YtY)
Thus, we call such
that
k(Y,Y)
In the
Example 7.3.3.
Refer
7-12and thelistof S-Dcuts
to
the
in
Table
Table 7-1.
transport 7-1.
Possible S-DCuts.
X
X
shown in Figure
network
c
Capacity
{s}
{a,b,c,d,D\\
5
{S,a}
{b,c,d,D}
11
{S,b}
{atc,d,D}
10
\\S,c]
{a,b,d,D}
16
{S,d}
{a,b,ctD\\
{S,a,b}
\\c,d,D\\
{S,a,cj
\\b,d,D}
{S,a,d}
\\b,c,D]
{SAc}
{a,d,D}
{S.b.d}
{a,c,D}
{S,c,d} {S,a,b,c}
{a,b,D} {d,D}
19
12 22 20
15 17
21 17
{S,a,bfd\\
{c,D}
14
{S.a.c.d}
\\b,D\\
22
{S,btctd\\
\\a,D]
13
{S,a,b,c,d}
\\D\\
10
Figure 7-12.
Section7.3
Maximal
Flows
and Minimal
Cuts
649
= 12 = k(ayd) + k(b,d) not enter into the computationof the capacity of X becausejbhe edge (c,6) is in the wrong that X to X and not from X to X. direction, is, (c,6) is an-edge from - 7+ of (Y,Y), Likewisethe capacity where Y = {S,M,is k(byd) + k(S,a) = 3-10 since (Y,Y) The edges (c,6) and (a,fe) not do {(fe,d),(S,a)}. contribute of (Y, Y). any value to the capacity We have seen in Example7.3.1that the value of any flow is limited by the capacitiesofthe cuts.That this is true in general is part of the content We emphasize that if X 5 + 7. Note that the capacity
of
the
7.3.1.
is any
k(X,X)
the
of
edge
(c,6) does
theorem.
following
Theorem (X,X)
- {S,a,b},
S-D cut,
If F is a then
(a) |F| = F(X,X) -
in
flow
F(X,X),
and
(G,k) and
network
a transport
if
consequently
\\F\\^k(X,X).
(b)
If (XyX) is an
Proof.
S-D cut,then
- F(V(G),X)
F(X,V(G))
- Y. F(x,V(G))-
F(V(G),x\\
xEX
- F(S,V(G))
- F(V(G),S)
+ J2 F(x,V(G))-
F(V(G),x)
x\302\243X\\S
Butforx${SJ)}
F(x,V(G))-F(V(G),x)=0
so that
the above equation simplifies
to
F(S,V(G))-F(V(G),S)=\\F\\.
_
Thm,F(X,V(G))-F(V(G),X)=\\F\\._
Moreover, F(X,V(G)) - F(X,X U X) =_F(X,X) = 0. SimilarlyF(V(G),X) - F(X U X,X) Xf1X to Therefore, F(X,V(G)) - F(V(G),X) simplifies define
If_we
F(X,X), across
any
the
net
flow
across
then we see that the value S-D cut (X,X). We may
andF(X,X)
Now|F| -
astheflowintoX. F(X,X)
-
F(X,X)
of
+ = FiXJC)
F(X,X)
F(X,X)jiiice
+ F(X,X).
- F(X,X).
the cut (XJC) as F(X,X) any flow is_equal to the net flow
think of F{X,X)asthe _
< F(X,X)
flow
sinceF(y,x) > Ofor
out
anyy
of X G
650
Chapter 7: Network
Flows
x E
X and
in the definition
< A (x,y) by the capacity constraint that F(X9X) < fe(X,X) so that, in than or equal to the capacity of any
we see
a flow,
of
the value of any
general, cut.
X. But also,sinceF(x,y) is less
flow
\342\226\241
In
computedin severalapparently (1) | F
|=
that the
established
we have
summary,
the total flow
different
be
F can
a flow
ways:
source S,
of the
out
(2) | F | - thetotal flow (3) | F | = the net flow
of
value
sink D, any S-D cut.
the
into across
In truth, methods (1) and (2)arenothing but cases of_(3), for in special (1) the total flow out of S equals the net flow across the cut (X,X), where X ==JS}. Moreover,thetotal flow into D equals the net flow across the cut Y),
(Y,
where
Y ={!>}.
From this theorem we is a minimal cut, (MM) Corollary
that|F| = cut.
can
be a
Let F
7^3.1.
F
Then
fe(X,X).
if F*
see that
readily
then | F* | < k
and
flow
maximal
flow.
all
makes
that\\F\\=k(X9X)
Thus,|F| = |F*|for
any
that|F|
Y) = k (X,X)
than or equal to k (X,X).Therefore, (X,X) Corollary
7.3.2.
that F
Suppose
that_(X,X) is an S-D cut.Then (X9X)
if and
(i) F(e) and
for
is
cut of
any
But the
in fact equalities. < \\F* |. Hence F is a cut with capacity less any \342\226\241 a minimal cut.
is a flow value
the
be
and_(Y9Y)
k(X,X).
in
of F
a network
and suppose
equals the
capacity of
is, F(XyX)
= k
only if
- k (e)for
(ii) F(e^) = 0 F(X,X)
S-D cut such (X,X) is a minimal
inequalities
such
flow_F*
k (Y,
Moreover,
and
be an
(X,X)
maximal flow and
is a
Proof. Let F* be any flow of larger jyalue < smaller capacity.ThenJF\\< |F* | <; k(Y,Y) assumption
is a maximal flow
(M,M).
for
each
each
edge
e E
edge
(X,X)f (that _ e' E (X,X)
(or in other
(X,X)), words,
= 0).
(If these conditions prevail, then F minimal cut.)
is
a
maximal
flow
and
(X,X)
is a
Section
Flows and
Maximal
7.3
Proof.
651
Cuts
Minimal
conditions (i) and (ii)hold.Then
Suppose |
F | =
net flow across
-
E
F(e)-
(X,X)
e\302\243(X,X~)
\302\243 F(e') e'\302\243(X~,X)
\302\243 F(e)e\302\243(X,X\")
\302\243 *(e) e\302\243(X,X~)
-A(X,X)
the edgesjn of (X,X).
since
capacity
(X,X) do not contributeto the computation __ _
Conversely,if|F|^
*V)
^e(Xx)
since F(e) < fe(e) the
from
above
each edgee' by and
=
F(e')
2cG(X^
for
each
inequality definition
for each k (e) implies
= 0
conclude
7.3.3
F(e')
=
the
2,eex.*> F(e) JV) S^^,
-|Fl-
k(XyX)
2e<=ix,X)k(e) S,^,
fe(X,X)
edge of (X,X). But then subtracting k(X,X) > 0 for But sinceF(e') F(e'). gives 0 > 2Ve{x~,x) of a flow, we conclude that F(e') - 0 2^e(x;X)
edge e'E (X,X).But F(e) = k (e)for each
Example 7.3.4. Theflow Example
then
k(X,X),
of
we observed
in
then
7-13
Figure
fe(X,X)_=
e E
edge
flow
by
D
5, and sincein
has value
that the minimal
that this flow is a maximal
Sc\302\243(x^F(e)
(X,X).
cut had
Corollary
capacity
5
we
7.3.1.
Figure 7-13.
Example 7.3.5. Considerthe flow This flow is maximal conditions
of
Corollary
since for 7.3.2.
X
=
shown
in Figure
{S,a,fe}, the
7-14.
cut (X,X)
satisfiesthe
652
Chapter 7: Network
Flows
7-14.
Figure
Exercises
for Section
1.
7.3
7-15 a transport network with shows Figure their capacities. Find all S-Dcutsand their cut
minimum
2. Suppose that
D. Showthat of a
edges
capacities.
labeled with What is the
capacity?
7-15.
Figure
value
the
(G,k) is a transportnetwork if
there
directed
is no
with
S and
source
path from S to D, then
maximal flow in G and the capacity
of a
minimal
sink the
cut in G
are both zero.
3.
Let
(G,k)
be
the
network
Figure7-16,where
(a)
Give
(b)
Determine|F\\.
an
example
the
label
with
source
on each
of a flow
S and sink D illustrated in edge is the capacity.
F in G suchthat
Listthe edgesof(X,X), (c) Let Xj= {S,a,d}. of(X,X).
\\F\\
>
5.
__ and
find
the capacity
Section7.3
and Minimal
Flows
Maximal
653
Cuts
\342\200\242 D
Figure
4. In
the networkshown
in
7-16.
7-17, find
Figure
at least 7 cuts of
capacity
6.
5. (a)
Consider 4 jobs\342\200\224jj
andy3.
Baker,
people\342\200\224Allen,
Allen has
and./V
j*2 J3>
and
Case,
Baker can do jobsjx andj2.Case
while Dunn can only
peopleto
do
job
can
j4. We wish
4
Dunn\342\200\224and
the skillto perform do jobs
to either
jobs
j itj2t
j2 and
j3,
assign the
so that all jobs can be donesimultaneously jobs the assignment is impossible.It is assumed that at a time. each can do one Formulate this person only job a what as flow Determine the value of the problem problem. must be for all 4 people to be assigned.Determine a flow or
state
maximal
(b)
flow, and people, 2 carpenters,a plumber, and as a as a plumber, carpenter qualified
that 4
Suppose person
the
that
who is
for 4 job openings,onein
(1) Explain why
the
(2) Formulate
this
maximal
carpentry
4 jobs will a flow
as
and
three
apply in plumbing.
be filled. problem as in (a) and not all
flow.
>D
Figure 7-17.
one
find
a
654
Chapter
7: Network
Flows
Figure 7-18.
.(c) The verticesin students
and
that
indicates
(1)
Draw a
7-18
Figure
transport networkthat
the 5 teachers canbeassigned
per student,so that that he or shewants. (2)
S be
Let
teachers
represent
and
tiyt2ftZytAy
Si,s2,s3,s4>and s5 at an academy.The edge(tifsj) the student s; would liketo be taught by teacher
1 teacher a teacher by
5 students,
the
is taught
student
each
the source and D the,sink.Statewhat
k(s2,D) = 1 and
= 1
k(ti,s2)
(3) Find a maximal flow in (4) Use the maximal flow
this to
or not
whether
answer
will
to
t5,
k (S,t
i) =
1
means.
network. the
arrange
required
teacher-
student assignment. 6. A set of edges in a directed graph G is called an (edge) if its removal from G breaks all directedpaths set from disconnecting set C is an a-b at least one vertex of G. We say that a disconnecting set if every directed path from a to b is brokenby the disconnecting of C.
removal
(a) Prove
S-D
every
cut.
7,
A set
of edges
removal from of
G to
C in a G breaks
at least
is an
cut
(b) Showthat the set Y in Figure7-9is an
=
S-D disconnecting set. (S,b), (a,c)} for the directed graph set but is not an S-D disconnecting
{(S,a),
S-D
directed graph G all directed
is
an
(edge)
paths from at
one other vertex of G
and
no
cut-set
if its
least onevertex
proper
subset
of C
Section7.3
Flows
Maximal
and Minimal
655
Cuts
\342\226\272 \342\200\242D
7-19.
Figure
paths betweenthe samepair of vertices. Thus, a a cut-set if C is a disconnecting set and no proper subsetof C is a disconnecting set. We say that C is an a-b cut-setif every directed path from a to b has beenbroken by the of C. In Figure 7-19the sets {(S,a),(S,fe)}, removal {(S,6),(a,c)}, S-D and {(g,D)} all form {(c,d)}, {(dye),(d,g),(f,g)l edge cut-sets. in a transport cut-sets (a) Prove that the class of S-D edge all directed
breaks
set C of
in
edges
G is
networkis containedin
the
(b) In the transportnetwork
of
not an S-Dedgecut-set.
Figure
of cuts. 7-19 find
S-D cut
a minimal
that
Prove
(c)
class
cut-set.
8.
an S-D cut that
is
is necessarily an S-D edge
is the set of all edge S-D cut-setsin a network D arethe sourceand sink. Suppose, moreover, and (G,k) that C is the setof S-Dcuts.We know that E C C and thus, mx = of all min{& (Y) \\ Y is an edge S-D cut-set} = the minimum > S-D of S-D cut-sets is an min{fc(X,X) | (X9X) capacities edge over a larger set is always the minimum smaller cut} = m2 because in fact, over a subset of that set. Prove than the minimum that, E
that
Suppose
where S
rrti
\342\200\224
m2.
F of Example 7.3.5and X = {S,d}, compute F(XyX) and F(X,X). Do the samefor X = {S,a,c}. 10. (a) If k(e) = 1 for each edge e in a transport network (G,k),find for the capacity of a cut (X,X). another description If k (e) = 1 for each edgee in (G,k), (b) description of give another the value of a flow and of a maximal flow. 11. For each of the_following examples in Figure 7-20,determine and (c) k(X,X) whereX = {S,a}. (a) (b) F(X,X), |F|, 9.
For thejlow
In eachof
the
see
how to
maximal flow.
examples,
it is
increase the
to increase the
possible
flow?
If
so,
determine
flow.
Can
the value
you
of a
656
Chapter
7: Network Flows
a
(2, 0)
c
a
(8,6)
Figure
12. Disprove
(4, \342\200\242
0) \342\226\272\342\200\242D
7-20.
the following:
network have the same capacity, (a) If all the edgesofa transport then all S-Dcutshave the same capacity. (b) If F is a flow such that | F | = 0, then F isthe zeroflow. If all edges in a transport network from the source S are (c) then all sink D into the are saturated. saturated, edges then (d) If (X,X) is a minimal S-Dcut in a transport network, there are no edges in G with capacity smaller than C - min
{k(e)\\eG(X,X)l
is a maximal flow, then there are no than max{F (e)| e is an edge from S}. in Figure (f) In the transportjietwork shown (e)
13.
If F
edges
with
7-21, with
larger
flow
indicated
X = {S,a,fe,c,d}. capacities, (X,X) is a minimalcut where to A is to be transmitted as messages.We want set of words one of word the each of the by representing possibility investigate letters of that word chosensuch that the words can be represented transmit is possible, we can a uniquely. If sucha representation we a want to for word of a instead letter message complete single of words, sets send. For the following design a network modeland is possible. or not such a representation determinewhether
(a) {bcd,aef,abef,abdf,abc} (b)
{ace,bc,dab,df,fe}
(c)
{abc,bde,ac,bc,c}
\342\200\242
Section
Maximal Flows
7.3
657
Cuts
Minimal
and
Figure 7-21.
14.
Let n elements, both of ici and ir2 be two partitions of a set with which contain exactly r disjoint nonempty State a subsets. of necessary and sufficient conditionfor the possibility n elements such that the r disjoint subsetsin irx as selectingr of the well as the r disjoint subsets of tt2 are represented, 4 disjoint into (b) The integers 2,3,.. .,20,21are partitioned subsets according are to their remainders upon division by 4. They also partitioned into 4 disjoint subsets according to the number of factors prime they contain (counting multiplicity), (&)
{{2,3,5,7,11,13,17,19},
namely
{16}}. Is it
possible to select 4
representative for representativefor
each each
{4,6,9,10,14,15,21}, such integers
remainder of number
possible possible
{8,12,18,20},
is a 4 and a
there
that
modulo
prime factors?
15. A company for a carpenter, a mechanic,a plumber,and advertises an electrician*The company The first four applicants. interviews and an is a plumber and a carpenter,the seconda mechanic and an a fourth electrician, the third a mechanic,and the carpenter four electrician. Can the jobsbefilled by these applicants? 16. At a party, there are 6 girls and 6 boys. Girl Gx know boys BuB2,Be; girl G2 knows B2 and B5; girl G3 knows B2fB3,B4;girl G4 knows while
BUB3,B5; respectively.
During
girls G5 and G6 know dance, can
a single
Bl9B6
and B2yB3yB4yB5
each girl dance with
she
a boy
knows?
17. Let
E bea setand
not be where
are n
.,An
AlfA2y..
disjoint). If we can choosen
at
\302\243 At
for
each
i>
we
then
distinct representatives.
For
different clubs,and it may precisely question
be
that
subsets of \302\243 (these distinct
say that instance,
all of
the
sets
the members
need
cii,a2t..
we have a
one representative from each club to a When is this possible? In the following,
is:
sets
elements
.,a\342\200\236
system of At may
want
to
be
send
convention.The use
network
658
Chapter 7: Network
Flows
indicatedsubsetsof E If so,list
to determine whether or not the have a {a,6,c,d,e} system of distinct representatives.
flows
a system.
Ax =
(a)
-
{a,fa},A2
(b) A! = {a,d}, A2
Az
{a,c,d},
-
{fe,c},
A4
- {c,d}
{a,fe,c}, A3 - {c,d,e},A4 - {c,d,e} = = (c) Ax {a,d}, A2 {a,6,c,d,e}, A3 = {d}, A4 - {a,d} = (d) Ax {a,6,c}, A2 [bfd>e},A3 - {a,c}, A4 - {6,c}, A5 = (e) Ax {6,d,e},A2 {a,e}, A3 = {c,d},A4 = {cyd\\
Selected
=
1. The 16
cuts
=
{c}
7.3
for Section
Answers
\302\253
such
have
8,8,8,9,9,10,11,11,12,13,14,16,
capacities
17,18,19,21.
3. (a)
(4,3)
Figure
value of
The
(b)
6. First,
this
flow
7-22.
is 8.
define remove all edgesof C to obtain a graph if. Then S v of G such that there is a directed path from
X of vertices
if. The reached
S-D
a set to v
in
complement X of X is all verticesof G that cannot be via a directed path from S in if. Thus^D E X sinceCis an
set of edges (X9X) is_ therefore a cut. disconnecting set^The Now observe that (X9X)C C.For if (x9y) E (X,X) and (*,y) \302\243 C, S to y. This directed path is then in if, there is a directed path from the formed a directed by edge (x,y). by path S to x, followed
However, by definition of X> this impliesy\302\243X,a (x,y) E C and (X,X) C C.
contradiction.
Hence, 7.
(a)
By
C is
6, any S-D disconnectingset If C is, in fact, an edgecut-setthen_no
Exercise
(X,X).
a disconnectingset. But
set. Thus,C -
(X,X).
the
cut
(X,X)
C
contains
proper
is a
a
subset
cut
of
disconnecting
Section
The Max
7.4
Figure 7-16let X
(b) In
a cut
=
an
not
but
{Sye}. Then
cut-set
edge
{(S,a),(S,6)} disconnecting
Cut
Flow-Min
(X9X) =
659
Theorem
is {(Sya)y(Syb)y(e,g)}
since the
proper subset,
set.
is_a
of (X,X) is a minimal cut. If somepropersubset set C then cut contains another C, disconnecting The capacity of ( Y,Y) must be lessthan the of (YyY). capacity C (XyX) and the capacity is the sum of a (XyX) since (YyY) subset of the same numbers. This contradictsthe fact that has no proper (XyX) was a minimal cut. Thus, (X,X) and therefore must be an edgecut-set. subsets, disconnecting 8. Ingeneral, of a set of numbersis lessthan to the minimum or_equal the minimum of a subset of those numbers. Let (X0,X0) be a minimal S-D cut. By Exercise is also an S-D edge 7(c) (X0,X0) cut-set.Hence, minimal cut is contained in E. Thus, m2 > any
(c)
Supjpose
is a
(X,X)
7.4
THE
CUT THEOREM
FLOW-MIN
MAX
Theorem7.3.1
of any flow, in particular the value of a minimal cut. Corollary 7.3.1 revealsthat if^ver thereis a flow F with value equal to the capacity of is a minimal cut. some cut (XyX)y then F is a maximal flow and (X,X) must be |F| = k(X9X)9 then edgesin (X9X) Corollary7.3.2shows that
asserts
of a
flow, is at
maximal
value
the
most the capacity
thatjf
must have zero flow. All of these results reveal properties about maximal flows but do not show how to find a maximal flow, and, for that matter, they do not guaranteethat a maximal exists. All we know at this point is that if certain conditions even flow these we not know whether we maximal but then have a do flow, prevail and edges in (XyX)
saturated
conditions
must
The
prevail
well-known
comes to
always.
Max Flow-Min
Cut theoremof
Theorem 7.4.1. The Max Flow-Min Cut
transport network, the value of
and
Fulkerson
of
any
maximal
In
Theorem.
flow is equal
any
to the capacity
cut.
a minimal
This theorem
asserts the following:
(1)
the
existence
(2)
the
existence
(3) the
equality
minimal
In other words, equality
Ford
our rescue.
for
of a minimal cut (X,X), of a maximal flow F, and for any of |_F| and k(X,X)
maximal
flow
F
and
any
cut (XyX). the
a maximal
inequality
flow and
in Theorem 7.3.1 becomesan stated a minimal cut. Moreover,the conditions
660
Chapter
7: Network Flows
stated in Corollary a minimal
and
flow
7.3.1and 7.3.2do,in
us clearthe deckofthe first two of a minimal cut is an easy
First, let
essentiallythe ideaexpressed intermediate
n
maximal
assertions.
The existence with
for a
hold
always
fact,
cut.
in
are
there
vertices,
For a
7.3.3.
Example
2n
the proof is transport network
to observe;
thing
n
of these
subsets
possible
eachofthese sets with the source S vertices. By combining we have 2n possible sets X not containing the sink D.Thereare, therefore, 2n S-D cuts (X,X). Each of these cutshas an associated and the capacity, of all S-D cuts obviously contains a smallestnumber. set of capacities cut with this minimum capacity is a minimal cut. Of course, it is Any minimal cuts. possible that there are severaldifferent of a flow with maximal The existence value is only slightly more the proof requires a few morefacts suchasthe following: but difficult, intermediate
A of numbers
A set
(i)
an
with
(ii) If
{bn} are a + then limn_\342\200\236 bn, and
{an}
facts are not
If these
existenceofa maximal Here will sketch the than or equal to the
and
FlyF2y^
of
{an}
b
and
=
bn).
take for
must
granted the
proof of (3).
(2). Since the value of all flows is less of any cut in G, the set 7 of all values capacity the least bound of in (G,k) is bounded above.Let Vhe 7. Let upper \342\200\242 \342\200\242 of flows so that the limit of the values be a sequence | Fn \\ ./n>\302\253\342\200\242 we
flows
and a = lim,,.^ an
to the
proceed
upper boundL
a sequence
L, and
reader
the
familiar,
of
value
two sequences b = limn_0O(an +
flow
has a least
bound
upper
and this numberL is the limiting in A, that is, linv^ an = numbers
proof of of
isV.
We
how to
indicate
considerthe {Fn{x,y)} Since
flows
may are
there
construct a flow for
Fn(x,y)
not approach only finitely
V. For
value
with
n. The
all possible
each edge
sequence of
(x,y)
numbers
a limit, but a subsequenceof them does. one many edges in (G,k), we can choose
has a limiting value such that the set of numbers {Fn(xty)} for an edge (x,y) let F(x,y) equal to the for all edges (x,y) in G. Then limitof Fn(x9y) as n approaches infinity, where Fn ranges over the flowsin the chosensubsequence. Itisfairly easy to see that F is a flow whose value is V. Thus, F is a maximalflow.
subsequence
Two
Basic
Ways Before
to Increase proceeding
flow-min cut clearer.
the Value of Flows to
the
theorem, let us
proof discuss
of the some
final
ideas
of
assertion
that
will
make
the the
max proof
Section 7.4
There are two basic ways to
(i) If
an
more
of the commodity If an edge is working
(ii)
edge
and redirect in
illustrate
us by
against
try
to send
more
some of the commodity reduce the flow along
sending
we could try to
the source,
toward
could
is, two
that
it.
through
back
us
Let
to capacity,we
being used
is not
edge
the value of flows, toward the sink.
to increase ways of a commodity
basic
move
661
Cut Theorem
Flow-Min
Max
The
this
a more practicaldirection. an example.
by considering
Example 7.4.1. Considerthe network shown in Figure 7-23.
indicated
with
capacities
and
flow F
Suppose
that
and
(d,D).
by a We
we
In other
to increase the flow along the edges(S,a),(a,d) words, we are increasingthe flow in the path S-a-d-D
decide
certain amount t. decide
must
most the capacity,
how the
large this number of (S,a) cannot
flow
k(S,a) Similarly,
the
flow
from
a to
t
be.
can
Since
be increasedby
the flow is more
at
than
- F(S,a) = 5-3 = 2. d and from
to D
d
cannot
morethan
k(a,d) -
=
F(ayd)
= 6
6-0
and
= 3,
k(dyD) -F(d,D)=6-3 a \342\200\242
(3,
b
(3, 3)
3)
Figure 7-23.
c \342\226\272 \342\200\242
d
be increased by
662
Chapter
7: Network
Flows
c
(3, 3)
Figure
7-24.
Since we wish to increasethe flows all three along edges by the same amount t, the largestpossible value for t is the smallest of these that threenumbers, the flow of each edge is, t = min{2,6,3} = 2. Increasing in the path S-a-d-D by 2 yields the flow Fx shown in Figure 7-24. Noticethat the value of Fx is 8 while the value of F was 6. We know flow? We answer this then that F was not a maximal flow. Is Fx a maximal respectively.
by attempting to increasethe flow along unsaturated edges. Consider the path S-b-c-D.Eachedgealong this is unsaturated, path or in other words,eachedgealong this has slack. path positive The slackof (S,6),(6,c)and (c,d) is respectively: k(S,b)
- Fx(S9b)= 5-3 = 2
1-0 k(b,c)-Ffac) = k(c9D) FfaD) 6-3
= 1
=
Increasing
the
flow of
then yieldsthe flow
F2
each edge on the path indicated
in Figure
Figure 7-25.
=
3
S-b-c-D
7-25.
by
min{2,l,3}
= 1
Section7.4
Max
The
of
capacity
cut
the
impliesthat F2
to D
S
from
is a
this
fact,
is a
flow.
maximal
This example suggeststhe following the value of the flow F: (1) Choose any
simple directed path P = {elfe2,.. ,,ek}
(3) Increasethe value
of
the
for increasing
method
\"greedy\"
the sink D whereeachedgeex is Calculate the slack of each edge these numbers.
(2)
663
Cut Theorem
that does not traverse a saturated maximal flow since |jF2| = 9 and the last_flow (X,X), where X = {S,b}y is also 9. Thus, Corollary 7.3.1
Now there is no path
edge.In
Flow-Min
from
source
the
minimum
S to
unsaturated.
e, in
flow of
P, and
let t
each edge ev
of
be
the
path
of
P by t.
this method produced a maximal \"greedy\" But unfortunately this technique doesnot always In fact, in a maximal flow, as indicated in the following example. produce the next example,thereareno S-D paths made up of unsaturated edges, soin this case,we take an alternative approach at increasing the value of certain the flow by actually decreasing the flows along edges that may be
Repeated application of in
flow
7.4.1.
Example
working against thetotal flow. 7.4.2.
Example
shown in Figure We
should
because
is, it
doing would
Let
F denote
the
flow
indicated
in
the
network
7-26.
of not, so would decrease
course, decrease decrease the flow the value of F).
Figure
F(S,a)y F(S,b)y F(a,D), F(b,D) out of S or the flow into D (that Our only choice, therefore,is to
7-26.
664
Chapter
7:
Flows
Network
F(a,b) by some amount
to decrease
attempt
F{S,b)+ F(a,6) =
- F(a,b)
F{S,a) if
to
we
decrease
avoid
A(S,6) -
by t.
F(S,b)-
and (a9D)
so (S,6)
cannot
choose t =
follows
that
decreasing
t,
and F(S,b) by of
F(afb)
\302\243
flow can
the
by
and
tt
Now -
4
2
and A(a,D) -
- 2
can be increasedby
Moreover,sinceF(a,b)
F(a,b)
and
+ F(a,D),
increasing F(S,b) by
F(a,D)
increasing
F(b,D)
we must also increase F(ayD) by \302\243, F(b,D) and F(S,a). Hence, the value
F(a,b)
decreasing
be increased by
t. Since
the
minimum
F(a,D)=6-3
=
of {2,3}. Hence,
3,
t < 2.
a flow cannot take on negative values, we can by more than 1. Thus, we see that 1. the new flow Fx indicated in Figure 7-27. we obtain where Fx is a maximal flow because \\FX\\ = 7 = k(X,X) be
=
1 and
decreased
Then
It
X = {S,M.
In orderto
the
generalize
the
reconsider
edges
process
whose flows
in the last example,let us illustrated were changed. Noticethat the edges a directed path from S to D. But, of
(a,D) do not form do form a nondirectedS-Dpath. In particular, notice if we reverse the direction of the edgewhose that flow we decreased, we would obtain a new edge that togetherwith and (S,b) (a9D) form a directed S-D path. (S,6),
course,
(a,6), and these
edges
Perhaps
another
example
will
be instructive.
Figure 7-27.
Section7.4
The
Max
Cut Theorem
Flow-Min
665
Figure 7-28.
Example 7.4.3. Considerthe indicatedflow
F
shown
in Figure
7-28.
Consider the path respectively
the
flowFx
Now could
and 5.
(Figure
7-29).
directed
every
nondirected be
S-a-c-D;
2,1,
path reversed
the
slacks
Increase the
flow
by
of (S,a), (a>c)>and (c,D) are, 1 along these edges to obtain
S-D path containsa saturated edge.But the that the directionof the edge(c,6)
S-b-c-D is such to form a directed
S-D path with
the
other
2 edges
(S,b)
and (c,D). The2 units of flow along (c,b) we view as working the against total flow. Note that 2 is the minimum of the of slack of (S,6), the flow the flow along (S9b) and (c,D) (c,6), and the slack of (c,D), sowe increase 2 units and decrease the flow along_(c,fe)by 2 units to obtain the flow by X = {S,a,M so that F2 is a 7-30). Now| F21 = 9 = k(X,X),where F2 (Figure maximal flow.
Figure
7-29.
666
Chapter 7: Network
Flows
(5,5)
>D
Figure 7-30.
These examplessuggestthe following
7.4.1. Suppose that (G,k) sink D. Suppose,moreover, that
Definition
S and
source
definition.
is a transportnetwork
Recall that a nondirectedpath
eue2,..
.,en
et in
G is
a sequence
and
directed
from
Vi_x
F is
P from S to D of vertices S = vQ,vly.. to i;, or from v( to Vi_x. is directed from Vi_Y
a flow in the
is a sequenceof edges
path
The
each
edge
i;,;
path (or a
flow-
for F) if
(i) for each forward
(ii) for
where the edge e, is called a otherwise, e, is a
= D
.9un
forward edge of P if it to reverse or backward edge ofP. A P is defined to be an F-augmenting path augmenting
with
network.
edge
backward
P, F(e) < k(e)yand e of P, F(e) > 0.
e of
edge
In otherwords, a path P is an F-augmenting path are unsaturated and all backwardedgeshave positive In order to state the next lemma let us formulate augmenting path in yet For any path P, let k(ei)
the
definition
of an
= the slacks(e{)
- F(et) j
F(e,)
edges
flow.
form.
another
\342\202\254,-(P)
forward
all
iff
if e, if
is a
ex is
a
forward edge of P. backward edge of P.
Then note that e(P) is associate the number e(P) = min \342\202\254t(P). P In the is an a number. path always particular, nonnegative iff > 0. e(P) F-augmenting path For example, if F is the first flow of Example 7.4.1, then the path P^ = 0 since the edge (ayc) is S-a-c-Dis not F-augmenting because \342\202\254(Pj) saturated.But,on the other hand, the path P2: S-b-c-Dis F-augmenting of becausee(P2) = 1 (here each edge was an unsaturated forward edge With
p2).
P,
The Max
Section 7.4
is the
If F
in
flow
F-augmenting
unsaturated and the backward
the path P: S-b-a-Dis edges (Syb) and (ayD) are has positive flow. The number
forward (a,b)
edge
667
then
7.4.2,
Example two the
because
Cut Theorem
Flow-Min
\342\202\254(P)
{s(Syb),F(ayb)ys(ayD)}
= min
{2,1,3}= 1.
in Example 7.4.3 was F-augmenting because S-a-c-D, = 2. \342\202\254(PX) path Px: S-b-c-D is Fraugmentingbecause to state and prove the Now we have the machinery and terminology
The e(P)
= min
=
P:
path
1. The
following lemma.
Lemma 7.4.1. is an defined by If P
F.
that
Suppose
F(e) =
F(e)
+
F(e)
- e(P)
if e
e(P)
F(e) is a flow
with
is a
(G,k)
F-augmentingpath in G
value
|F |
is a
transport network S to
from
Dy
then
forward edge of
if
e is
a backward
if
e is
an edge
with
function
the
flow
F
P
edge of P
of G not in P
+ e(P).
Note that F is obtainedby
the flow by e(P) along forward increasing decreasing the flow along backwardedgesofP, and leaving flow unchanged on all other edgesof G. edges
of P,
Proof. Let P be the sequence of edges elye2>-. .,en = D. vertices S = v0yvu.. .9vn To prove F is a flow with value | F \\ + e(P)y we must show
(a) 0 < F(e) < k(e) for
all
e in
edges
f
(b)
P(x,V(G))-P(V(G),x)
=
|F|
G and +
the
that
GY
ifx \342\202\254(P)
|P|-\342\202\254(P)
0
through
the
= S
ifjC=D
ifx^SorD.
that (a) holds,note that F(e,-) 4- e(P) < /e(et) for each forward P since by definition e(P) < s(et) = fe(ej) P(ei). Likewise, e(P)> 0 for each backward edge et since e(P) < P(et). F(ei) To prove (b), observe that we need only check for vertices x on P if x = vt is because for all other verticesF and F are equal. Furthermore, To see
edge
ei of
668
Chapter
7:
Flows
Network
recall that the flow. If the on P,
only on the two
edgeeM =
e, and
ei+x touching vt do we change forward edge of P, then of ei+l (^+1,1;,) is a backward
edges
F(ei+1)=
is a
(viyvi+1)
other hand, if edge F(ei+l) = then P, F(el+1) - e(P).In eithercase, the result of replacing F F(ei+1) by F on this edgeel+1 is to increase the net flow out of i;,by c(P). with regard to the edgee,joining to i\\- end up the v^i changes Similarly, flow of the net flow out of v{ is 0 + the net out c(P). Thus, v( by decreasing if i ^ 0 or n; the net flow out of u0 = S is | F\\ + is zero, e(P) - e(P), which - \\F\\ - e(P). Thus, F is a flow and its value is e(P) and out of un = D is n + \342\202\254(p). ifi On the
e(P).
+
from Lemma
It follows
path, then F is converseholds.
The
(3)
7.4.2.
Lemma
the
that
such
(X,X)
If a transport network has a flow F with value (G,k) either contains an F-augmenting path or a cut capacity k (X,X) - | F |.
network
the
|F|,_then
theoremand containsa proofofassertion
before.
we mentioned
that
of this
proof
F admits an augmenting a flow The next lemma showsthat the lemma contains the main idea of the if
flow.
max-flow min-cut
of the
proof
7.4.1that
maximal
a
not
Proof. First, =
XQ
there
a collection we construct Then define as the set of all {S}. Xx is a directed edge (S,y) in such
E(G)
that in the definition
other words, Xx S,y could be the
is the
Supposenext set of
the
F(x,y) < ^o>^i>This vertices
set of
is no
that
edge (y,S)
vertices y such that
that
Xlf..
.,Xk_x
k(x,y) or elsethereis an
been defined.
have
edge
Xk_x and such that y
with
(y,x)
has not
such
In
flow.
positive
the sequenceof
such that eitherthereis an
Recall
< k(S,y).
F(S,y)
start of an F-augmentingpath.
all vertices y
E
x
some
there
flow
of
of subsets of V(G). Define vertices y G V(G)such that
vertices
Then define Xk
edge
(xyy)
such
>0
that F(y,x)
already
been
as
that
chosen
for
in
\342\200\242 ->Xk-i*
becausethe
of construction must terminate process D belongs is finite. Either we will find to Xn n or we will not.
number
for some
of
positive
integer
Case 1. If D E Xny then D arose from some xn_x E Xn_lt because in the of flow there can definition f(xn_l9D) < k(xn_uD). (Recallthat be no outgoing edge from D with positive flow.) Similarly jcn_j arose < k(xn_2,xn_l) or from some xn_2 E Xn_2 where either F(xn_2,xn_l) S = x0. reach > in we 0. this manner, eventually F(xn_l9xn_2) Continuing = D the of of Then the sequenceof verticesS = x0,Xi,.. is set \\ertices .,xn an
F-augmenting
path.
The Max
Section 7.4
Flow-Min
669
Cut Theorem
If D doesnot belong to Xn for any positive integern, let X = S G X and Dj\302\243 X, the set of edges (X,X) form an S-D U^xXn. cut. Moreover, if (x,y) E (X,X), thenF(:c,y)=_fe(jc,y) otherwise (since ;y of (X,X), would be in X). If__(y9x) then F(y,x) = 0. edge is_any - F(X,X) = fc(X,X).But Theorem7.3.1 F(X,X) Consequently, implies 7.3.1 that F F(X,X) |F| gives the conclusion F(X,X),_andCorollary is a maximalflow and (X,X) is a minimal cut. \342\226\241 Case 2.
Since
Now we have all the machinery to make the proofof assertion (3) of the max flow-min cut theoremof Fordand Fulkerson easy. F is a maximal flow. By Lemma 7.4.1, F admits no_augmenting Suppose the network cut (X,X) such that 7.4.2, path, so by_Lemma contains^ = which of that is means, course, (X,X) a minimalcut.This |F| k(X,X), and the concludesthe proof of assertion (3), proof of the theoremis
complete. D
In
Theorem 7.4.1 we proved two lemmas of proving that of maximal We characterization flows. state the another together give combination of Lemmas7.4.1and 7.4.2 as a corollary to Theorem 7.4.1. the
course
Corollary 7.4.1.
A
flow
F is
maximal
iff
there
is no
F-augmenting
path from StoD.
If F isa maximalflow, to
D. Nevertheless,
then
there
there may be
are no
flow-augmenting paths
intermediate verticesv
and
from
S
paths
P
such that e(P) > 0.In otherwords, while it is not possible to the flow from S to it is to D> possible augment the flow from S to augment in Case 2 in the proof of Lemma v. In fact, the set X defined 7.4.2 is the set of all such verticesv ^ D for which the flow can be augmented from S to v. The proof concludes that for this definition of X, the set (X,X) is a minimal cut. the maximal flow in Example 7.4.3. The set X Consider,for example, in defined above this f or the case, {S,a}, is, (S,a) is unsaturated and edge S a. constitutesa flow-augmenting from to For the maximalflow of path the set X is . Example 7.3.4, {S,a,6}. 7.4.1 is of fundamental Corollary importance in the study of network flow because of a it says, in essence, that in order to increasethe value kinds flow we need only look for improvements of the two restricted mentioned earlierin the section or in the definition of an augmenting 7.3.2 The combination of Theorem 7.4.1and path. Corollary gives a useful characterization of minimal cuts. from Stov
670
Chapter
7: Network
Flows
Figure 7-31.
Corollary 7.4.2. is such that
A
cut
is a
(X,X)
minimal cut
iff
every
maximal
flow F
an
(i) F(e) = k(e) for each edge e G_(X,X), (ii) F(e) - 0 for each edge e E (X,X).
and
Suppose that (X,X) is a minimal cut and (xyy) has positive slack and positive edge
F is
are in the same^half\" in X or both in X.
of
Example 7.4.4. In 7-31,
find
a maximal
Considerthe along all edge
(c,b)
the
to obtain
edges
all minimal
path
and
flow,
cut (X,X),
with
network
flow and
augmenting
forward
minimal
any
a maximal flow. Then if it must be that x and y
that is, x and y
indicated
cuts.
the flow shown in Figure 7-32.
Figure
flow shown in
both
Figure
We increase the flow by the flow by 1 along the backward
S-a-d-c-b-D.
decrease
are
7-32.
1
Section
The Max Flow-Min
7.4
of Clearly this flow F ismaximalbecausethe value of the cut (X,X) where X = {S}isalso6.
this
671
Theorem
Cut
flow is
6 and the
capacity
To
cuts
minimum
all
find
Corollary 7.4.2. If
wejuse
of
(Y,Y) is
any
by the maximal flow F and all edges of (YyY) must have none of the Onflow. Therefore, in in can be either or (YyY) (y,y). Thus, if a G Y, edges(a,d),(d,c),(fa,c) in and d also Y. then must be if fa E so are_a,d, c in then fa, c, Y, Similarly, for d. likewise in Y is or Y for any either Y; Therefore, {a,fa,c,d} cjmd minimal
cut,
minimal cut
all edges
then
only two
are
there
Thus,
(YyY).
(YtY)
saturated
be
must
possibilities
for
minimal
cuts:
({S,a,fa,c,d},{D})and
(i)
(ii) ({S},{a,fa,c,d,L>})..
Sinceeachcut has
these
the
are
only
capacity
6, each
minimal
cuts.
of these
of a Maximal Flow
Construction The
proof
7.'4.1as algorithm
well
for
cut theorem, and especiallyLemma 7.4.1, 7.4.2, and 7.4.3, suggests the following the value of the flow in a network.
max flow-min
of
the
as
Examples
increasing
7.4.1.
Algorithm
with a given flow F. Input: a transport network a maximal flow. Output: 1 and 2 below until step 1 finds no steps Repeat
augmenting
1. Choose an F-augmentingpath Form a new flow of higher value
the augmenting
if
2.
paths,
augmenting
then the output
whetheror not the algorithm In their book,Flows in an exampleof a network algorithm
does
not
of
terminates even for flow
even
in the
in
fact,
be
a maximal then
terminates
with
irrational
more general
if the
flow. The is a crucial
we shall of each edgeis an capacity 7.4.1,
capacities
case.
due
does
question as to
show
integer.
that
the There
and Karp, that thus constructs a maximal
to Edmonds and
algorithm
one. Fulkerson produced for which the above
Nevertheless,
if the
Algorithm
are no more flowthe above algorithm will by
[48], Ford and irrational capacities
Networks
path.
there
7.4.2. In otherwords,
will
terminate.
does terminate
algorithm is a modification
F and
the flow constructed
flow by Lemma
a maximal
terminate
then
path.
possible. using
If there is ever a stage where, be
two cuts is minimal,therefore
672
Chapter
7: Network
Flows
Theorem is
(Gyk)
an
7.4.2.
If the capacity
integer,
then
edge in a transport network 7.4.1 terminates after at most
each
of
Algorithm
2\342\202\254<=E(G)k(e)steps.
a sequenceof flows F0,Flf..., such that is an and the integer integer, sequenceof |P;| is strictly values we let be the zero First, flow, that is, increasing. F0 = 0 for each e. next we that have constructed F0(e) edge Suppose Fk. If there is an Fk-augmentingpath P, then minimum of a set the e(P)y being is a of positive The new flow integers, positive integer. by Fk+1 guaranteed Lemma 7.4.1 has value and Fk+l(e) is an integer for each edge | Fk | + e(P), e since Fk+1(e) is definedto be eitherFk(e) + e(P), Fk(e) - e(P), or Fk(e) to whether e is a forward or backward according edge of P or an edge not Start
Proof.
by constructing
Fi(e) is an
in P.
each
for
flow,
Since +
\\Fh\\<\\Fk\\+l*\\FM\\-\\Fk\\
(X,X) and k(X,X)
any cut
for
2e<=E{G)k(e)
neW
floWS.
of this
A corollary
<
e(P)*k(XJ[)
find
can
we
2ee\302\243(G)&(e),
proof follows.
If Theorem 7.4.3. (Integrality of FlowsTheorem).
of a
transport
maximalflow
network
(Gyk)
that F(e)
F such
Let us apply
at most
\342\226\241
Algorithm
7.4.1
has
an
capacity,
integer
is an integer for to the
each
edge
each
edge
then there e of G.
is a
following example.
Example 7.4.5. Find a maximalflow
the
for
shown
network
in
Figure 7-33.
First we
look
for
an augmenting path where, have to be unsaturated).
forward edges (and they
Figure
7-33.
if
possible,
The path
all
edges
are
Px:S-c-d-Dis
Section
The Max
7.4
c
a path; flow by
the
the
of the
slack
minimum
673
Theorem
d
7-34.
Figure
such
.
(7,6)
Cut
Flow-Min
edges along Px is
3 units along the edgesof Ply
we
3. By
increasing
the flow Fx
obtain
shown in
Figure 7-34. Thus,
no other directed S-D paths for augmenting paths with some
are
there
Now
we look
edgesmust have be must unsaturated.) edges
that backward
backward
and,
flow,
positive
unsaturated
with
edges.
edges.
of course,
(Recall
the forward
the flow by 1 along the path S-c-d-b-e-D, by and to obtain S-a-f-e-D, by 2 alongthe path S-a-f-b-e-D the flows shown in Figures 7-35,7-36, and 7-37 respectively. Note the decrease in the flow 1 unit by along edge (fe,d) in Figure we augment
Sequentially
2 along
the path
7-35.
Note
in the
decrease
the
units along the edge(e,/)in
flow by 2
Figure
7-36.
Note
the decrease in
7-37. There
are
no
more
the
flow
by
2 units
along the
paths from
augmenting
(7,
Figure
7)
7-35.
d
edge (b,f) in Figure
S to D because(S,a) is
674
Chapter7: Network
Flows
Figure
7-36.
(7. 7)
c
d
7-37.
Figure
the saturated and both edges out of c are saturated. last indicated Thus, flow is maximal. Of course,we could also argue that this flow is maximal the of this final flow is 29 and that the capacity value of by observing_that the cut (X,X)f where X = {S,c} is also us determine all minimal If cuts as we did in Example7.4.6. is a minimal (XyX) cut, thenjione of the edges(a,/), (e,-D),
29.
Infact,let
are
(b,d)AS,c)
e G_X, b
U (X,X)i. In fact, sinceD G X,
G_X, / G X, and a G X. Moreover,
(X,X) U the minimal (X,X),
only
A Labeling
(bj), (6,e),
in (XJf)
it follows
that
c
X.
Thus,
S E
since
if X
it
follows
X and
= {S,c},then
that
(S,c) $
(X,X) is
cut.
Algorithm*
To establishthat a given flow F is maximal, we must verify that there For graphs (Gyk). flow-augmenting paths in the transportnetwork with few vertices and edgeswe usually can determine by inspection that are no
*The
discussion
from
here to
the end of
the
section
may be
omitted.
Section7.4
Max
The
675
Cut Theorem
Flow-Min
exist. But for larger graphs, inspectionaloneis reason, we introduce a labelingalgorithm. in agreement with vertices we label the definition of the sets Basically, 7.4.2. In other words, first we .,Xk used in the proof of Lemma X0f Xl9.. label the source and then we label other vertices recursively according
no flow-augmenting
paths
this
For
sufficient.
not
S
to the following
is an
thereare
edge e in
the
network
transport
where
is unlabeled
y. Then
x and
connecting
we follow:
rules
two
been labeledand a vertexy
x has
a vertex
Suppose
there
scheme.
If e = (x,y) (sothat e is directed from x to y), then a labelingfor y is possible if F(e) < k(e). In otherwords, y receives a in a flow augmenting path. label if the edge e is a forward edge Backward Labeling: If, on the other hand, e = (y,x) and F(e) > 0 (sothat (y,x) is a backward edge), then y receivesa label. Forward
Labeling:
In either label
for
label x,
y the
assign
case,
vertex to
which y is adjacent.(Other as an
such
y
the name of
indicator signifying whether
edge, but we shall becontentwith in The information this labelingsucceeds
backward
been labeledthereisa F-augmenting the that a vertex y indicates
constructedby the
using
first
case may
indicatethat
been
has
y
as a
x and y In
be.
labeled
We
with the
or
forward
a
label.)
since x has
is this:
x, and the labelx on from S to y can be path S from to x and then path or
forward
use
e is a
simpler
the
a backward
a predecessorof
words, x is
other
in the
be included
S to
from
path
labeled
previously
conveying
flow-augmenting
path from S to y.
flow-augmenting
the
the flow-augmenting
using
e between
edge
whatever the
the
could
information
edge y
on
a
Pred(y) = x to
notation
label x and a flow-augmenting
through x.
to the proof of back By referring x is labeled, x belongsto somesetXk_x for k and then the possibilityof labeling that y G Xk. some y means As in the proofof Lemma7.4.2 two cases themselves: either the present a label, sink D receivesa labelor not. If D receives then a flowaugmentingpath from S to D is possible and the labelon D indicates the can be found by predecessor of D on sucha path.A flow-augmenting path = - Pred = D, the vertices Pred(D), W2 Wly Pred(Wi) using W0 = = S soon until we find and Pred( W*_i) as the (Pred(D)), Wk eventually exists
path
from
Lemma7.4.2,we
predecessor
S to y
see
of some
that
vertex
discovera flow-augmenting
e(P)
by
which
is
we augment
Wk_x
path
in
the
P we
the flow F
sequence.
can easily
Of course, should we determine the amount
to producea flow
of
larger
the other hand, it is impossible to give maximal and the set X of all labeledverticesis such a minimal cut. If, on
flow
since
F is
D
a label,
then the that
value.
present (X,X)
676
Chapter
Flows
7: Network
The
algorithm
as presently describedwill
a
discover
successfully
path or determine that F is a maximalflow, but the flow-augmenting an indexing is nondeterministic as it stands. Let us incorporate algorithm deterministic. of the vertices soas to make the labeling algorithm Say S = = D is an S is first and D is last indexing of the verticeswhere v0,Vi,...,vn
in the ordering.This vertices order to label Now let
us give
them.
a formal
of the
description
labeling algorithm.
Algorithm 7.4.2. Determining
a
Whether
Input: a transport
network
indexingofthe verticesS
(G,k) =
Output: a flow-augmenting
labeled,
the
source
S with
the
sink
4.
i
(to
go to
S and
source = Dt and .,vn with
a given
that
indicate
S has
Step 5.
be
until
label
the
Pred(D) = Wk
no predecessor).
If no
examined.)
=
S
But if
continue.
is labeled, Vj
with
5. If
(G9k).
exists.
v0; otherwise,
no unexaminedverticesareavailable, stop. of a vertex.) For j = 1 to (Examination If
F in
that none
conclusion
or the
sink D and an
flow
vertices have been choose the vertex vt of smallest which has not been examined. Seti\\ = x and go to Step 4. If to
vertex
choose
index
v0,vu.. path
1. Label source D is 2. If the 3. (Choosea examined,
Flow-
Exists.
Path
Augmenting
we examinethe
by which
a priority
establish
will
in
jc. Set u,
let
is not Uj
Pred(u;) = x. Return
W0 =
for some
D,
Wx
-
k. Then a
n,
labeled
v, W2
to
Step
do
the
and can
following:
be, label vj
2.
- Pred(u). Continue path
flow-augmenting
is
S
=
WkfWk-l9...fWuW0-D.
Example 7.4.6. Let us whether or not a flow-augmenting Figure 7-38.
apply
the
labeling
path
exists
to determine network shown in
algorithm in the
Letus order the vertices v0 = Su vx = a, v2 = bt vs = c, v4 = d, v5 = D. at Step 3 of the labelingalgorithm, First we label S with . Then we see S is the lowest labeled vertex not yet At Step that examined. 4, we consider verticesa and c. We cannot label can c but we label with the a, S. Thus, Pred(c) = S. label Returning to Step2, sincethe sink D is not labeled we proceedto Step 3.The labeled vertex with smallest index not yet examinedis c.At Step 4, we consider the vertices a, fe, and d. The vertices a and d cannotreceive labels,but b can; label b with the label c sothat Pred(6) = c. is not labeled, again we proceed to Returning to Step 2, sincethe sink b. At Step 3. The not examinedis labeled vertex of lowest index Step yet
Section
The Max
7.4
a
\342\226\272 o.
7-38.
Figure
4, we
observe that a, d, and D are unlabeled
be labeledby
backward
receivelabels.
We
with
labelihg to Step
return
and
2.
and
receive
d can
Choose d
W0 = D, V^4
=
Step
4, label
2, D Step - Pred(D) = ctW5 =
at
Now
the forward
as the labeledvertex
vertices.At W,
Pred(6)
Onlyx d
examine.
to
vertex
D
to b. Now a can but d and D cannot
adjacent
the label b,
Again, since the sink is not labeled,we
chosenas the
677
Theorem
b
(4, 2)
\342\200\242
Cut
Flow-Min
go
to
Step
is unlabeled
this case, a is and adjacentto a,
3. In
label a. Return to Step2 and of
with
smallest the
then to Step 3. with unlabeled adjacent label d. Return to Step 2.
index
forward
has received a = d, W2 = Pred(d)
label d and = a, Wz
by
5,
Step
- Pred(a) = 6,
a flow-augmenting Pred(c) = S determine
path
P:S-c-b-a-d-D.
Of course, we can now
determine
the present augment all over process again. can
Exercises
flow and
that e(P) = 1, and we by inspection erase all labelsand start the labeling
for Section 7.4
1.
Find
(a)
a maximal
flow and
a minimal
cut in the following
networks:
678
Chapter 7: Network
Flows
(b)
(3,0)
(4. 0)
/
(c)
>D
(d)
\342\200\242D
(e)
*-\342\200\242
b
d.O)
d
\\D
The Max
Section 7.4
Cut Theorem
679
(g)
(f)
V
Flow-Min
(5,0)
*->D
\342\200\242 D
(4, 0)
/
(h)
2. Findtwo indicated
maximal
flows
for the
network shown in Figure 7-39with
capacities.
Figure
7-39.
680
Chapter7: Network 3.
Flows
a, 6,
Vertices
units respectively,
and
a flow
Find
units.
and c in Figure 7-40have satisfying
Cities while
a, 6, cities
Transportation
(a) (b)
Draw
supplies
i and
7-40.
Figure
4.
of 30, 30, and 20 30 and 50 have demands j the demands (if possible).
vertices
and c can supply
15, 25, and 45 units of merchandise, h and require 20, 25, and 15 units, /, g, respectively. links are illustrated in Figure 7-41. a transport that reflects total supply and network
demand. Find
a maximal
(c) How many and cities
flow. of merchandise
units
/,
g>
and
h receive
should cities so that as much
a,
fe,
and
c send
merchandiseas
possibleis transported?
5.
Use
Corollary
7.4.2
to show
that
(a) (X9X),whereX = {S,c}, isthe only of Example7.4.5.
minimal
cut
in the
network
Section
The Max
7.4
Flow-Min
Cut
681
Theorem
Figure 7-41.
isthe only (b) (X,X), whereX = {Stb,d}, 7.4. Section l(a)jn (c)
(X,X)
and
(7,7),
where
X
minimal
cut
of Exercise
= {S,a,fe,c,d,e,/}, and
are the only minimal cuts of 1(b) of Section_7.4. and (Z,Z) are the only minimal (X,X), (YyY), network of Exercise 1(e) of Section7.4,where {S,a,b9cfd},
network
the
Y
-
of
Exercise
(d)
Y={Syayc},Z={S,a\\.
6. Find all minimal
(a)
cuts
in the
following networks:
of the = {S,a,6,c},
cuts X
682
Chapter
7: Network
Flows
(b)
a
(4, 4)
c
(c)
7. Supposethat 7 kinds of equipmentaretobeflown to a destination of each kind of equipment by 5 cargo planes. There are 4 units and the 5 planescan carry 7, 7, 6, 4, and 4 units, respectively. Determinea loading so that no 2 units of the samekind are on plan the same plane. Hint: see Exercise5 of Section7.2;use the a maximal flow. to determine algorithm 8. Use 7.4.2 to prove that if (X,X) and (Y,Y) are minimal Corollary U X U H H Y) are also minimal then and X (X Y, Y) (X cuts, Y,
cuts.
9. Suppose
F is a maximal flow in a transport network that Let (G,k). in be minimal cut and X 2 let be the set defined Case of (Y,Y) any the of 7.4.2. X Y. Lemma Prove that C Hint: use Exercise 8 proof
and Corollary 7.4.2.
10.
X of residents set belong to various clubs Cu C2, C3, C4, and to four disjoint politicalpartiesPl9 P2, P3, and PA as depicted by Figure 7-42. Suppose that each club must chooseone of its membersto represent no person can represent more than it, and oneclub,no matter how many clubs he belongs to. How should one A so that choose a system of distinct representatives | A C\\ Pj \\ = 1 for eachy = 1, 2, 3? Hint:setup a flow problem. 11. Let (G,k) be a transport network that (X,X) is a and suppose minimal cut in G.Prove or disprove: (a) If Ft and F2 are flowsjn (G,k) such that Fx(e) = F2(e)for each flows. F2 are maximal edge e in (XfX) U (X,X), then F1and A
Section7.4
The
Flow-Min
Max
683
Cut Theorem
Figure 7-42.
(b) If Fx
and
maximal
F2 are
U
edgee\302\243(X,X)
12.
Suppose
that
is
(Gyk)
capacities. Suppose (vk-uvk) is a directed
flows, then
(e)
a
network
transport where
fc-cycle
F in
=
ex
ufc
G where
(iV->i)> =
with
v0. Prove
F(et) = 0 for
edge
integer
^2 = (vi9v2)9
= \342\200\242 \342\200\242 ^k
or disprove some
that
i.
or disprove. If F is a flow in a transport_network (Gyk) and (X,X) is a cut such that k(X,X) >\\F\\y then (X,X) is not a minimal cut and F is not a maximal flow. four Four instructors for A, B, C, and D are available teaching A is Instructor courses: algebra, biology, chemistry, and physics. trained in biology and chemistry;B is qualified to teach algebra and D and physics; C can teach algebra, and chemistry; biology, can teach chemistry.
13. Prove
14.
for each
= F2(e)
(X,X).
further that
there is a maximalflow
Fx
(a) Modelthe
conditions
as
a transport
network.
684
Chapter7: Network
Flows
(b)
Use the
concept of maximal
the
instructors
four
15. True or false?SupposeF is a
(a) If F is
then
maximal,
flow along
nonzero
have
flow
so that
courses
four
he is
which
is an S-D cut. with nonzero capacity
and
(X9X)
edge
every
or not
whether
determine
to the
obligedto teacha subjectfor
will be
no instructor not trained.
to
flow
be assigned
can
will
it.
then (b) If F(X,X) is equalto k(X,X), for a cut (X,X), (c) If |F| = k(XyX)
(X,X)
cut.
is a_minimal
is a
then (X,X)
minimal
cut. if the along an edge can be negative edge goes _ __ = k{XyX), thenF(X,X) = 0. If F(X,X) (e) _ = If | F\\ = k(X,X) for a cut (X,X),then 0. ( f) F(XyX) one maximal flow in a network, then (g) If there is more than
(d)
flow F(e)
The
backward.
there isjnore one minimal cut. If F(X,X) = F(X,X), F is a maximal flow. = 0 for all (i) If |F\\= 0, F(e) edges e. S to D, then F(e) from whenever directly (j) Ife k(e) than
(h)
then
then
F is
\302\253
runs
maximal.
(k)
A
cut
(X,X)
for some flows
be minimal
may
but
for
not
others. of the cut (1) The flow across a cut can be larger than the capacity if there is someflow back fromX to X. (m) If F is a maximalflow and (X,X) is any cut, then F(e) = 0 for any edge e E (X,X). network have the same capacity, (n) If all the edgesof a transport
thenall S-D e = (a,b) is
have
cuts
(o) If
(p)
same
ayb
are
capacity,
and F(e) > 0 for some edge in X for any minimal both
S-D
(X,X).
all edges maximal. If
(q) If
the
unsaturated
F, then
maximal_flow
cut
an
of a
network are saturated,then
(X,X) is a minimal cut,
then
all
is
(X,X)
a minimal
cut, then
in
edges
saturated.
(r) If
the
is
flow
(X,X)
are
_
all edges in (X,X) have
zero
flow.
Selected
Answers
1.
(a)
for Section Use shown
the in
cut is (X9X)
7.4
paths S-a-c-D, augmenting 7-43. The value of the Figure where
X
- {S,fe,d}.
S-b-d-D, and S-b-c-D flow
is 9
and
a minimal
Section7.4
Max
The
a
Using
the
d-f-Dy
and
augmenting
7-44.The (c)
by
7-43.
paths S-a-c-e-D, S-a-b-d-f-DfS-b-
= {S,a,6,c,d,e,/}.
Increase the flow and the flow decrease edges by 1 along A to obtain a of value flow 8. minimal cut is edge (a,d) the
Consider
the
685
we obtain the flow shown in Figure of (XyX) is flow is 8, and the capacity
S-a-c-e-f-D, value of this
also 8, where X
Cut Theorem
c
(6, 4)
Figure
(b)
Flow-Min
1 along
augmenting
path S-b-d-a-c-D.
the forward
determined
by
X
(d) Augment the flow S-a-d-b-e along
= {S,a,6,c,d}. 2 units
by
along S-c-e-D
to obtain a
then (XfX) {S,a,6,c,d,e},
is a
flow
minimal
of
and then by
value
16.
Let
1 unit
X =
cut.
(e) Augment by 1 unit along the path S-a-c-Dand then by 1 unit along S-b-d-D to obtain a flow of value 2. A minimal cut is
determined
by
3. Not
X
= {S,a,6,c}.
possible, a maximal flow
S-a-d-f-i-Dy
S-a-d-g-i-Dy
has
value
S-a-d-e-g-i-D,
S-b-a-d-e-h-j-D.
Figure 7-44.
50. For
example, use paths
S-b-e-h-j-D,
S-c-e-h-j-Dy
686
Chapter
Flows
7: Network
If (Y,Y) is a minimal cut,
5. (b)
then
flow
maximal
the
using
indicated in answer 1(a), notejthat none of the edges (a,c), (b9d), (c,D), (S,b) can be in (YyY) or in (Y^). Since S G Y, it D G Y, c G Yand a G Y that b E Yand_d G Y Since follows Y =
Thus,
(d) Using
Y-
and
{Sybyd\\
{a,c,D}.
the maximal flow a
of
(since S
cut (Y,Y)
minimal
answer
that
we see
1(d),
G Yand^S,a)is not
for
any
it
saturated),
Yand (dyD) unsaturated impliesthat d G Y. The cut (ZyZ) where Z = {S,a}satisfiesthe of Corollary conclusion 7.4.2, so it must be a minimal cut. We determine the other minimal cuts by considering the 2 cases b or c is in Y If b G Y, then c must also be in Y since whether 6 G Yis the only the edge (6,c) is unsaturated. Then c G Yand be that
must
D G
\302\243_Y-Likewise,
other case.
9. See
Ford
10.
Fulkerson's
and
Find a maximal
a sink;
and
a source
Introduce
book,
7.5 APPLICATIONS:
of
capacity
is such
each
1.
edge
a set.
HALLS
AND
MATCHING
make the
= {aua3,a6,a9}
A
flow.
[48] page 13.
Flows in Networks
THEOREM
MARRIAGE
In the exercisesand examplesof Chapter several problemslike the onesthat follow. The
Problem.
Assignment certain
for
to
position
has a
Each applicant
applicants.
suitable
which
assignments
The
Committee
company of
list*
he or be
has
Is it possible to she is suited? If not,what to
the
have
n positions which qualifications
positions.
people that can be assigned
these
A
7 we
positions?
encountered
to
fill
and
m
make him
assign eachapplicantto a is the
largest
And finally:
number
of
How should
made?
Problem
(or System of
Distinct
there are n people {CUC2,.. .,Cm}.(The committees {p!,p2,.. .,pj belonging neednot be disjoint.) When is it possible to selecta chairpersonfor each In other committee? one committee so that no member chairs morethan m of distinct a when is it select to words, representatives system possible for the different of distinct representatives is a committees? (A system set of m distinct people {pj^Pj2,Pjz^ . .,P;J whereph E Ct.) Representatives
Problem).
In
to
These problems
a
certain
organization
m committees
can be given
another
twist.
This
version is known
as
Section7.5
m girls The Marriage Problem. Given can all the girls be married provided she doesnot know?
and no
conditions
of these
All
problems can
of get at the essence
the
each edgeof G
A
A
property
another
way:
In
is a
directed graph G B such that
A and
of B.
vertices
A
other of
A0
(i) for
M is
matching
words, the set A and a subset
each vertex a E
the edge
(a,6)
M with
for G
equals the numberof verticesin subset
to
A
costumes,
Let us attempt to
definitions.
subsets
two
what
a boy
no vertices in common. A edges is a matching M with a maximal number of for G M is a the complete matching matching having E M for some b E B. Or to put it that for each a E Ay(ayb)
matching maximal matching
edges.
of
different
many
of them.
graph
bipartite
set of
is a
n boys, under girl is married to
the following
disjointunion of
vertices
is from
for G
A
with
directed
is the
of vertices
set
in
in all
elements
problems
Definition 7.5.1. whose
be dressedup
are certaincommon
but there
687
Marriage Theorem
and Hall's
Matching
Applications:
E
of
of
M B such
there
E B0,
Then,
a complete
course,
M is
is a that
of edges
matching for G
is exactly
M. Moreover,
(ii) for eachvertex b (a,b) E M. of
number
the
iff
in M
A.
edges
B0
A0
complete
there is exactly
matching
one vertex
if
there
6EB0 suchthat
onevertexa E A0
iff
A0
is a
such
that
= A.
a directed The assignment problem can be modeledwith bipartite in in A the applicants and the vertices representing graph G with vertices B representing an that the positions. Furthermore, edge (a,6)signifies calls for a is qualified for position 6.The assignment problem applicant
whether or not there is a completematching. determining of edges we are asked to determine the number that,
But
in a
failing
maximal
matching. Finally, we are to exhibita maximalmatching. The other can also be modeledby a bipartite graph. For the problems and the committees committee problemwe let the vertices of A represent b that the vertices of B the people. Then an edge (a,6) signifies person of distinct In committee a. a to this context, system belongs representatives is nothing more than a complete matching. the girls, Of in the marriage problem the verticesof A represent course, the vertices of B representthe boys, and an edge (a,6) conveys the 6. information that a knows boy girl
688
Chapter
Basic
Flows
7: Network
for Solutions of the Problems
Strategy
have
we
While
directed
bipartite
them. Of
course,
exercises, we
been able to model each of these problems with a for any of graph, we have not yet determineda solution solved versions of these problems in the having simpler
have
insight into how we will to extendour bipartitegraph to a
gained
already
will be
our strategy
Basically,
and then apply the maximal flow-minimal the transport networkas follows:
network
We design
sink D and edges (S,a) and Moreover, we assignthe capacity network.
a matching
call
| A | = 4 and | The next theorem
where
B| = 5
the disjoint union
from
vertices
matching
(a)
in
is
A
(b)
A
(c)
A flow
matched
and
be a directed bipartitegraph whose vertex A and B such that each edgeof G is in J3. Let (G*,k) denote the associated
gives
matching the flow
a maximal matching for G. matching | is a complete
whose value is | A
Proof. Let F be oGA
network
networksand flows.
network (G*,k) gives a to a vertex b E B iff
flow
maximal
matching
7-45).
Then
A flow in the
a E isl.
a source S and a a E A and each b E B. This resulting networkwe adjoin
subsets
vertices
to
A
of
theorem.
cut We
Let us illustrate onesuch
(Figure
Let G
set is
network.
1
for each to all edges.
relates matching
7.5.1.
Theorem
(b,D)
proceed.
transport
a
flow
b E B~ Then
in
(G*,fc).
the only
Figure
edge
Suppose that a is (S,a)
into
7-45.
for G. A vertex across edge (a,fc)
for G.
F(a,b) = 1, where and it must be that
Section
7.5
Applications:
F(S,a) = 1,or in out of a is 1 and which
other F(a,b)
= 1.
F(afx)
and Hall's
Matching
the flow words, = 1, (a,b) is
Similarly the
Marriage Theorem
into a is 1.Moreover, since the only edge of the form
only
of the
edge
form (x,b)
689
the
flow
(a,x)
for
such that
F(x,b) = 1isthe edge(a,6).Thus, if M = {edges (a,6) where a E A and b (E B and F(a>b) = l}, thenthe edges of M have no vertices in common and M is a matchingfor G. the fact that the number of Parts (b) and (c) follow immediatelyfrom verticesof A matched with vertices of B is the value of the flow F. a maximal Of course, sincea maximalflow produces matching, we can to the network and the path matching apply algorithm flow-augmenting
determinea maximal
matching.
Complete
\342\226\241
Matchings
matching in a directed bipartite graph is obtainedprecisely of the flow in the associated matching networkis | A |. Let us show how to use this fact to producea proofof a famous theorem known as Hall's Marriage Theorem.Firstwe need some terminology. with vertex set equal to the Suppose G is a directed bipartitegraph disjoint union of A and B where each edge of G is from vertices of A to of J3. Then if C C A, let R(C) be the subset of B of all vertices vertices in C, that is, R(C) = {b G B | (a,6) is an edge in G incident from vertices for some a E C|. Of course,if G has a complete matching, then we must < | R(C) | for all subsets C C A. In other have words, each subset of k | C | elementsof A is incident to at least k elementsof B if G has a complete C of A, as |, for all subsets matching. We refer to the condition|C| < | R(C) the matching condition. For the assignment problem,the matching that for all m applicants to be assigned,then condition for each says of k applicants there must be at leastk job positions for which subset they collectively qualify. in 1935. Later it was discovered P. Hall proved the theorem marriage that Konig and Egervary had an equivalent version in 1931, but proved an earlier theorem that Menger both theoremswere immediate from in 1927. others had priority, we continueto refer to the proved Though A complete
when
value
the
theorem by
its
familiar
name.
HalPs 7.5.2. graph whose vertex
Theorem bipartite
whereeachedgeof G is from completematchingfor G ifF| We have
Proof. matchingthen
the
matching
Marriage Theorem. LetG be union of subsets set is the disjoint in vertices C | < | R(C)
A
vertices
to
in B.
A and B There exists a
| for each subsetC of
already observed that condition holds.
if
there
is a
a directed
A.
complete
690
Chapter
Flows
7: Network
C of A. Let A Suppose that | C | < | R(C)| for each subset B = l^!,.. .,6j, and_let (G*,k) be the associated matching
=
.,am}, network. the value of {aly..
Finally, assume (XyX) is a minimal cut in (G *yk). Obviously, any flow cannot exceed m. Thus,if we can show that k(XyX) > my then a maximal flow will have value m and the matching correspondingto this will
flow
be a
(consult
I II
matching.
complete
After a changeof
7-46),
Figure
write X = {Syaiy.. .,as,6x,...,6J.Then three types of edges.
we may
notation
(XyX) has
m-s edges from S t edges from bly..
to as+ly...,am, .,bt to Dy
and
III
We
edges need
{alv . .,aj.
from aly..
estimate
only
Then
.,as to 6t+1,...,6n.
by
the
the disjoint union of
Wx
the number
matching and W2,
condition
where
Wx
of edges of type s = | C \\ < | R(C) = R(C)
C\\
III. Let C |. Now 7?(C) .,fcj and W^2
{bly..
Cut(X,
X)
of type
I
edges
type Figure
of III
7-46.
=
_^
/ edges of type
m-5 edges
=
is
II
Section
7.5
Applications:
R(C)
Pi
+
\\W1\\^tand\\W1\\
\\
W2\\
equal to (m -
than or
The
s)
t +
+
gives a
corollary
following
a complete
Marriage
691
Theorem
= \\R(C) | > s of the number
k(XyX)> m sincethe sum
greater
Hall's
of edges of type III is just | W2 |. Note implies| W2\\ > s - t. Therefore, of edges of types I, II,and III is
number
The
.,fej.
{bt+l9..
and
Matching
(s
- t) = m.
\342\226\241
sufficient conditionfor
existence
the
of
matching.
G whose vertex set is the Corollary 7.5.1. In a bipartitegraph B of A where each of G union and is from vertices of A to edge disjoint for G if is vertices of B, thereexistsa complete there an matching integer
k
that
such
vertex in A vertex in B
every
(i)
every
(ii)
is adjacent to k or more verticesin B and is adjacent to k or lessverticesin A.
Given a subset C of A, there are at least k \\ C | edges Proof. from C to J3.Sinceat most k edgesgo to any element of J3, the number of elements = |C|. Thus, |R(C) \\ > C is at least k\\C\\ of B can be reached from (1/k) \342\226\241
\\C\\.
committee problem, if each committee has at least k k is permitted to belong to more than individual find then is to a for it committees, separate chairperson always possible if every each committee. Likewise,in the marriageproblem, girl knows at the
in
Thus,
no
and
members
is least k boys and every boy be married to a boy she knows. Exercises
1.
A
each
girl
can
6 partners and 6 important clients.Each partner with two of the clients,and each client has relationship
a good
a good
relationship
with
eachpartnerto a relationship?Explain. different
2.
most k girls,then
has
firm
law
has
by at
7.5
Section
for
known
David,
Cindy,
Bob,
Andy,
2 of
the
client
partners.
and Myrtie
children to school.Andy
drive their
whom
with
can
Is it possible to assign he or she has a good
wish to drive!
form
a car
Mondays
pool
to
or
Mondays or Wednesdays, Cindy can drive or David can drive Wednesdaysor Fridays, Tuesdays Thursdays, and can drive Thursdays or Fridays. Myrtie Draw a this situation. to model (a) graph Use show that a complete matching exists. 7.5.1 to (b) Corollary
Tuesdays,
(c)
Bob
Find
can
one
drive
such
compleie
matching.
692
Chapter7: Network 3.
Flows
A is qualified for jobs Jl9 J2, and J6; B is qualified Applicant J6; C is qualified for jobsJx and J4, and J7; Jl9
J5;Dis
(a) Model this problemasa matching (b) Find a maximal matching.
(c) Is therea
project. The house
agreed to fix
Brian
curtains;
can clean that Assuming match
will
5.
A
Anna
can paint can paint,
as a
house
old
and move furniture; wallpaper, and move
made. Jody canmakenew
and
words {bcd,aefg,abef,abdf,abc,cdeg} to represent each word by one will
be uniquely
Myrtie
furniture;
wallpaper.
assignment that jobs
it possible
word so that the words
church charity cleaned. In
and wallpapered, and new curtains
and wallpaper; and Joecanpaint each does a different job, give an as many people as possible with
of code
set
transmitted. Is
an
painted, be moved
must
furniture
that
network.
be
must
addition, Suppose
F is
matching?
complete
students have
4. Five
for
of tasks they
that
can do.
is to be of the
represented?
in the If so, how?
letters
6. Five students,Sl9
S29 S3> S49 and S5, are members of four and C2, C3, C4. The membersof Cx are Sl9 S3, and S4;C2 has and S3 S5; Sl9S4,and S5belongto C3; and Sl9 S29 S3, and S5
committees,Cu
members
belong to C4. Each committeeis to send a representativeto a
banquet.No
can
student
represent
two committees.
network. (a) Model this problemasa matching is the of What a maximal (b) interpretation matching? of a complete matching? (c) What is the interpretation
(d) Find a maximalmatching. (e)
Is
there
a complete
7. Six senators,Si,S2,
S3,
The committees
are
S4, S5, and S6, are = C\\ {S2,S3,o4},
C4
~ {Sl9S29Si9S6}9
each committee
are to be reviewed
committee.
5 distinct
{Sl9S29S59S6}9
Can
tasks?
If so,
and C5 -
senators
membersof5 committees. ^2 = t*Si,S5,og}, C3 = {Sl9S29S3l
The
activities
a senator
who is
be selected
for the
by
of
not on the reviewing
how?
are mn couplesat a dance.The men are divided into m to their according ages. The groups with n men in each group n groups with m women in each group into women are alsodivided m couples can be chosenso Show that accordingto their heights. that every age and every height will be represented. The prison Six persons Pi,P2>.. .,P6 are held in a foreign prison. into cells so that warden wishesto keep the prisoners separated that inmates cannot understand each other.Suppose Px speaks
8. There
9.
matching?
Section 7.5
Chinese, French,and Hebrew; and Italian; P3 speaks English
Spanish;
P5
P2
be lockedin 2 cellssuch
6 prisoners
these
same cell would
in the
inmates
German, Hebrew, and speaks French; P4 speaks Chinese and and German; and P6 speaks Italianand
English
speaks
Could
Spanish.
be
able
11.
Suppose
m
knowing
anything
apply
applicants
about
the
for n jobs
of his
where m > n. Without can you determine
qualifications,
whether or not thereisa complete matching? If every girl in school has k boyfriends and k girlfriends,is it possiblefor each girl to with of her boyfriends one and for each boy one
Explain.
go to the to
or
disprove.
go to
school has
schooldance
the dance
with
Explain.
girlfriends?
Corollary7.5.1.
Prove
boy in
every
12. Give an exampleof a directedbipartitegraph the conditions matching but does not satisfy
13.
no
that
a language
to understand
the othersspeak?
10.
693
Marriage Theorem
and Hail's
Matching
Applications:
Any
matching
that
a complete and (ii) of (i) has
is contained in a maximal
matching.
14. There
are
n
compatible
with
15.
of the
with
m
with
a compatible
computers m disk
and drives
n disk drives. and each disk
Is it possible computers. * disk drive?
Each computeris
drive is compatible
to match each computer
Latin rectangle, where r < n, is an r x n matrix that has the numbers1,2,...,nas entries such that no number appears more than oncein the same row or the same column.A Latin square is an n x n Latin rectangle. If r < n show that it is always possible to r rows L to form ann x n to an r x n Latin rectangle append n \342\200\224 Latin square. Hint: do the following: of L and let B = Let A = {alv . .,an}denote the setofcolumns (a) a directed {l,.. .,n}.Design (at,fc) edges bipartite graph G with where k does not appear in columna; of L. that there is a complete matching for the matching (b) Show Anrxn
network
determined
(c) Interpret what
by G.
a complete
matching
means in this
context.
16. Let G be a directed bipartite graph with vertex set V equal to the disjoint union of subset A and B where each edge of G is from = vertices of A to vertices of B. Definethe deficiency of G as d(G) max {|C | - |jR(C) | such that C C A}. (a) Showthat G has a complete matching iff d(G) = 0. for G. Show that the (b) Obtain the matching network (G*,k) or equalto | A \\ than is of in cut (G *,k) greater capacity any d(G).
694
Chapter 7: Network
Flows
that the maximum number of vertices of A that can of B is | A \\ \342\200\224 be matched with vertices d(G). whose vertex Let G be a directed bipartitegraph set is the disjoint A and B where each edge of G is from vertices of A union of subsets of B. Suppose that there are 4 or more edges incident to vertices from each vertex of A and, moreover, suppose that there are 7 or incident to each vertex in B. Prove that the deficiency fewer edges Conclude
(c)
17.
14.
< 6if|A|<
d(G)
18. Let G be a directedbipartitegraph
Exercise17.
of A and 5 or fewer edges incidentto eachvertex that d(G) < 2 if | A | < 10.
Prove A
telephone incoming
through
are
line is
3 groups
connected so that it
trunks.
A
trunks,
and a
II
group
that
lines
trunks
can be
most 6. (a)
Describe
(b)
Determine
a directed
definition (c)
(d)
of
in all.
outgoing
outgoing the number
Moreover,
model for G for
bound for
d(G).
See
this
problem.
15 for
problem
the
d(G).
How many of the 60 outgoing trunks? At least how many calls
incominglines will
be
routed
to
connected
be
will
to outgoing
there are callsat all 6ft incoming lines? 20. Thirty manufacturers use a certain type of their microcomputers. There are 24 electronics make this type of circuit. Becausetransportation the computer manufacturers would like to buy nearby
outgoing
of two
one
to
I
group
switched to an outgoing trunk is at
bipartite
an upper
of eight
one
to
switched to one of four
line canbeswitched
trunks. There are48outgoing incoming
and III of 20 lineseach.A
can be switched
can be
line
group III
I, II,
B.
in
to route phone calls The 60 incominglines
was built network to outgoing trunks.
switching lines into
partitioned
of
sets A and B as in edges incidentfrom
vertex
or more
vertex
each
19.
with
are 4
there
that
Suppose
trunks when
that
companies costs their
in
circuit
miniature
are
circuits
high, from
electronics companies.
The computermanufacturers
are into 3 partitioned 10 members each. Manufacturers in category within 50 miles of 4 electronics companies, category manufacturers are within 50 miles of 2 electronics and 1 HI of within 50 miles electronics manufacturers are only category 50 miles of more than is within company.No company is able to supply 3 manufacturers and no company
I
with
transportation categories
are
more (a)
II companies,
electronics electronics than 1 manufacturer. a directed
Describe
(b) Show that
bipartite
d(G)< 10.
graph model for
this
problem.
Section
7.5
695
Theorem
Conclude that at least 20 supply contracts can be signed between the computer manufacturersand electronics are within 50 miles of each other. companiesthat
(c)
21.
and Hall's Marriage
Matching
Applications:
Let
network
a transport
be
(G,k)
ofG.
with
=
k(e)
each edge
1 for
e
that the value of a maximal flow is to the equal maximum number of edge-disjointdirectedS-Dpaths in G. Show that the capacityofa minimalcut in (Gyk) is equal to the minimum of edges number whose deletion destroys all Show
(a)
(b)
directed S-Dpaths.
in a directed Let x and y be two vertices Theorem,) (Menger's number of edge-disjoint graph G. Prove that the maximum directed x-y paths in G is equalto the minimum of number in G. edges whose deletion destroys all directed x-y paths (d) (Konig's Theorem,) Let G be a directed bipartite graph whose A and B where each vertex set is the disjoint of subsets union edgeof G is from vertices of A to vertices of B. Then the number of edgesin a maximum is equal to the matching minimum of vertices that cover all edges. (A set of number cover all the edgesof G if each edge is incident with at vertices as a least one of them.) Hint: Obtain Konig'sTheorem (c)
restatement
of
aua29..
.,tfm in
bub2,..
of B .,6\342\200\236
let
be an
there
column of M (a)
(c).
part
an m x n matrix, M, constructa
22. Given
A
corresponding
edge
from
is nonzero.
a, to 6;
a matching
what
Interpret
to the
corresponding
Prove maximum
graph
G
of M
and
with with
G,
in the
jth
entry
means in this
(b) Expand to a matchingnetwork meaning of a minimal cut in (G *,&). (c)
rows
columns of M. Inthe graph the
iff
bipartite
the
to
ith
and
row
context. and
(G*,k)
the
interpret
the
Theorem: In any matrix, the Konig-Egervary of nonzero entries such that no two are in row or column is equal to the minimum number of rows columns that between contain all the nonzero
the
number
same
them
and entries.
Selected
for Section 7.5
Answers
5.
a
Design
{a,b,c,d,eyf,g}yand in the 11. Apply
15. See
Liu
network
matching
edgesfrom
code word. Obtain
Corollary 7.5.1. [26]
p. 286.
with a code
a maximal
A
word flow.
=
{code
to a
letter
words}, if
the
B letter
=is
696
Chapter 7: Network
Flows
consider the subgraph For any CCA vertices in C, those in R(C) and edgesbetween
18.
number of
in this
edges
of
G
the
of
consisting
two.
Let e
the
= the
Then 41C | < e < 51R(C) |. Thus, = max{|C|-
subgraph.
|C|-|/?(C)|
\\R(C)\\},d(G)*2.
19. SeeLiu 21. See REVIEW
p. 289.
[26]
Bondy and Murty
FOR CHAPTER
1. In the
[4]
203-204.
pp.
7 with
network
flow shown
indicated
in Figure
7-47,
determine:
m
(a)
_
(b) F(X9X) (c) the value 2. There ,
B
and
traffic,
and k(X,X)for a maximal
of
X
= {S9a}9 and
flow.
to city D, onepassesthrough passes through city C. During the lunch average trip times are:
are two
routes
from
city A
the other the
A
to
B: 15
A
to
C: 30
city hour
minutes minutes
B to D: 15minutes C to D: 15 minutes
The
maximum
A
to
B: 1000
A
to
C: 2000
capacities
of the
routes are:
vehicles vehicles
B to D: 3000vehicles C to D: 2000 vehicles
**\342\200\242\302\243>
Figure
7-47.
Section
7.5
and Hail's
Matching
Applications:
697
Marriage Theorem
(15,15) 7-48.
Figure
the flow
Represent
of traffic from
A to
the lunch hour as a
D during
transport
network.
3.
If a transport network has sink D, how many S-D cuts
4. In the transportnetwork (a) Find a maximal flow. List
(c)
Find
paths P that you find to increase the value e(P) for each path.
that
common
is jin
(X,X)
(X,X) with
any
the
cut (X,X).
a minimal
that
S and
source
7-48:
in Figure
shown
(d) Determine all minimal
5. Suppose
the
are there?
all flow-augmenting value of the flow, showing
(b)
Prove
10 verticesincluding
cuts. (G,k).
edges
in
in G.
circuit
directed
6. There are 50 girlsand
a transport network of containan equalnumber
S-D cut in
and (X,X)
Leon High and each has boys boy girl exactly 4 dated is determine whether or not it possiblefor exactly girls, to each to school dated and the with a she has girl go banquet boy each boy to go with a girl he has dated. 7. Foreach of the following collection of sets, determinewhether or not thereisa system of distinct If no such system representatives.
School.If each
has
exists,explain
boys
Cx = {a,fe,c},C2 -
{a,d}, C3
8. The six stateuniversities
graduates training state corporations with
wish
but
dictates
that
same
no
university.
2
senior class at
5 of the
(b) ^ = ^ = 03= M,e},C4
qualifications,
in the
not.
why
(a)
50
dated
have,
in to
= =
= {a,d}. - {a,fe,c,d,e}.
{a}, C4 C5
respectively,
science computer hire a total of 48
13, 7, 7, 7, 7, and 7 and economics. Ten
graduates with
these
company policy at-each of the corporations the newly hired professionals may be hired from Explain in terms of Hall's Marriage Theorem
698
Chapter
7: Network
Flows
whether
or not all
48 graduateswill
be
hired
by the
10
corporations.
9.
G be a directed bipartite graph whose set is the disjoint vertex in A to union of subsets A and B where edge? in G are from vertices from vertices in B. Supposethat thereare3ormore incident edges that there are 7 or fewer each vertex in A, and moreover, suppose in B. If | A | < 50, find an upper bound edgesincidentto eachvertex for the deficiency of G. Let
8
and
Representation
of
Manipulation
Imprecision
8.1
FUZZY
8.1.1
SETS
Fuzzy
and
Sets\342\200\224Notation
Fuzzy
set theory,
Terminology
introduced by Zadeh in 1965,is a generalization
of
set theory.
abstract
set consistsof objectsand their respective grades of grade of membership of an objectin the fuzzy set The value of is given by a subjectivelydefined function. membership 0 to 1 where the the grade of membership of an object can range from is to 0, the and the closerthe value value of 1 denotes full membership, in weaker is the object'smembership the set. fuzzy sets we In our discussion of representation and manipulationof fuzzy follow closely the excellent presentations in Zemankova-Leechand A fuzzy
in membership
the
set. The
Kandel[51]
and
Zadeh
[50],
as well
Approximate ReasoningInferenceEngine Ruspini [46].
Definition 8.1.1. Let U generic by
a
element membership
the
example
interesting (ARIES)
by
Appelbaum
of an and
the of discourse, with characterized F is of U fuzzy with each which associates mF: U \342\200\224\342\226\272 [0,1],
of U denoted function
as^
be
the
by u. A
universe
subset
element u of U a number mF(u)representingthe gradeof u in F. Fis denotedas {(u,mF(u)) U\\* \\ u G
membership
of
699
700
Chapter8: Representation
and
Other widely
of Imprecision
Manipulation
used notations are:
F= I
F = mF(wi)/t/i
when
U is
a finite
or
elements. set of
is the
F
points in U at
is positive.
mF(u)
The height
8.1.3.
Definition mF(u)
(8.1.1)
mF(un)/un
set of n
countable
a continuum
\342\200\242 \342\200\242 \342\200\242 +
+
8.1.2. The support of
Definition which
U is
when
mF(u)/u
over
of
F
is the
least upper
bound of
Uy
- lubmF(u). uGU
hgt(F)
A fuzzy
8.1.4.
Definition
set F
(8.1.3)
is said to be normal if
its
height
is
unity, that is, if = 1.
lubmF(u)
uEU
Otherwise
F may
be
F is subnormal. normalized
or
nonfuzzy
contained
in
B
iff
may
be
be
noted
a subnormal fuzzy
that
a fuzzy
subset of
U, and let Bbeanother of B or is
subset of U. A is a subset (ordinary) mA(u) < mB(u) for all elementsu of U> that A C
Example 8.1.1.
B
\302\253-
set
mF by hgt(F).)
by dividing
Definition 8.1.5. LetA fuzzy
(It
mA{u)
< mB(u),
u E
U.
is,
(8.1.4)
U be the interval Let universe of discourse the in u as [-20,110] interpreted temperature degreesFahrenheit.To a fuzzy to be able to define it is convenient subset A of U labeled WARM, whose the function as a standard function express mA membership of the be the to reflect parameters may subjectivity adjusted of characteristic A standard subset function. function of this type that maps a fuzzy a real line onto the interval is which a is the S-function, piecewise [0,1] with
Section
8.1
quadratic function
701
Sets
Fuzzy
definedas follows: = 0
S(u;a,b,c)
for
\\c
-
< a
u
for a
a]
(8.1.5) for
b <
u <
for
w >
c
c
\342\200\224(H)1
= 1
and where the parameters a and c are the lower upper fuzzy subset interval bounds, respectively,and the parameterb = (a + c)/2 is the crossover point, that is,the value of u at which S(u; aybyc) = 0.5. subset WARM can be subjectively Using the S-function, the fuzzy = S(u; characterized by the membershipfunction 60,70,80) or mAl(u) = S(u; where was a from Florida 45,60,75) by person given mA2(w) mAl(u) Maine the concept of \"warm\" whereas a person from expressed by functions and Figure 8-1 shows the graphs of membership mA2(u). mAl(u) mA2(u). = 0.5 whereas Notice that mAl(70) mAa(70) = 0.9 with the interpretation
the degree of agreement with be 0.5 for the personfrom Florida that
the
statement
as compared
\"70\302\260F
to 0.9
is
would
warm\"
for the personfrom
Maine.
crossover
The
points
for
mAl(u)
and
mA2(u)
are
70 and
60,
respectively.
The
(60,110] whereasA2 has mM(u) since hgt(A^ = hgt(A2) < for all u in U, hence Ax general, mAi(u) mA2(u) support
Both Ax In
and
of Ax is
A2 are
normal
> 0 =
on (45,110].
1.
is a
subset
wwurm(w)
Figure
8-1.
Membership
function of
a fuzzy
subset
WARM.
of A2.
702
Chapter 8: Representationand
8.1.2.
Example 8.1.1)
below
of imprecision
Manipulation
A
B of
subset
fuzzy
the universe
=
mB(u)
1
- S(u;
that is, to)
for
A
C labeled
subset
fuzzy
by a
be characterized
30
45 <
for
0
8.1.3.
Example
given
for 30 < u < 45
-w (temperature)can
u <
for
-i-W =
Example
S-function
30,45,60)
mB(u) = 1
equal
U (from
defined in terms of the labeled and the correspondinggraph in Figure8-2. can be
COLD
membership
\302\253 C = {setof temperatures t\\
u < u
60
> 60.
PLEASANT of
function
the
\302\253 means
(where
normal
class,
approximately
with
= exp
mc(u)
(~((u
- t)/b)2)
all
for
real
u.
(8.1.6)
of \302\253. The parameter b providesthe degree of fuzziness Let us consider functions given by a Floridian and membership which are graphed in Figure 8-3: personfrom Maine, respectively
mCl(u) mC2(u)
It can
be observed
from
- 74)/6)2)
=
exp
=
exp(-(U/-68)/12)2).
Figure
(-((u
8-3
that
and
the Floridian
not only likes
Wcold(w)
Figure
8-2.
Membership
function of
a fuzzy
a
subset
COLD.
Section
8.1
Fuzzy
Sets
703
Wpleasan\302\253(w)
1.0
8-3.
Figure
Membership
fuzzy subset
of a
function
PLEASANT.
but also has a low tolerance for the deviation the person \"pleasant\" temperature of 74\302\260F, whereas F as ideal Maine considers 68\302\260 and accepts a broader rangeof warmer
temperatures
the preferred temperaturesas
+ e.
.6/6
from
\"pleasant.\"
Let U = \\a,bycyd,e},
8.1.4.
Example d
from
case a fuzzy
In this
+ .9/c
A of
subset
+ .5/d. Herethe support
or equivalently [/ = a + 6 + c + U may be representedas A \302\253 + .3/a of A = {a,6,c,d}, hgt(A) = .9, henceA
is subnormal.
It is
convenient to
represent a fuzzy u
integers;
fuzzy
set
.6
c
.9
d
.5
labeled
A
\342\200\2423
b
Let U =
8.1.5. a
tabular form:
Ma(u)
a
Example
in a
definition
set
{u\\u
G
u >
/,
SMALL
may
0} where / is the set of be expressed using a
function
=
mA(u)
Here
the
function decreasing
support
with
is the
mA(a)
]T
1 +
(8.1.7)
fcfjr/*
interval [ayc]. mA(u) = 1, linv.^mA(c)
is a
monotonically
= 0, and
the
crossover
point
being 6.
Letting a = 0, c = oo
and
b =
10 yields
the
following
definition
of the
704
Chapter 8: Representation fuzzy set
and
of Imprecision
Manipulation
SMALL:
SMALL= with
sample
+
E[l
(^)2]\"7\302\273'
below:
values given
u
0
1
3
5
SMALL
1
.99
.91
.80
Example 8.1.6. years. In this caseUisa
U
Let
terms
be expressed in
of
= {u | 0
.67
100}with a fuzzy
and
continuum,
10
12
15
.50
.41
.31
7
u representing
set
A
labeled
OLD
age in may
a function
(8.1.8) (BUT/-
-*<\302\273>-/\342\200\242[>\342\231\246
mA(u) is a [a,c] with u = 6.
monotonicallyincreasingfunction =
mA(a)
0, linv^mA(c)
= 1
over
Letting the supportbethe interval [50,100] at u = 55,the definition of OLD becomes
We can find advantageous
8.1.2
in
and the
various types of membershipfunctions
other
the
interval
support
and the crossoverpoint
is
crossover point
which
at
be
are
of fuzzy sets.
applications
Operations on Fuzzy Sets the
Throughout
for
max
and min,
a # b
the symbols
discussion,
forthcoming
respectively; thus, for
any
= max (a,6) = a = 6
real
if
# and
&
stand
a9b a
> b
if a
if
< b
(8.1.9)
and
a
&
b =
min
(a,6) =
a
= 6
Consistent
with
this
notation,
the symbol
q
if a
>b
(8.1.10)
#z means \"leastupperbound
Section
705
Fuzzy Sets
8.1
over the values
basic
the
Among
and &x should
of z\"
of z\" where z
the values
E Z.
be read as \"greatest lower
that can
operations
over
bound
be performedon fuzzy
the
are
sets
following:
Definition 8.1.6. The complement ofa fuzzy ~A (or by A) and is defined by =
~A
The
label for
+
B (or
by
A
The
union
of fuzzy
The
J3) and
U
A
A OR
sets,
8.1.8.
Definition
denoted by
A
B and
Pi
The intersection
interpreted as A Comment.
operators used respectively.
In
represents
A and
f
B is
(8.1.13)
Hence
AND.
It should be pointed out that # and as interpretationsofthe union and
\"hard\"
when
A AND
B is
&
the
Definition 8.1.9. and is defined by
as
OR and AND
The product
AB=
[
not
an AND that is interpretedin \"soft\"
appropriate
in which
are
the only
intersection,
& is identified with (i.e., min), sense that no trade-off is allowed
AND in
AND
operands,acts a these or other possibleinterpretationsis more
AB
and
& mB(u)]/u.
[mA(u)
Ju
between its operands. By contrast, the arithmetic product of the
the applications
labels
A
sets
fuzzy
B are
J5.
particular,
a
of
if
by
is defined by
correspondsto the connective Pi
A
(8.1.12)
mB(u)]/u.
connective OR. Thus, B is expressedas A + B.
AC\\B= The intersection
denoted
B is
and
A
to the
corresponds
then
[mA(u) #
[ Ju
negation.Hence,if
be interpreted as ~A.
union of fuzzy sets is defined by
B=
+
A would
by
(8.1.11)
is equivalent to
a fuzzy
Definition 8.1.7. A
- mA(u)]/u.
fu [1
of complementation NOT then set,
operation
is a
denoted
A is
set
mA(u)
are
of
AND.
it of
terms
Which of
depends
on
used.
fuzzy
\342\200\242
mB(u)/u.
sets
A and
B is denoted by
(8.1.14)
706
Chapter 8: Representationand Thus, Ap, where
of Imprecision
Manipulation
p is any
Ap= if w
Similarly,
is any
is defined
number,
positive
by
(8.1.15)
f [mA(u)]p/u.
nonnegative real
number suchthat
w
< 1,
\342\200\242
hgt(A)
then -
wA
[
w
-
Ju
(8.1.16)
mA(u)/u.
Two operations that are definedas specialcasesof the representation of linguistichedges.
The operationof concentration is
denoted
are
(8.1.15)
CON(A)
by
useful
in
and
is
defined by
(8.1.17)
CON(A)=A2.
The fuzzy
set,
interpretation
of VERY.
A corresponds
to CON(A).
is an
concentration
VERY
then
The operationof dilationis
denoted
Thus, and
DIL(A)
by
if
A is
a label
is expressed by
(8.1.18)
DIL(A)=A05.
If A
is a
label
of a fuzzy
of a
set, then APPROXIMATELY
A is
interpreted
as
DIL(A).
Example 8.1.7.
the
Given
+ 2+...+8,
C/-1 and
fuzzy
of discourse
universe
subsets
A =
.8/3 +
1/5 +
B
and
.6/6
- .7/3
+ 1/4 +
.5/6,
(8.1.19)
then
~A
- 1/1 +
+ .2/3
1/2
+ 1/4
A + B = .8/3+ 1/4+ 1/5+ A H B = .7/3 + .5/6 \" -56/3 ABa A3
=
.65 - .42/3 .6/4 +
CON(A)
= .64/3
DIL(5)
=
.84/3
+ .216/6
+ 1/5
+ .3/6
+ 1/5+ .36/6 +
1/4 +
.71/7
1/7
+ 1/8
.6/6
+ -3/6
.512/3
+ .4/6 +
(8.1.20)'
Section8.1 If Alf.. .,An
8.1.10.
Definition
are
Cartesian product \342\200\242 \342\200\242 is defined as a x An and Ax x \342\200\242 is expressed by function membership mAl
Thus
\342\200\242 \342\200\242 \342\200\242 x
x
Al x
An can
\342\200\242 \342\200\242 \342\200\242 x
f The concept of
discussion of fuzzy Example
be written
UXy..
by
whose .,\302\243/\342\200\236
& mAn(un).
(8.1.21)
as .,un)
mAn(un)]/(uly..
the Cartesianproductwill
=
...
&
roAl(wi)
.,\302\243/\342\200\236
denoted
is
\342\200\242 \342\200\242 \342\200\242 &
&
\\mAx(ui)
referenced
further
be
(8.1.22) in the
relations.
Given
8.1.8.
Ax
=
.,iO
mAn(ul9..
.,An
of
subset
fuzzy
of Uu..
subsets
fuzzy
of Alv.
the
respectively,
707
Sets
Fuzzy
+ .6/3
+ 1./2
.5/1
U2 =
=
Ux
1 +
and
2 + 3, =
A2
l./l
+ .6/2,
then Ax
x
A2 = +
.5/(1,1)
+ 17(2,1)
+ M3,l)
.5/(1,2)
+ .6/(2,2)
+ .6/(3.2)
8.1.11. If Alv
. .,An are fuzzy subsets of Ul9...,[/\342\200\236 (not and are such that distinct), wu.. .,\302\253;\342\200\236 nonnegative weights necessarily combination of Au.. .,A\342\200\236 is a fuzzy set A ^?-iwi = 1> then the convex whose is defined function by membership
Definition
mA
=
wxmAl
+
\342\200\242 \342\200\242 \342\200\242 +
(8.1.24)
wnmAn
of a convex denotes the arithmeticsum.The concept in the representation of linguistichedgessuch as which the associated with essentially* etc., modify typically, components weights of a fuzzy set. The weights can alsobe interpreted as coefficients of the components of a fuzzy set A \"built\" from importance fuzzy
where + combination is
useful
of sets
Alv . .,An.
Example
8.1.9. Let Ux
weight in kilograms. A as
fuzzy
=
set
{ux: 10 < Ax labeled
ux
<
250}
as
HEAVY
with
ux representing be expressed
may
708
Chapter8: Representation with
and
=
mHEAVY(70)
centimeters.
A
of Imprecision
Manipulation
U2 =
Let
0.5.
50 < u2 < 220} with u2 as TALL may be definedas
<\302\253\342\226\240\302\2
\342\204\242L-rhN^n~7with
- 0.5.
raTALL(170)
Then a fuzzy
a convexcombinationof
set A labeled BIG may be HEAVY and TALL, that
sets
fuzzy
in
height
\\u2:
A2 labeled
set
fuzzy
definedas is, A1 and
A2:
BIG
-
mA(uuu2)
For example, if
= 0.6 /*200
/*100
we
the product
denote
- 0.6
mBiG(70,180) -
Notice
variations
that
the
membership
This is due to determining the and
0.64 +
*
0.5
+
fuzzy
0.4
+
fuzzy
of
using
- 0.584 mTALL(180)
= 0.556
influence on the values than
BIG
set
\"importance\"
BIG
0.4 mTALL(170) 0.5
have stronger
of the
- 05
0.4 * 0.64
greater set
0.4 *
mHEAWY(70)
in weight
function
0.4 mTALL(170)
+
0.6
= 0.6
m^^)]/^,^).
0.4 * 0.5
mHEAVY(80) +
0.6 *
-
.4
(8.1.27)
by *,
\"Ibig(70,170)- 0.6mHEAWY(70) - 0.6 * 0.5 + mBiG(80,170)
0.4 TALL
[.6mAl(u!)+
/ ^140
/
JA0
+
HEAVY
the
the convex
variations
component
of
in height. HEAVY in
combination of HEAVY
TALL.
t-level set
A
If A is a fuzzy subset of U, then a Definition 8.1.12. is a nonfuzzy set denoted by At which all elements comprises
whosegradeof membershipin A,-
A
fuzzy
resolution
set
A may
A is
greater
or equal
\\u:mA(u)>
be decomposed into
of
of U
to t. In symbols,
t).
its level-setsthrough
(8.1.28) the
identity
A-
fltAt
(8.1.29)
Sets
Fuzzy
709
or
A
- ]T
(8.1.30)
tAt
t
where
tAt is and
(8.1.16)],
from
0 to
the product of a scalart with /J (or 2,) is the unionof the At
set
the of
the
At [in
At sets,
the sense
with
of
t ranging
1.
be interpreted Since (8.1.1)or (8.1.2) as a representation of a fuzzy may it follows from as a union of its constituent fuzzy {mjui), singletons of A we the definition of the union (8.1.12)that if in the representation = we can have Ui then make the substitution expressedby ujf set
-
+ rrtj/uj
rrti/ui
(8.1.31)
# m;)A/,.
(mi
For example, given
A
may
la + .6/6+ .3/6,
as
be rewritten
A
+ J
- A/a
A
-
(.4 #
.7)/a +
(.6 # .3)/6-
.6/6.
+
.7/a
Or conversely,
mjui =
< (# ro,-)/ui, 0 < \302\243 m;.
(8.1.32)
For example,
.4/a - (.1# .2# Thus
the resolution
identity may
together those terms
in
level-set. More
specifically, A
Then
by
using
suppose
that
- .1/a
+ .3/6
(8.1.32), A
(8.1.1)
-
A can .1/a
.3
# .4)/a,
be
viewed
or
(8.1.2)
A is
\302\243
.1.
as the result of which fall into
represented in the form
+ .5/c+ .9/d+ 1/e.
be rewrittenas
+ .1/6
+ .1/c + .lid +
+ .3/6+ .3/c +
+ .5/c
.3/d
.1/e
+ .3/e
+ .5/d + .5/e
+ .9/d+ .9/e
+ lie
combining the same
710
Chapter
8: Representation
and
of Imprecision
Manipulation
or
A =
.1 (1/a + .3
(1/6
1/6
+
l/c
+ lid
+ l/c
+
\\ld
+
.5 (l/c
+ 1/d + 1/e) +
.9
+ 1/e)
(lid
+ lie)
+
+
1/e)
+
1 (1/e). which
is in
the form
(8.1.30). Using
are (8.1.28),the level-sets
+c+
A.! =
a + 6
A3 = A5 =
6+c+
A
by
+ e
+ e
d
e
d +
c +
= d 9
d
given
4- e
= e.
Ax
As will be seen later, the resolution a convenient identity provides way of generalizing various concepts associatedwith, nonfuzzy sets to fuzzy sets. The level-setsof a fuzzy set will be used as the basisin establishing the responseset to a given query given a threshold of acceptance, or \302\243-level.
Definition transforming
operation set into a fuzzy
membership to its elements.Thus, subset
A of
U produces
a fuzzy
subset
the fuzzy set K(u) to a singleton1/u:
by assigning proper grades F applied fuzzifier to a fuzzy
F(A;K)
which
=
is expressed
F(l/u;K).
of
by (8.1.33)
mA(u)K(u),
the is the kernel ofF,i.e.,
K(u)
can be used in
set
a
F(A;K) - f where
of fuzzification
The
8.1.13. a nonfuzzy
result
of applying
F
(8.1.34)
the and Here, mA(u)K(u) represents the productof a scalarmA(u) of the of sets isthe union set K(u) [see (8.1.16)],and/ family fuzzy fuzzy w \302\243[/. In effect, (8.1.33) can be viewed as an integral mA(u)K(u)y of a linear operator, with K(u) being the counterpart of representation
the
impulse
response.
Section
711
Fuzzy Sets
8.1
Let
Example 8.1.10.
A and
Uy
be defined by
K(u)
U=a+b+c+d =
A
.
+ .6/6
.8/a
tf(l)-l/a+..4/6
K(2) = 1/6 + Ala
.4/c.
+
Then
F(A;K)
= .8 (1/a
+
Ala + .4/c) + .24/a + .24/c (1/6 +
+ .6
.4/6)
= .8/a .32/6 + .6/6 = (.8# .24)/a+ (.32 - .8/a + .6/6 .24/c. +
#
+ .24/c
.6)/6
+
The definition
of fuzzification finds an operation of linguistic hedges such as MORE
MUCH, etc.
SLIGHTLY,
labeledas POSITIVE,
For example,if
of the
subset
OR
A of
a set
In this case,SLIGHTLY
real line.
POSITIVE.
a
is
the
SOMEWHAT,
LESS,
POSITIVE
SLIGHTLY
then
important applicationin
positive numbers is is a label for a fuzzy fuzzifier of the term
8.1.3 Fuzzy Relations
Definition8.1.14. Uu..
.,\302\243/n,then
U. R
can be
discourse
of
subset
is a
U
If
an
n-ary
expressed as the union
singletons mR(ulf.. .,w\342\200\236)/(wi,.. R= where
mR
is the
[
function
link
between
u and
Vy respectively.
v,
Common
GREATER THAN, IS TO, IS INFLUENCED
Example 8.1.11. MUCH
8-1).
GREATER
will be restricted to measure of the strengthof the of universes of discourseU and
discussion
mR(u,v) are elements
Let\302\243/\302\253V-l
may
fuzzy
(8.1.35)
..,un)
of binary
fuzzy
SIMILARTO, IS RELEVANT BY, etc.
THAN
constituent
is,
is a
examples
universes of U is a fuzzy
ofR.
further
case, which
its
of
..,un)l(uu.
mR(ul9.
membership this
that
.,wn),
For the sake of simplicity,
binary relations.In
product of n fuzzy relation, R, in
Cartesian
+
2 +
be defined by
are
relations TO,
IS
MUCH CLOSE
4. Then the relation a relation matrix (Table
3 +
712
Chapter
and Manipulation of
8: Representation
r
Imprecision
Not
Young
. Very
young
very
young
Old
<
More or less old
Age
mathematical
Rigorous
Given
the sets
\"very
young,\"
or less
young\"
young,\"
\"very
rules define relationships \"old\" one can construct
among oth&r
sets.
fuzzy
such
sets,
as
the membership function for \"young,\" or \"more for old. taking the square root of the membership function is obtained for \"young,\" as in by squaring the function and then subtracting the result from one, to represent
by squaring by
old,\"
\"Not very
and
\"young\"
\"not.\"
Figure
of fuzzy
Construction
8-4.
from given fuzzy
sets
sets.
Table 8-1. R
1
2
3
1
0
2
0 0 0
0.3 0
0.8 0 0 0
3
4
Example
TO may
be
8.1.12. defined
If U =
a >
V
-
(-00,00),
1
0.8
0.3
0
the fuzzy relation
as
IS CLOSE
where
,0 0
4
TO = f
0 is a scale factor.
e
\342\200\224\342\200\224-
(u,v),
IS CLOSE
Section
8.1
Fuzzy
Fuzzy relations generalizeordinary in the following composed as shown
therefore,
relations;
Sets
713
they
can be
definition.
Definition 8.1.15. If R and S are fuzzy relations on U x V and V of R and S is a fuzzy relation on V W respectively, then the composition \302\260
by R
W denoted
R\302\260S=
If
V and
Uy
defined
S and
W are
addition product (i.e., operations replaced by min and max, respectively)of andS.
min-max
operation
\302\260
S is
& in
the
are for R
multiplication relation matrices
the
can be min or a of the
(8.1.36)
definition
in the
used
R
and
It shouldbe mentionedthat
product orthe algebraic intersection of
(8.1.36)
finite sets, then the relationalmatrixfor of
Comment.
x
by
#v[mR(u,v)&ms(vyw)]/(u,w)
[
x
sets.
fuzzy
8.1.16.
Definition be:
A
reflexive
iffmR(u,u) = 1, Vu\302\243(/
symmetrical
iff mR(u,u')
= mR(u\\u),
\\f\302\243mR(u,u')
>
anti-symmetrical
V
@-transitive
iff
where @
u,u'
m^(w,w\") ' w V u,u ,
E
R on
relation
binary
fuzzy
0 and
U x
V
U
G
u,u'
(8.1.38)
= 0,
mR(u',u)
> mR(u,u') u
can be replacedby
(o.i.oy)
@ mR(u',u\
(8.1.40)
u U a
min,
to
(8.1.37) V
u*u! \302\243/,
o a tz
said
is
or other
product
algebraic
operation. is transitive,
R
When
R+ =R in the exists
+ #2+
sense of and
its transitive \342\200\242 \342\200\242 \342\200\242 + Rm
+ .
closure, .
\342\226\240 where
,
max-min composition.Due
to
+, is
R
Rm = the
defined
R\302\260 R\"1\"1
reflexivity
(8.1.41)
of R, R +
is min-transitive.
Reflexive and relations.
symmetrical fuzzy
relations
are
Reflexive, symmetrical and min-transitive fuzzy relations. similarity They are obtainedas
called relations
Reflexive, are
symmetrical and product-transitive fuzzy weaker than similarity relations.
proximity are closures
transitive
proximities. 8.1.12) (Example
by
relations
called of
714
Chapter
8.1.4
and Manipulation of
8: Representation
Cardinality of a Fuzzy
Set
Let U be a finite
8.1.17.
Definition
U. Its fuzzy
Imprecision
cardinality,
A be
and
universe
by c(A), is definedby
denoted
c(A)=
f
a fuzzy set on
(8.1.42)
t/\\At\\
number of elements in the t-levelset of A, At, as defined In other words,c(A) canbe defined as a fuzzy set of natural
| A t\\ is the
where
in (8.1.28).
numbers,N, suchthat
of a fuzzy
The concept
questionofthe some
8.1.5
states
mc{A)(n) = lub{* E
E N,
V n
type
set
(0,1]:|
At
|
=
(8.1.43)
n).
can be applied when answeripga streets are there?\" or \"Are there long
cardinality
\"How
many
climate?\"
with pleasant
The ExtensionPrinciple fuzzy
of the most important conceptsin this of Application principletransforms any between elements to deal with fuzzy entities. nonfuzzy
extension
The
is one
principle
the
set theory.
relation mathematical
over
sets
fuzzy
Extension
The
8.1.18.
Definition
Ulf..
.,\302\243/\342\200\236 respectively,
defined by (8.1.22).Let / fuzzy image B of Al9...,An
be
a
from
function
/ has
through
their
Cartesian
Ux x
\342\200\242 \342\200\242 \342\200\242 x
the constraint y
= f(ul9.. ,,un)
mB(y) = 0 when/
and
~\\y) = {ul9...,un
Un to
be
product Y. The
a membership function:
min mA(wt), mB(y) = (uu...,un) lub n \302\243 t/i x... x Un i-l under
Let Alv. .,An
Principle. with
the
: y
(8.1.44)
VyEY
condition
additional
-
f{u\302\273..
.,aB)}
= 0
(8.1.45)
in the composition of fuzzy sets The extension principlecanbeapplied in defining the fuzzy of functions, in the algebraof fuzzy numbers, a fuzzy domain, in multivalued logic, maximum value of a function over
and in otherimportant
8.1.6
of Fuzzy
Applications Fuzzy
modeling.
areas.
set
theory
It
has
is being
Set Theory gained
its importance
applied in the
fields
as a tool for of
fuzzy
vagueness
systems,
fuzzy
Section 8.2
and
and languages,
grammars
other areas of
artificial
applications in the field
(ES)
be
will
8.2
of
artificial
intelligence
medical
control,
science.
computer
(AI) and
and
theory
game
retrieval,
intelligence
operations
economics, system
and
in Section
discussed
in
of natural
models
in
algorithms;
fuzzy
and language and approximatereasoning; research, decision analysis,pattern recognition, diagnosis, theory of learning, information
715
Theory
Possibility
Specific
expert systems
8.3.
POSSIBILITY THEORY
The
Consider a nonfuzzy
8.2.1. p =
it is
and
(ii) it is
X is an integerin
the
not
for
possible
words,
p
any integer
a possibility
induces
E [0,5]the possibility
each integer u
p):
(or proposition
interval
[0,5].
that:
possible for any integer in the interval
value of X.
In other
statement
of the propositionp asserts
The interpretation
with
the relation between fuzzi-
possibility.
Example
(i)
to explain
is used
example
following
and
ness
to be
[0,5]
a value
outside of the interval
distribution
Ylx
u could
that
to be
[0,5]
which
be a
of X,
associates
value of
X.
Hence,
=
1
u} = [Poss {X \302\253=
0
for \"The
possibility that X
{X =
JPoss
where Poss {X value
=
u] stands the
\"fuzzify\"
\"small
may
assume
the
integer\"
X is a small integer
is a fuzzy
set defined in
the universe of
positive
as
SMALL where
>5
p:
proposition
pF =
integers
for 0
of u.\"
Now,
where
u\\
INTEGER
.7/3 signifies
= 1/0 +
that the
1/1
+ .9/2
+ .7/3
+ .5/4 +
.2/5
grade of membershipofthe integer3 in
the
a
716
Chapter
8: Representation
and
of imprecision
Manipulation
SMALL INTEGER\342\200\224or, the compatibility equivalently, INTEGER\342\200\224is 0.7. statement that 3 is a SMALL the interpretation of the proposition be Consequently, q can fuzzy set
It is the
possible for
of membershipof u In otherwords, each
with
pF
integer
taking a value in
the
a SMALL
to be
integer
any
of X
possibility
fuzzy
of
grade of membershipof u in the fuzzy
= 3}
{X
INTEGER.
distribution
IIx which associates of
to the Thus,
X equal
INTEGER.
SMALL
Poss {X = 0}= Poss{X = l} = Poss {X - 2} - .9
Poss
INTEGER with the grade
could be a value set
fuzzified:
equal to
u being
set SMALL
induces a possibility the possibility that u
of the
l
= .7
Poss {X = 4} = .5 Poss {X = 5} = .2
Poss
{X
More
stated
above
the
generally,
in the
= u)
for u < 0 or u > 5.
= 0
of a fuzzy
interpretation
can
proposition
Definition 8.2.1. PossibilityPostulate.
X is a variable U characterized
If
subset takes values in U and F is a fuzzy then the proposition mF, membership function
q =
of
XisF
inducesa possibilitydistributionII
x
is equal
which
to F,
that is,
In essence,
the
It is
(8.2.2)
that
Poss
which
that by a
(8.2.1)
nx = F implying
be
following postulate.
serves
{X
-
possibility
to define
u\\
=
for all u
mF(u)
of X
distribution
G U.
engenders a
the possibilitythat X couldtakeany
important to note that
since
II x
=
Fy
the
(8.2.3)
possibility
value
fuzzy
u in
distribution in nature.
set
U.
subjective depends on the definition of F and henceis purely the possibility distribution function associated Correspondingly, X (or the possibility with distribution function of II x) is denotedby px function of F, and is defined to be numericallyequalto the membership
Section
8.2 that
717
Theory
Possibility
is,
the
PxMy
Thus,
possibility
Px
- mP.
that
X =
(8.2.4)
u, is postulatedto be equal
to
mF(u).
referred to as a possibility assignment that the proposition \"Xis F\"translatesinto a fuzzy set F to the possibility distribution of X, or
(8.2.2) is
Equation equation
it signifies
because
of
assignment
g =
XisF\342\200\224
for \"translates where \342\200\224* stands More generally, the possibility proposition of the form
nx
= F
(8.2.5)
into.\"
of
F is
be
a fuzzy
(i) a variable, as expressed
subset
universe
of a
(ii) a fuzzy
(iii)
set,
IW)
to a
corresponding
equation
assignment
\"ATisF\"
where
the
(8.2.6)
of discourse a proposition,
(/, and N isthe name object,may
or (iv) an
=F
(8.2.7)
or,more
simply,
nx
X is either N itself(when
implicit
in
N,
X
with
N
is a
variable)
values in
taking
propositions can be translatedinto Consider
8.2.2.
Example
= F.
or a variable that \302\243/. Note
is explicitor
also
that
\"nested\"
(8.2.7).
the proposition
q = Tom is old.
Here
=
N
{u:0 <
function
u
Tom,
<
X
100} with
- Age(Tom), u signifying
and \"old\"
is
a fuzzy
set defined
Age and characterizedby
on U =
a membership
m0LD. Hence,
q = Tom is old \342\200\224 IIAge(Tom) It is clear that
the conceptof
a possibility
= OLD.
distribution
is closely
related
718
Chapter
and Manipulation of
8: Representation
to
rules
to fuzzy sets.
applicable
The notion of
concept of
restriction. the calculus
restrictions,
fuzzy the
for
bears also a closerelationtothe Hence the mathematical apparatus for
of fuzzy restrictions, can be usedasa basis distributions.
of possibility
manipulations
ofa First, let us definethe concept
of
u
u is
where
by
Then F
U and
discourse
characterized
be a
Let X
8.2.2.
Definition
universe of
function
a membership
on
other
of a
a fuzzy
mF. that may
value of u to
X) if F
with
associated
(or
value
the
in a the value assigned subset of U which is values
takes
X is
that
U. Let F be
an element of
assignment
which
variable
= u signify
let X
acts as an elasticconstraint the
restriction.
fuzzy
is a fuzzy restriction on X
words,
manipulated by
distribution
a possibility
a fuzzy
can be
distributions
possibility
therefore,
sets;
fuzzy
the
Imprecision
be assignedto X. In
X has the form
= u:mF(u)
X
(8.2.8)
is interpreted as the degreeto which the constraint F u is to is satisfied when or X, assigned mF(u) can be by F. It follows as a degree of compatibility of u with that [1 -
where mF(u) represented
thought of
the constraint represented mF(u)]is the degreeto by F is not it or is the t o the constraint must be stretched so satisfied, degree that the assignment u to X is possible. a fuzzy It is important to note set per se is not a restriction. To be a fuzzy restriction, it must be actingasa on the values of X can assume values in [/depending a variable. In other a variable on the on the fuzzy set F. which
which
of
that
fuzzy
constraint
words,
definition
8.2.1
Relationship
Possibility-Probability
of possibility uncertainty manipulating
the
Both representing
is used
concepts
and
to illustrate
Example
Now let
and probability are or imprecision. A
the differencebetweenprobability
passengers
many
with
in
X
by
U =
{1,2,.. .,7}.
interpreting
We
Poss{X
can
associate
= u) as
can ride
X
values
of
example
simple
and
possibility.
Suppose that a 7-memberfamily
8.2.3.
us considerhow
correspondstothe statement\" passengers on
means
owns a 4-seat car. ride in the car. This in a car\" where X takes
a possibility
the degreeof
ease
distribution with
which
u
a probability passengers can ride in a car.Letus also associate = u] stands for the probability that u people distributionwith X where Prob{X = u) and Prob{X = u) are will in the car. The values of Poss{X ride assessedsubjectively and are shown in Table 8-2.
Section8.2 Table 8-2.
and
Possibility
u
Poss{X=
u)
Prob{X-
u]
Associated
Distributions
Probability
1
2
3
4
1
1
1
.8
.3
.4
.2
.1
719
Theory
Possibility
5 .4 0
with
6
X. 7
.1 0
0
0
intrinsic difference between possibility and probability can be from this table. While the have to sum probabilities up to 1 over the values are not so restricted.Also notice that the U, possibility that 3 will in ride the car is while the 1, possibility passengers probability is quite does not imply a high small, that is, 0.2. Thus, a high possibility Some observed
nor does a
probability,
its
but
probability,
imply a low degree of an of event tends to lessen
of probability
degree
the possibility lessening the converse is not true.
However,
possibility.
low
Furthermore, if
bound to be improbable.This heuristic and probabilities is called the possibilities it is
impossible, between
an
As another example of the difference 8.2.4. Example and possibility, consider again the statement\"Tom probability with the translation having the form Tom
u
is old
Hence
<100}.
#(Age(Tom))
u
nA{x){u)
To associate
Let us
20
25
30
35
40
50
60
0
.2
.3
.5
.8
.9
1
1
a probability distribution with \"old\"
adopt the definition
a
into
that
assume \"old.\"Then,the probabilities
Table
u ProbA{x)(u)
with OLD.
Associated
Distribution
Possibility
concept
8-4.
old\"
defined on U = {u: is subjectively in Table 8-3. values have maY sample given
10
translate the fuzzy concept.
is
OLD
set
UAiX)(u)
Table 8-3.
between
= OLD.
\342\200\224
assume that the fuzzy
Let us
is
principle.
possibility/probability consistency
0<
event
relationship
Probability
the
Distribution
\"hard\"
(nonfuzzy
any age as values
Associated
necessary to
it is
A (X),
or nonelastic)
over or equal to 60 is shown in Table 8-4. with
OLD.
40
50
60
70
80
90
0
0
.2
.2
.2
.2
100 .2
720
Chapter
and
8: Representation
tables demonstrate
These
of
application
SET
FUZZY
OF
APPLICATION
intrinsic
is
that
some differencesbetween the concepts and probability, where it appears that the in natural languages is possibilistic in
and
possibility
imprecision nature.
8.3
of imprecision
Manipulation
SYSTEMS
TO EXPERT
THEORY
8.3.1 Soft Expert
Systems\342\200\224Introduction
The
is on,
blitz
media
intelligence
and hype, is comingfrom
all
Artificial
sides.
of Knowledge-Based
form
the
in
(AI)\342\200\224especially
Expert
systems (ES) are the item in today's high-tech boom. A new hottest glamour programming has been created, based upon\"productionrules\"and technology The result is a new class of enormously powerful \"knowledgerepresentation.\" (HOLs) implemented through \"inferenceengines\" languages high-order form the heart of \"knowledge engineering tools.\" which These new HOLs make it easier to create, debug, and maintain a practical
now
Systems\342\200\224is
complexprograms
the
through
statements,
of English-like
use
Expert
and expert
of explicit
suppression
syntax, also
(sometimes
Systems
reality,
and other called
control
notational devices. Consultant
Knowledge-Based
of data, inferences, Systems) are structuredrepresentations experience, draw and rules that are implicit in the human Expert systems expert. conclusions from a store of task-specific principally through knowledge, logical or plausible inference, not by calculation. The objectiveof an expert system is to help the user chooseamong a a specific within set of options, actions, conclusions,or decisions, limited on the basis of information that is likely to be qualitative rather context,
than qpantitative.
The creationof
an
restofthe The
system
everyday
into usage
system
expert
putting specificdomain support this task by explicitly
primarily
knowledge
what of an
into
separating
is commonly
expert system
revolves around
the task of systems from the
the system. Expert the domain knowledge
called the
knowledgebase.
requires accessby
the
end
user
a software system called by knowledge base. Thisis accomplished the inference engine. It interactswith the user through a user-interface in Figure 8-5. subsystem as shown an autonomous Each production rule in an expert system implements of modified and chunk of expertise that can be developed independently the other rules. When thrown together and fed to the inferenceengine,
to the
Section
Application of Fuzzy
8.3
set of the
behaves
rules
sum
of its
reliable.
by
For
this
system
reason, the
system is
of the
much
expertise, expert
typical
an expert
effects that
yielding
synergistically,
to Expert
Theory
Systems
721
are \"greater than
parts.\"
Reflecting human
baseof a
Set
information in the knowledge incomplete, or not totally
is imprecise,
answer to a question or the advice
usually qualified
a \"certainty
with
rendered
factor\" (CF),
which gives the user an indication of the degree of confidence that the at the system has in its conclusion.To arrive factor, existing certainty of infectious blood expert systems suchas MYCIN\342\200\224medical diagnosis diseases (Stanford University), PROSPECTOR\342\200\224location of mineral
I
Domain
]
f
1
Expert
\\
1
1r
1
Knowledge
V
Engineer
J) i
i
Domain
i
j
Inference
Knowledge
Engine
Base
h*
X User
(
Figure
8-5.
Diagram
of Expert
)
System.
722
Chapter8: Representation
and
Manipulation
of Imprecision
Research Institute), and others employ what are methods. However, since much of the in the base of a typical expertderives from the uncertainty knowledge and incompleteness of data rather than fuzziness from its randomness, the computed values of the certainty factor are frequently lacking in deposits
(Stanford
essentially
probability-based
reliability. By
inferential and randomness
a single
providing
incompleteness,
system for dealingwith
of information
the
fuzziness,
the
base, knowledge of certainty computation in
fuzzy logic furnishes a systematic basis for the factors in the form of fuzzy numbers. The numbers may be expressedas or for example, \"likely/' \"very quantifiers, fuzzy linguisticprobabilities \"almost \"most,\" \"almost all,\" \"frequently.\" In this certain,\" unlikely,\" perspective,fuzzy set theory is an effective tool in the developmentof a \"soft\" expert system (SES). A number of SESs have been implemented, especiallyin the context of medical decision support systems. Indeed, the design of expertsystems offuzzy logic well prove to be one of the most important applications may in knowledge and information technology.Although engineering fuzziness is usually viewed as undesirable, the elasticity of fuzzy sets gives avoid them a number of advantages over conventionalsets. First,they of conventional mathematical reasoningand computer the rigidity between sets simplify the task of translating Second, fuzzy programming. of human reasoning, which is inherently elastic,and the rigid operation humans reasoning, digital computers. In particular,in common-sense to describe numbers how systems behave. tend to use words rather than to use the type of human Finally, fuzzy sets allow computers knowledge in the called common sense. Common-sense knowledgeexists mainly that are usually, but not true. Such a form of statements always, A disposition a disposition. contains an implicit statement canbetermed and so on. such as \"most,\" \"almost always,\"\"usually,\" quantifier, fuzzy In fuzzy logic, fuzzy quantifiers are treated as fuzzy numbers that in a the absolute or relative count of elements represent, imprecisely, As are J3s\" means that the fuzzy set. Thus the proposition\"Most
proportion of these elementsis represented \"most\" (see Figure 8-6).
Oncethe
fuzzy
logic
quantifiers
fuzzy
can
be
employed
are
made
in order
by
explicit,
to
arrive
the
fuzzy
quantifier
various syllogisms in at
a
conclusion.
For
and students are undergraduates\" example, from the statements,\"Most deduce that \"most2 one could \"Most undergraduates are young,\" of the students are In this case, \"most2\" the product represents young.\" fuzzy quantifier \"most\"with itself. As should be expected, the quantifier in \"most\" in the \"most2\" is less specific than the quantifier conclusion
Section
8.3
of Fuzzy
Application
Set Theory to
723
Systems
Expert
m 1
Mosr (5 \302\243 (L)
Most
s
\342\226\240^Prr\302\273r\\r\302\273rtir\302\273n
0
be represented such as \"most\" may as a fuzzy that defines the degree to which any given proportion the definition of \"most.\" matches The fuzzy quantifier \"most\" acts by the degree to which a proportion fits into \"most\" and then finding finding the degree to which that fits into \"most.\" Thus, the value of degree \"most\" for a given will be equal to the value of \"most\" for the proportion
A
quantifier
fuzzy
number\342\200\224a
set
fuzzy
root of that
square
proportion.
Figure
8-6.
The
fuzzy
\"most.\"
quantifier
Most kinds of common-sense can be processed knowledge in a similar fashion through fuzzy reasoning. A key problem in the application of fuzzy set theory to SESs is devising effective methods of reasoning with chains of fuzzy For syllogisms. to derive conclusions from common-sense example, a knowledge, must be able to deduce from the information computer that most students are undergraduates and most undergraduates areyoung, the conclusion that \"most2\" students are young. If we could take advantage of the tolerance for imprecision and devise solve such problems, we programs that could quickly, if approximately, the premises.
could perhaps achieve algorithms that approachthe easeand in their everyday communication. humans
In the
existing
of these
shortcoming
grips with
expert
of predicate
combination the
pervasive
systems,
is dealt
uncertainty
logic and probability-based
methods is that fuzziness
they
with
methods. are
not
of information
capable
in the
of
speed
a
through
A serious
of coming
to
knowledgebase,
724
Chapter
8: Representation
and
of Imprecision
Manipulation
ad hoc in nature. and, as a result, are mostly the management of uncertainty is basedon the
the logic management
of
framework
subsumes
logic which is
in uncertainty for dealing
both
conceptual
with
logic and
different
fuzzy reasoning. to the
theory
of uncertainty
types
logic, which is
it provides a systematic In this way fuzzy
probability
to
approach
of fuzzy
importance
particular
expert systems is that with fuzzy quantifiers.
predicate
possible to deal
of
use
equivalently,
or,
approximate
underlying
of fuzzy
feature
alternative
An
and within
logic
makes a
A
it
single
framework.
As a simple illustrationof this duodenal ulcer(CF = 0.8),\"where
\"Jim has factor of 0.8. certainty \"has duodenal ulcer\" is a fuzzy so that Jim have it Since to predicate, may of the factor a degree,the meaning becomes More certainty ambiguous. CF = 0.8 mean (a) that Jim has duodenalulcerto the does specifically, event \"Jim has 0.8; or (b) that the probability of the fuzzy degree duodenal ulcer\" is 0.8?Note that in orderto makethe latter it is necessary to be able to define the probability of a interpretation meaningful, in in event. This can done be but not classical fuzzy fuzzy logic, probability theory. of certainty in nonfuzzy ES is carriedout The computation factors two or more rules are combinedthrough conjunction, when disjunction, In the case of chaining,in particular,the standard or chaining. inference of its validity and must be replaced rule\342\200\224modus ponens\342\200\224loses much by more rule of inference. Furthermore,the the compositional general of implication, which forms the basis for both forward and transitivity is a brittle which backward chaining in most expert systems, property must be applied with great caution. for However, fuzzy logic provides a natural conceptual framework and from inference bases which are representation knowledge knowledge or not totally reliable. Generally, use of fuzzy the incomplete, imprecise, the of a nonlinear reduces inferenceto that of problem solving logic to and leads conclusions w hose is a cumulation of uncertainty program the uncertaintiesin the premises from which the conclusions are derived. as well as the certainty factor, are As a consequence,the conclusions, which sets are characterized fuzzy by their possibilitydistributions.
8.3.2
Fuzzy
Relational
Knowledge
point,
CF
consider
of 0.8
the
fact
is a
Base
or vague Much of human reasoningdealswith imprecise, incomplete, information. Therefore, there is a need for information that systems in order allow representation and manipulationof imprecise information to model human reasoning. The Fuzzy Relational Base (FRKB) model, based on the Knowledge researchin the fields of relational data bases and theoriesof fuzzy sets
Section
Application of
8.3
and possibility,
is
of
and
individualization
for
725
the
addresses
following:
of impreciseinformation.
1. Representation Derivation
Systems
processing.
The FRKB modeldesign
2.
to Expert
Theory
the need
to satisfy
designed
information
imprecise
Set
Fuzzy
3. Linguisticapproximations of
4. Development of
of acceptance.
measures
possibility/certainty
terms
fuzzy
relational
fuzzy
in the operators
query language. (IS,AS... AS,
GREATER,...).
5. Processingof queries 6. Null value handling
with
using
connectors and truth quantifiers. the concept of the possibilistic expected
fuzzy
value.
fuzzy term
of the
Modification
7.
definitions to suit the
individual
user.
base, in the
a knowledge
Such
thereof, is the basicunit A
relational
fuzzy
manipulated by
The
1.
organization
Value
3.
of
form
base is
a collectionof
be characterizedby
base
knowledge
or a modified version system (SES).
FRKB
an
\"soft\" expert
(retrieval) algorithms of the FRKB can be
recognition
2. Explanatory
the
knowledge
which may
relations
of
tables
fuzzy,
or functions
time-varying
and
rules. divided into three parts: or translation
(VKB),
knowledge base (EKB),and rules.
Translation
is usedto storeactualdata values, whereas the EKB consists of a collectionof relationsor functions (similarity, proximity, general fuzzy set that \"explain\" how to compute the relations, and fuzzy definitions) of a given data value with the user's query. This degreeof compliance part of the knowledge base definition can be usedto reflectthe subjective
The VKB
profile
knowledge
Data Types
of a
user.
The domains
in
the
FRKB
can
be of
the
following
types:
Discrete 2. Discrete 1.
3.
scalar set (e.g., COLOR= green,yellow, number sets, finite or infinite (limited
computer word sizeand precision). The
interval
unit
The attribute
1.
Single
scalars
[0,1].
values are: or numbers.
blue).
by
the
maximum
726
Chapter 8: Representation 2.
3. 4.
A
and
possibilistic
A
real
or numbers. of scalar or numeric domainvalues. the unit interval [0,1] (membershipor
of scalars
(list)
sequence
A
of Imprecision
Manipulation
distribution
from
number
function
distribution possibility
value).
5. Null value.
In general, if A,attribute value can
is an be a
imprecise possibilistic
attribute with a domain Di9 then an distribution specified on D,, denoted
bynA.
operators on
(i)
In
used in translationof
fuzzy
relax the dependence of relational algebra relational operators (=,^,<,>,<,>). These include:
they
essence, the
EKB are
in the
defined
Relations propositions.
regular
Let Dt
relation:
Similarity
Then
s(xyy)
\302\243=[0,1] is
be a scalar domain,xty relation
a similarity
G
with
Dx. the
following
properties:
s(x,x) =
Reflexivity: ^-transitivity: transitivity.
= s(yyx)
s(x,y)
Symmetry:
If jc, y,
1
where 0 is most commonly U, then
specified
as max-min
z G
s(x,z) > max {min(s(x,y), s(y,z))}. (ii)
Let D, be a numericaldomainand xyyyz G Diy a is G[0,1] proximity relationthat is reflexive, symmetric p(x,y) with transitivity of the form Proximity
Relation:
>: max
p(x,y)
{p(x,y)
*
p(yfz)l
y&Di
The
=
p(x,y)
This form
points. A
general
link may
fuzzy
equal
assigns
nonreflexive:g(:c,Jt)
degrees
(link) can
relation
have any of
the proximityrelationis e^*'y\\ where 0 > 0.
form of
used
generally
the
following
of proximity
be definedin eitherVKB
properties:
=0
e-reflexive:g(x,x) = ey reflexive: g(x,x) = 1
e
>
to equally distant
0
nonsymmetric:3 x,y such that g(:t,;y) ^ g(yyx) ^-transitive: generalizedmax-mintransitivity.
or
EKB.
A
Section
of
Application
8.3
A
be used
can
link
and
reflexive
friendship
More
Set
Theory
to Expert
727
Systems
to express relationships that are not necessarily but may obey a specific transitivity, Typical relations that can be represented by
symmetrical,
improvement.
transitivity link are
Fuzzy
complex
or influence among the membersofa group. in the FRKB system are evaluated queries
by
or a
applying
of:
rules
1. Fuzzy modifiers.
2.
relational
Fuzzy
operators.
3. Composition.
4. Qualified propositions.
The
Relational
Base
Knowledge
combined
structure
with
the
theory
of
and possibilityprovidesthe solidtheoretical foundation. The permits \"natural-language-like\" query language expressions that are understood easily by users and can be further developedto incorporate inferences or production rules. The Value KnowledgeBaseappears fuzzy tobean adequate schema for imprecise data representation. The Base provides Explanation Knowledge the means of individualization, and may in used to extend the query vocabulary by defining new fuzzy sets be terms of previously defined sets. This feature can become very useful in the that compounding knowledge, and it can be projected underlying can be utilized in knowledgeextrapolation, structure or learning. Hence, it can be concluded that the FRKBsystem can serve as the data base in fuzzy sets
of such the implementation 8.3.3
an
for
section we present an exampleof
In this Appelbaum
as
defined
of either
definition function
purpose
used in an
ARIES
has facilities
for
the
proposition/operation-specifictruth been implemented primarily as a general
default or
ARIES
formulas.
Further,
etc.).
preference,
desirability,
a general
SES and developed and provides mechanismsfor the and manipulation of multiple degreesof truth of by several criteria of truth, belief, or likelihood(or engine (ARIES) Ruspini [46]. ARIES
inference
representation propositions,
systems.
SES
approximatereasoning by
expert
of an ApproximateReasoningInference
An Example Engine
\"soft\"
has
purposeapproximate
of being easily capable subsystem or other information of variety expert systems on automated deductive reasoning to a substantial inference
wide
incorporated
into
a
systems
that
rely
degree.
Degreesof
in several ways, are be interpreted intervals of the classical or as either fuzzy typically represented on the interval of constraints the real line. T hese intervals represent [0,1] truth,
which
in ARIES
may
728
Chapter
and Manipulation of
8: Representation
Imprecision
possible truth values of propositions(facts) or conditionalpropositions inference Truth values are combined using userrules). (approximate formulas truth-functional functional formulas defined (i.e., quasi-truth on truth constraints that propagate interval values). Such formulas can for eacri fact or rule) for be defined the (and independently logical and of operations implication. negation, conjunction, disjunction, In the contextof ARIES deductive inference consists of the processes, determinationof optimal or near-optimal hyperedge that link vertices evidence representing available in AND-OR the propositions rule system (ruledomain). The
understood rule domains.
representations of
hypothetical
representing describes
that
hypergraph
a propositional
as an approximatereasoninginferenceengine
of ARIES
operation
is better
those
with
when described in
terms
of
hypergraph
also called AND/ORgraphs are generalizations of the are used to b etween relationships represent graphs propositions in a rule domain. In AND/OR graphs, suchastheoneillustratedin vertex represents a different proposition in the rule 8-7, each Figure domain described. Directed to edges in the graph (usually drawn being in as arrows a their direction indicate or, 8-7, Figure by assuming using bottom to top direction of edges) are usedto connectpropositions that Hypergraphs,
that
standard
with the antecedents consequent corresponding of the logical connectives joining propositionsin the at the end of the is also indicated by means of symbolsdrawn An arc drawn across vertex. edges incidenton the consequent
in rule
appear proposition. The
antecedent
directed
nature
severaledges the logical such the
an arc logical
the
that
indicates
connective
Figure 8-7) are
also
at
the
of
in the
arrive
approximate
associated
estimates
real
with values
world) to
reasoning, vertices
are joined by absence
of
assigned
leading
(not shown in edges to indicate, by users (on the basis of values
and
the propositionsand
can rule domain. These values of the a posteriori truth value
In the hypergraph,eachpath about combinationof knowledge
rules
rule, while
OR.
used for
respectively,the a prioritruth relations
of the
antecedent
indicates that the corresponding propositionsarejoinedby
In hypergraphs
observations
propositions
corresponding
in the
AND
connective
of
a
inferential
by ARIES goal proposition.
be combined
to
goal represents a possible of propositions and inference
to the
the truth
a certain amount of support to the truth of the goal all such discussed below,to its logicalnegation. Among certain optimal possible paths, ARIES usually seekstwo paths having properties which are further discussedbelow. The examined paths by ARIES in this optimization processare not classical as conventionally defined in graph theory. Rather,they paths are as several edges (rather than one) incidentat the same hyperpaths, that
proposition
provides
or, as
Section
8.3
of Fuzzy
Application
Figure
Set Theory to
8-7. Example of AND/OR
Expert
Systems
729
graph.
of the subgraph(hyperedge)that must be considered truth value. As discussed below, at any ANDcompute VERTEX arcs correspond to (i.e., a vertex where some of the incident in AND the of that are the connective antecedent propositions joinedby the all of those edges (and their predecessors) of the are rule), part that must be evaluated.Depending on the numerical hyperedge formalism of evidence) used to propagate truth values along the (calculus at an OR-VERTEX some or all of the edgescorresponding hypergraph, to propositions that are connected by the logical connectiveOR (and in the their inclusion also require hyperedge, predecessors) might in many formalisms only one of them requiressuch inclusion. although is a backward-chaining ARIES inference engine, that is, hyperedges and evaluated backward are searched leadingto the goal proposition starting from the known final vertex (i.e., the goal) and establishing at each predecessor step of the search. subgoals The numericalvalues that combines ARIES during its search and vertex
to
may
be part the
desired
the optimizationprocessrepresent bodies of evidence for the truth
correct statements
about
the
of support provided by certain degree in the rule domain as of propositions of a real world system. A priori state
730
Chapter
8: Representation
and
of Imprecision
Manipulation
users for facts and propositions are an support provided by externalobservations Rules in the knowledge base, on the other hand, of the world. real values that may be attained by factual the truth constrain statements on of related statements. Information the basis of the truth values about system behavior providedby rules can therefore be used by systems such as ARIES determine the support provided by the a prioritruth to further values of the propositional of the system, as a whole,to the truth goal values provided by
support
indication
of the
extent
the
of
proposition.
The actual
interpretation of the word support and the rationale for the formulas to combine evidencedependson the particular and needs of the approximate reasoning application being
of certain characteristics considered. use
is an exampleof
Fuzzy logic \"soft\"
an
excellent
of evidential truth as ARIES falls system
this
of manipulation
type
expert
rules, and a set of combination fact is usually given as
list of for
a
for the
formalism
quantification. The input to sucha into three categories: a list of facts, a For example, the format functions.
(((PROPOSITION)(TRUTH-VAL))SUPPORT-PLAUSIBILITY). in the base rule domain (i.e., a is any statement The PROPOSITION propositionalstatementor a clause in the antecedent or consequentof a term is either an interval which The TRUTH-VAL rule). [b,B] represents the a priori evidential lower and upper bounds for the truth values of the proposition or a call to a function, with that optional arguments, generates those bounds. For example:
((Jimis
assign^ the interval of people much
((Jimis on the other
than
older
much
30) (0.6,0.8))
to the
[0.6,0.8]
degree of
membership
than
older
much
the
computes
hand,
30) (age-factor
as a function which has the
interval
the results producedby
the degree
plausibility
of
body
and
support
estimate
bound
lower
(support)
confirm
domain
measures
the
extent
(((Jim is
term, and
upper
bounds
provided
ARIES
of an
of
Jim's
same
age.
The
format
as
(if available).
interval indicating of the
by consideration
has been computed,is therefore values for PROPOSITION. Its in measures the extent by which the propositions the truth of PROPOSITION, while its upperbound it. For example: by which the same evidencerefutes
This
evidence.
thea posteriori the
set
to the
Jim
Jim-age))
SUPPORT-PLAUSIBILITY is bound to TRUTH-VAL, These results are the lower of
of
olderthan 30.The proposition
interval, of
possible
if any
truth
much olderthan 30)(age-factor Jim-age))
(0.5,0.9))
Section
Application of
8.3
asserts that the evidence that
possible
may range from
Set
Theory
to Expert
731
Systems
in the base domain (facts and rules) indicates for the proposition \" Jim is much older than 30\" value of 0.5 to a highest (nearcertainty) value of
values
truth
Fuzzy
a lowest
0.9.
The INFERENCE-FUNCTION requires in the antecedent of the clauses representing value (produced by the conjunctive formula
as input the AND-VERTEX a rule
and the
interval
truth
of
the truth value of the conclusion. by the user of ARIES is usedto supplied controlthe optimalpath search process. When more than one rule has as conclusion, a strategy must be chosento the samePROPOSITION antecedents will determinewhich be expanded. The input to these is always an OR-VERTEX functions specification, while their outputs of their CONJUNCTION-FUNCTION)
are
AND-VERTICES.
of predecessor
sets
two
returning
conjunction
of input functions
final set
The
is an interval hypergraphpaths) lower bound ARIES output
the
The (plausibility).
for
and where
hypothesis,
goal
(6,B),
also produces
program
b equals where the greatest (among the possible truth value (support) of
B equalsthe leastupper bound the solution (i.e.,optimizing)
for
graphs
the (WHY) explanation graphs can be retrievedusing of ARIES. such as ARIES also capability Systems provide graphics capabilities that allow displayof portionsofthe hypergraph representing - the rule domain, or of specific nodes and their predecessors/successors of a PROPOSITION On identifier along one of the optimal input paths, are also as a of PROPOSITION rules capable displaying they having t heir and their truth conclusion, antecedents, values., While many applications of fuzzy set theory are still in an earlystageof it seems will development, probable that in the next decadefuzzy logic
B. These
b and
applied in many areas
become
routinely communication involved.
This
flexible
thinking
with
may
or
people
help
to bridge
of humans
of
artificial
intelligence
where
thought processesis and the gap between the analogic
imitation
of their
and the rigid framework
of
present
computers.
Exercises
for
8
Chapter
A and B is the smallestfuzzy set containing sets both A and J3,\" which is also equivalent to \"If D is any fuzzy set which contains both A and J5, then it also contains the union of A and J3.\" Prove the above statement.
1. \"Theunion of fuzzy
2.
that
Prove
equivalent
sets
A
and
definition
the
to the B is
following
of intersection definition:
the largest fuzzy
\"The
of
two
fuzzy
set which is containedin
sets
is
of fuzzy
intersection both
A and
732
Chapter 8: Representation
and
B\" which
contained
is also equivalent to
intersectionof
A and
any fuzzy
(a)
A
(b)
A H
and J3.\"
A
both
in
3. For
of Imprecision
Manipulation
D
is
it
is
fuzzy set
any
also
contained
which is in the
that
A prove
set
\"If
then
By
= A cj>
U
0 =0
(c)AU(/=(/ (7 = A =
H
(d)
A
(e)
A U
(f) AH
A
0.
that the
4. Show
(a) 0-A - B
A
(b)
=
A
U
=0 =
A
B
H
(c) A - (A - B) - A n B (d) C n D = A - [(A - C) U (A (e) C U D = A - [(A - C] n (A
5. The
symmetrical differenceof
membership function Uaab =
to
changed
do the 6. Let
-
IuA
B be
7. Definition:
following are functions.
the set
+ (1
^[Axj The
be
-
Prove that
and B with
of
operation
^ min
A)x2]
fu(x) = \\/a [u(x -
a)
A B
A
(xx),
[wA
A
defined
= (A
U B) A
\342\200\224
- a
- a)]
TheNormal
Distribution
(2^eXP
above,
(J3
Pi A).
aA(x2)J.
continuous
well-known
u(x
~(x-u)\\ 2a2
by
sets?
fuzzy
set of n-tuples (yl9 y2,..., yn) where y, X is convex if xly x2 E X, V X E [0,1],
some of the
1
B
complement operationsare
The Uniform Distribution
=
and
A
density
Wx)
set whose
is a fuzzy
to those
related
is
A J3,
A
(problem4) hold for
fuzzy sets.
fuzzy
sets A
fuzzy
difference
symmetrical
Let UR
real number.A
D)] D)].
all the relative
above relations and
A
uAAB
uB\\. If
the
two
-
uB, denoted by
uA and
membershipfunctions
sets.
for ordinary
hold
relations
following
co )\342\226\240
< X < oo
probability
is a
Section
8.3
of
Application
Set
Fuzzy
Theory
to Expert
Systems
733
The GammaDistribution
-jlTT^exp(-^),0<,
-
fyto
0 elsewhere
wherea > 77ie Beta
1
0.
0 >
and
Distribution
{(a +
ff + 1)! \342\200\224
a!
a and /? must
The
\342\200\236 - *)*, 0
both be greaterthan
-1.
Density Function
Cauchy
fcto Show that any
7T
1 +
fuzzy
set
C(2(X
\342\200\224 oo <
-
X <
by one
of these functions
SelectedAnswers for Chapter8 uAAB
=
\\uA
-
uB\\
=
\\max(uA,UB)
oo
Uf
described
convex.
6.
<1
elsewhere
[0
where
xa(l
!
p
~ min(wA,wB)
|.
is
Bibliography
1.
Aho,
V., J.
A.
Beckenbach, John
and J. D. Ullman,
and
Design
Analysis
Algorithms, Reading,Mass.,Addison-Wesley, E., Applied Combinatorial Mathematics, New and Sons, 1964.
of Computer 2.
E. Hopcroft,
Wiley
1974. York,
L. Lesniak-Foster, 3. Behzad,M.,G.Chartrand, and Graphs and Boston: and 1979. Prindle,Weber Schmidt, Digraphs, 4. Bondy, J. A. and U.S.R. Murty, Graph Theory with Applications, New York:North-Holland, 1976. 5. Berman, K. D. Fryer, Introduction to Combinatorics,New G. and York:
Academic
1972.
Press,
6. Brualdi, R. A., IntroductoryCombinatorics, New and R. C, Mathematical Induction Recursive Mat. American Monthly, 70,128-135,1963.
7. Buck,
8. Capobianco, M.,
J.
and
in Graph Counterexample
9.
North-
York:
1977.
Holland,
Theory, G.,
Chartrand,
and
Weber
Graphs
D. I. A., York:John Wiley
C. Mollezzo, Examples and New York, North-Holland, 1978. as Mathematical Models, Boston,
Basic
Sons,
1978.
M., Elementary CombinatorialAnalysis, Breach,
New
York,
1969.
S., Algorithmic Combinatorics, New
13. Even,
York,
1964.
Appleton-Century-Crofts, Gordon and
Theory, New
of Combinatorial
Techniques
and
F., Introduction to MathematicalLogic,New
11. Dinkines, 12. Eisen,
Prindle,
1977.
Schmidt,
10. Cohen,
Definitions,
York,
Macmillan,
1973.
14. Gill, A., Cliffs,
Englewood Applied Algebrafor the ComputerSciences.
New
Jersey,
Prentice-Hall,
1976,
15. Hayden, S. and J. Kennison, Zermelo-Fraenkel Charles Merrill,1968. Columbus, Ohio,
16.
Henkin,
L.,
On Mathematical
Induction,
Set
Theory,
American Math.
67,323-337,1960. Monthly,
17.
to Automata Introduction and J. D. Ullman, Theory, Languages, and Computation,ReadingsMass.,Addison-
Hopcroft, Wesley,
J. E.
1979.
735
E. and S. Sahni,
18. Horowitz,
Fundamentals
Data
of
Structures,
Woodland Hills, Calif.,ComputerScience Press,1976. E. and S. Sahni, Fundamentals Horowitz, of Computer Woodland Science Press, 1978. Hills, Calif., Computer Algorithms,
19.
20. Honsberger, R.,
Mathematical
John
21. Kenelly,
Allyn
and Bacon,
Structures,
New York,
Boston,
Logic,
Informal
W.,
American
The
Gems,
1973.
of America,
Association Mathematical
1967.
22. 23.
R. Press,
1974.
D. E.,
The Art
Knuth, Fundamental
24.
Discrete
Korfhage, Academic
R.,
of
Computational
ed. 1973). F. Lessman, 1961.
and
H.
Levy,
Macmillan,
Finite Difference Equations, New
C. L., Elements of
25. Liu,
Discrete
1968.
McGraw-Hill,
York,
27. Mano, M. M., ComputerSystem Architecture, New Jersey, Prentice-Hall, 1976. Their and 28. Ore, Graphs Uses, New York,
Random House,
1963.
S. and
E.
Page,
Combinatorics, 30. Prather, R.,
L. B. Wilson, An Introduction New York, CambridgeUniversity Houghton
F. P,
Reading,
Structures,
32. Polya,
to Computational 1979. Press,
Discrete Mathematical Structures for Computer
Science,Boston, Preparata,
Cliffs,
Englewood
O.,
G., How
1976.
Mifflin,
and P. T. Yeh,
Addison-Wesley, Solve It, Garden
Mass., to
to Discrete
Introduction
1973.
City, N.Y.,
Doubleday and
1957.
Company,
33.
York:
New
Mathematics,
C. L., Introductionto CombinatorialMathematics, New
26. Liu,
31.
York,
1977.
McGraw-Hill,
29.
1968 (2nd
Addison-Wesley,
Mass.,
Reading,
Algorithms,
Vol. I:
Programming,
Computer
G., Mathematics and Plausible Reasoning,Vol. I. Vol. II., Patterns of Plausible in Mathematics, Analogy Princeton New Press, Jersey, University Inference,Princeton, Polya, Induction
and
1954.
34. Polya, Sons,
G.,
35. Reingold, Algorithms,
Mathematical
New York,
Discovery,
John
Wiley
and
1962.
E., J. Nievergelt,and
Englewood
Cliffs,
N.
New Jersey,
Deo,
Combinatorial
1977.
Prentice-Hall,
36. Riordan,J., Combinatorial Identities,New
York,
John
Wiley
and
Sons, 1968.
37. Stanat, D. F. and D. F. McAllister, Computer Science,EnglewoodCliffs, 1977.
Discrete New
Jersey,
Mathematics Prentice-Hall,
in
737
Bibliography
38.
T. A.,
Standish,
Data Structure Techniques,Reading,
Mass.,
1980.
Addison-Wesly,
P.
J. T. and R.
39. Tremblay,
Mathematical
Discrete
Manohar,
to Computer Science,New
with Applications
Structures
York,
1975.
McGraw-Hill,
Applied Combinatorics,New
40. Tucker, A.,
John
York,
and
Wiley
Sons, 1980.
41. Tutte, W. T., Non-Hamiltonian Planar Maps, in Graph Theory and Computing,editedby R. Read, Academic Press, 1972. 42. Welsh, D. J. A. and M. B. Powell, An upper bound to the chromaticnumber of a graph and its applications to time tabling W.
Hafner
A.,
D. R. and
Four-Color
Problem,
L. W.
10, 85-86,1967. and Chance,
Choice
5th ed. (1901),New
York,
1965.
Press,
44. Woodall, by
Journal
Comput.
problems,
43. Whitworth,
J.
R.
Wilson,
in Selected
Beinke and
R. J.
The Appel-Haken Proof of the edited Topics in Graph Theory,
Wilson,
New
York,
Academic
Press,
1978.
45. Youse, B. K., Mathematical Jersey, Prentice-Hall, 1964.
46.
Induction,
E. H. Ruspini, and Reasoning Inference
L.
Appelbaum,
Englewood ARIES\342\200\224An
Cliffs, Example
New of
an
Engine, in Approximate edited by M. M. Gupta, A. Kandel, in Expert Reasoning Systems, and J. B. Kiszka,North Holland,1985. W. Bandler, L. R. Jr. and D. R. Fulkerson, Flows 47. in Networks, Princeton, Ford, N.J., Princeton University Press, 1962. to Difference Introduction 48. Goldberg, S., Equations, New York, Approximate
John
Wiley
49. Zadeh,
1965. 50. Zadeh,
and
1958.
Sons,
L. A., Fuzzy Sets, Information and Control,8, 338-353, L.
A.,
Uncertainty
The Role in Expert
199-227,1983.
51.
M.
Zemankova-Leech,
Bases\342\200\224A
1984.
Key
to Expert
of Fuzzy Logic in the Management of Systems, Fuzzy Sets and Systems, 11, A. Kandel, Fuzzy Relational Data Rheinland, Systems, Koln, Verlag Tiiv
and
Index
table, 38-39
truth
Abbreviated
Absolute complement of a set, 4 582-583
laws,
Absorption
Abstract set theory, see also Sets
language,
programming
428 Addend
251
614-615
49 Addition rule of inference, Adjacency matrix, 396-402, 450 536-537 matrix, multiplicity
Warshall's algorithm, 407-412,
539
76
Adjacent
primes,
Adjacent
vertices,
Adjacent to edge, 333 intelligence
415-418
297,419,423
of, 407
complexity
64
division,
greedy, 486-487 for vertex 406
greedy, inefficient,
518
sort,
interchange
path,
676
coloring, 567
418-423
minimal
282-284, 425-426
spanning
tree, 494
correctness
polynomial-bounded, 406 postorder
traversal
518
preorder
traversal
515,518
Prim's,494 run
times
Shell sort,
of, 347 419
(LRN), (NLR),
514,
620
series,
in an
systems;
\"Soft\"
539-
sequences,
on a set,
operation relations
16
matrix, 396-402 339,
340
asymmetry, 339, 340 396-402
operations on, 398-400 382-383
inner product,
397-398
381-382
inverse,
339, 340
reflexivity,
339,
340
symmetry,
339,
340
set, 10
intelligence (AI), 720, Expert
Binary
irreflexivity,
110,115
expert systems
596
Bruijn
fuzzy, 713
Permutations
seealso
of sorting
composition,
Arrangement, see Combinations;
731
de 541
Binary
balanced
coded decimal (BCD)
Boolean
Boolean functions, of; Switching
Arithmetic
404-
347
Boolean matrix,
619-621
micro-operations
37
efficiency,
antisymmetry,
Arithmetic
search
Biconditional proposition, 344-346 Big O notation,
of,
multiplexers, 621-626
Artificial
733
adjacency of,
675
BFS,seeBreadth-first
Binary
615-621
ALU, 619-621
515,
labeling,
representation,
mechanisms
of, 404
Backward
Binary
technique, 627
table
expert
Basis of induction, 103, 111 coded decimal BCD, see Binary 29-30 Begging the question, Beta probability density function,
engine
half-adder, 614-615
seealso
edge, 666
algorithms,
621
operations,
Backward
performance
Arithmetic logic unit (ALU) arithmetic operations, table 614,
in
performance of height binary trees, 511
377-378
. full-adder,
chaining 724
407
19-20
carry look-ahead
26-27
and algorithm
minimization
nondeterministic, 419 partial
K., 569
micro-operations,
674-675
merge sort,
35
implication,
see Approximate
logic
Kruskal's, 486-489
labeling,
for
of a binary relation, 339, 340 of a fuzzy binary relation, 713 11 of a set relation,
inference reasoning
traversal (LNR), 515,
inorder
1973
Antisymmetry
ARIES,
Euclidean, 78, 117 flow-augmenting
systems,
729-731
k, 503-504
of order
Backward
Kempe-chain, 569-571
of, 404-407
efficiency
B-tree
Backtracking,
705
\"soft,\"
graph, 728-731
diagonal,
hashing,\" 357-358
\"double
and
\"hard\"
Argument basic elements of,
485
DFS, 482,
614
24-26
Approximate reasoning inference (ARIES), 727-731 engine
419
deterministic,
relation,
binary
Atom of a Boolean algebra, 588 values in the FRKB, Attribute 725-726
Augend bit,
Ancestor of a vertex, 482 AND Boolean operator, 398-400
Appel,
correctness of, 404
fuzzy
@-transitive 713
reasoning,
* .\"Analysis-synthesis\"
Antecedent of an
performance of, 405
bubble sort,
28
ANSI Standard Y 32.14, logic symbols, 601
BFS,482-485 search,
of,
unit
fallacy of, 28
Amphiboly,
AND-VERTEX,
mechanisms
binary
logic
fallacy
Ambiguity,
AND/OR
Boolean, see Boolean algebras see Switching switching,
asymptotic
see Arithmetic
ALU,
AND,
Algebra
Algorithms
series, 250-
of
performance 405
algorithms,
AND function, 601, 603
439
AI, see Artificial
339,340
Asymptotic
514
tree,
geometric
Alternating
full-adder, 614,615-621,
Asymmetry
539
407-412,
sets, 5 relation,
of property of a binary
Associative
Welsh-Powell, 565-566
^-balancedbinary
Assignment
set, 16
518
514-515,
Alphabet, 373
Adder
half-adder,
404
of,
sort, 428-432
Warshall's,
378,
614
bit,
termination topological
The
419
vertex labeling, 674-675
function, 326
Ackerman's
Aspects
successive minima, tree traversal,
38
Absurdity, Ada
2
of discovery, 21-22 686 Problem, on a Associative binary operation
(Contd.)
Algorithms
transitive (reflexive)closure, 339-340 transitivity,
383
see also Relations Binary
search
algorithm, 415-4] 8
739
740
Index
binary
search
Binary
trees
514
a-balanced,
tree, 512-514
search
binary
Boolean algebras
tree, 512-514
complete, 509-510
for drawing,
conventions
508
left
edge, subtree, 507 of vertex, 509
child,
level-order index parent, 507 518
traversal
preorder
515,
(LRN),
traversal
postorder
514,
(NLR),
515,518 right traversal
child,
518
edge, subtree, 507 514-515, algorithms,
Binomial, 201 197-198
189-190
as combinations,
196
summation,
diagonal
as factorials, 191 Newton's
identity, 192-194
Pascal'striangle, row
193-194
summation, 197
row square
196
summation,
secondary conditions, 194-195 191
property,
symmetry
table of, 195 Vandermonde's
identity,
see also Multinomial coefficients
theorem, 201-205
Binomial
seealsoTheMultinomial
modular law,
stroke
588-589
subalgebra,
584
graph,
see alsoDirected
457, 547-548 bipartite
graphs
Block diagrams of logic
593
form, 591,605
circuits,
612
forms,
sum-of-products
forms, 605
Veitch
606
see also Arithmetic logic unit; Switching mechanisms
601-602
398-400
Boolean subalgebra, 584 sum of sets, 5 Boolean Bound, gib, lower, lub, upper, 364 of a 268
search (BFS),482-
485
edge, 472, 541 sort algorithm, 297, 419,
423 Buck, R. C,
canonical
Canonical form, 591-
normal
592
function,
593
defined, 578
592
expressions
finite, 588
569-
Problem,
571 for vertex
greedy algorithm 567
coloring,
argument, 569-
Kempe-chain
571
for
569-571
graphs,
planar
rules for determining, 560-563 The Scheduling Problem, 558-
560
Welsh-Powell
565-
algorithm,
566
Circuits
combinatorial, see Switching mechanisms
537-539
Eulerian,
full-adder, 614,615-621 in
388, 442
graphs,
half-adder, 614-615
Circular
representative
equivalence class,
cycle,
543-551
388, 442
function
Capacity
584
normal
form, 591-
Capacity
of a
for sets, 7
of an
of a directed
of a
for, 588-593
Carry
bit,
614
equivalence,
Closedpath, Closure
Problem,
361
Code
647-648 fuzzy set, 714
Carry look-ahead technique,
350-351, 354-358 442
property, 383-384
The Coconut
633-634,
edge,
481 150-151
12
congruence,
638
cut, 647-648
Cardinality
permutations,
Class
Cantor, Georg, 1,377
Cantor'sparadox
rank of a graph,
Circular reasoning, 29-30 Circumference of a graph, 465-466
of
356
graph,633 laws,
direct sum, 585-586 disjunctive
The Four-Color
Circuit
589-591
Capacity constraint,
DeMorgan's
558
Theorem, 569-571
logic, see Logic gates
for Boolean
form
Canonical
expressions,
589-591 dagger
Problem,
mechanisms
laws, 582-583
form of expressions,
conjunctive
Number
switching, see Switching
578
axioms,
Theorem,
360
simple,
Boolean algebras atom, 588
The ChineseRemainder
Hamiltonian
110
Boole, George, 577 absorption
of,
482
Child of a vertex,
5-Color
611
Bubble
method
roots,
defined,
Boolean functions, minimization of Karnaugh maps, 607-609,610-
Bridge
Characteristic
Chromatic numbers
135
2-valued,
conditions Boundary recurrence relation,
301-302
roots,
406
for, 580-585
operators,
function of a set, 2
The Chromatic
Boolean functions
diagrams,
373-375
in IHR solutions, 310-319 multiple roots, 302-304
see
Switching mechanisms
Boolean
strings,
300-304
mechanisms,
product-of-sums
systems, 724
in expert
distinct
function,
\"smallest,\"
theorems
Character
defined,301
form, 591,612
produet-of-sums sheffer
Chaining
Characteristic
587
notation for, 579 partial order on, 580 of duality, 580 principle
Breadth-first
theorem
Bipartite
expressions,
590-592
Boolean matrices, 396-402 204-
205
The
Chain, 363
minterm
maxterm,
722, 724
factor,
Certainty
literal, 590
2-valued, 134-136
191-192
identity,
Cellsofa set, 178
as, 578
lattice
formula, 497
Cayley's
isomorphism, 585
self-dual
204
additional,
identities,
function, 733
583
law,
switching
summation,
Pascal's
idempotent laws, 580-581 involution
707
sets,
8,10,128
of strings, 373 Catenation Cauchy probability density
585
homomorphism,
conditions, 194-195
boundary column
functionally complete
of sets,
sum-of-products
coefficients
Binomial
product
of fuzzy
operations,592-593
defined,507 height balanced, 510-512 % traversal (LNR), 515, inorder
518
Cartesian
(Contd.)
free, 590
627
generation using 541 Gray, 604 Prufer,
495-497
shift
registers,
741
Index
Coefficients of generating 247-251 functions, in power series,239 of a graph, see Chromatic Coloring numbers
defined,143
177-181,
ordered partitions,
182-184
Constructive
summary of use, 182-184 unlimited
repetition,
169 unordered
88
164-
172-177
repetitions, 151-154
110
110,249,
Common ratio, Commutative
a set,
16
Commutative
of sets,
property
Complement absolute,
of a
set, 4
set,
705
of a fuzzy
of a relation,
of a subgraph,
bipartite
5
Countable
Completegraph,
Components of a graph, Composite integer, 120
472
of set relations, Compound
382-383
complexity theory,
Concentration Conclusion,
of a fuzzy
set, 706
Conditional proof, 62-63,72 35 Conditional proposition,
Congruence classofa set, 12 Congruence
modulo
Congruence modulo relation, 12 Conjecture, 23-24 Conjunction
in Boolean in
expert
of propositions, Conjunction
rule
724
34
of inference,
49
of, 693
matching
adjacency matrices, 396-402
654-655
Cycles
connected
bipartite
633
function,
component,
391-392
cut-set, 654-655
388
cycle, 388
442
defined,
332,
directed
path,
437
\"degree spectrum,\" 334
457 593
seeMultiplexers Data selector, diagrams, 540
sequences,
Directed
circuit, 388
Hamiltonian, 543-551
de Bruijn
340
graphs Boolean matrices, 396-402 capacity
de Bruijn
see
bipartite,
net, 649
function,
339,
asymmetric, 339, 340
minimal, 645-652
Dagger
500-501
graphs
antisymmetric,
S-D,647-651 Cut-set,654-655
nondirected,
693
688-689
687,
for,
maximal matching for, 687
of, 647-648 across,
695
Theorem,
Konig's
Latin rectangle, square,
701
edge cut-set,
for, 687,
689-691
Directed
Cycle graph,
algebras, 591-592 systems,
534
472
directed,
m, 354 n equivalence
bipartite graphs
completematching
Cut
edge,
551 61, 63-64
585-586
Directed
Directed forest,
flow
35, 47
proof,
Cubic graph, 439,464-465
capacity
407
A., 561
691
of a graph,
number
Cut vertex, 472 Cuts
14-15
Direct
and
49
Hall's Marriage Theorem,689-
of a graph, 523 Cube,edgegraph of, 458
713
fuzzy set, 706
of a
deficiency
529
Crossovers
274
Computational
Cross edges, 483
Crossoverpoint,
interest as a recurrence
relation,
128-132
graph,
planar
graphs
Direct sum of Boolean algebra,
Covering of edges,695 Crossing
systems, 724
of relations,
126-132
counting,
379
of relations, see Directed
Digraphs, Dilation
Dirac'sTheorem,
134
Critical
equations, see
Dirac, G.
of
one-to-one correspondence, 133sequential
ordering of strings,
373-375
Dilemma, constructive
132-133
counting,
377-
362
\"Dictionary\"
destructive,
counting,
indirect
457, 531
452-453,
relations,
sets, 367
factorials, defined, 136
509-510
proofs,
378 Diagonal edge, 548 Diameter of a graph, 465
Difference
algorithm, 404
principles
in
Recurrencerelations
406
Counterexample, 87
search
argument
Diagonal
Difference set, 732
applications, 134-136
467 Complete ^-partite graph, Complete matching, 687, 689-691 of algorithms, 407 Complexity
of fuzzy
sets,
of fuzzy
of an
226-228, 274
of a vertex, 482 49 dilemma,
Descendant
Diaphantus,
seeFunctions Correspondence, Counting,
graph,
531-532
in expert
Cook, Stephen, Correctness
455-456
Complete
Composition
fuzzy
disjunctive
binary tree,
638
707-708
379
Complete
equation,
Convex
on
operation
binary
2
Converse, 37, 41-42
Problem, 686,691
difference,
Depth-first
DFS, see Depth-first
settheory,
combination
of a proposition, 34 search (DFS), 482, 485
Denial
Deterministic algorithms, 419 of, 21-22 Development, stages
law of, 40, 41-42
.Convex
Laws, 6, 40-41,49,50, 584
Destructive
38
Conversation
see
61,86,
Derangements, 87-
edge, 494
see also Sets
mechanisms Switching Common
38
Conventional
of; Permutations
The Committee
Contingency,
Contrapositive,
see alsoInclusion-exclusion principle
of sets, 3-4
Contradiction,
repetitions,
Combinatorial circuits,
Containment Contracted
181-184
partitions,
with constrained
49
dilemma,
Constructive existence proof,
144, 146
numbers,
repetition
333, 439 Degree of a vertex, 439 Degree sequence of a graph, \"Degree spectrum\" of a directed
DeMorgan's
35 Consequent Consistent postulates, 579 Constant term in power series, 239
bipartite
693
graph,
graph,334
34-38 logical, of an implication,
Connectives,
coefficients
without
472
391-392,
binomial coefficients,see
with
Connected biparite graph, 548 Connected components of a graph, Connected vertices, 388, 472
Combinations Binomial
Deficiency of a directed
form for 591-592
normal Conjunctive Boolean expressions,
539-541
'
388
disconnecting set, 654
edges,seeEdges
endpoints, 388 invariant,
irreflexive,
of graphs
334
339, 340
742
Index
Directed
Double negation,
(Contd.)
graphs
isomorphic, 334-335
of a plane
636
632-633,
labeling,
loop-free, 333
nontrivial path,
Elements
438
339, 340,
transitive, 339-340 connected
unilaterally
adjacent
to, 333
between
vertices,
391-392 vertices, see Vertices viewed as nondirected
bridge, 472, 541 vertices,
of graphs graphs,
392
Directed
388
spanning tree, 480
cut
Directedtrees,468-470, 498-504 full,
ordered, 517
^
506
a
aspects
Disjunction
algebras, 591-592
in Boolean
in expert systems, 724 of propositions, 34 126-132 Disjunctive counting,
incident
591-592
joining
Distinct of,
representatives, 686
657,
Distinctive-shape
system
logic symbols,
possibility, 715-720 for sets, 5
laws
Distributive
relations,
Divide-and-conquer
321-322 Divisibility
285,
359-360
247-251
458
from, on, to 437 vertices,
of,
333, 439
matching, 687, 688-689 687
matching,
minimal cut, 645-652 333
535-536
multiplicities,
nondirected
388
path,
game, 543
reverse, 666
in binary 639 saturated, right,
tree, 507
slack of, 639 458 tetrahedron,
Domain
of relation on a set, in the FRKB, 725
10-11
\"Don't care\" conditions, 609 \"Double hashing\" algorithms, 358
tree, 483 unsaturated,
357-
11
of expressions,
functions,
switching mechanisms,
596
of, 28
fallacy
(Sieveof), 224-225
ES,seeExpert
systems
20
15
plane,
Euclidean prime, Euclid's
118 20
Elements,
Euclid's Lemma, 360 535
Leonhard,
Euler,
Eulerian circuit, multigraph,
path,
537\342\200\224539
Euler's
Euler's
formula,
530-532 225-226
0-function,
function, 602,
EXCLUSIVE-OR
603 Existence
proofs,
87-88
Existential generalization, 99 quantifier,
91 Existential
83-87, 8998
specification,
Experimentation
stage of
21 development,
Expert
systems (ES), 720,722,
723-724 721
diagram,
see also
\"Soft\"
systems
expert
Explanatory knowledge base 725-727
(EKB),
639
vertex covering of, 695 Thomas A., 18 Edison,
Edmonds, 671
85-86
38
Equivalent
Existential
platonic solids, 458
647-651 self-loop, 437 simple path, 388
458
354-358
integers,
Euclidean
333, 437
multiple,
class, 350-351
on
Euclidean algorithm, 78,117
S-D cut,
Dodecahedron
graph Hamilton's
loop,
350
equivalence
Euclid,
octahedron,458
tests,
The Division Algorithm, 64 Division of formal power series, edge
in
666
maximal
601-602
Distribution,
see Flows
labeling, 632-633, 636 in binary tree, 507 left,
722
354-358
integers,
Eratosthenes
Networks
icosahedron,
Disjunctive syllogism,49 Disposition,
flow across, forward,
for
Equivalence relations, 340
Equivocation,
hyperedges, 728-731
Disjunctive normal form for Boolean expressions,
654-655
388
endpoints,
350-351
class,
canonical representative, 356
458
edge cut-set,
240
functions,
Equivalent propositional
disconnecting set, 654
dodecahedron,
21-22
of,
sets, 5, 211
Disjoint
^of generating of sets, 4
on sets,
548
diagonal,
relation,
fuzzy
Equality
Equivalences
332
defined,
Disconnecting set of edges,654 Discovery,
472
edge,
cycle, 388
-
505
regular,
general
defined,
cut-set, 654-655
506
thin,
equation, 638
cross,483 crossovers,523 cube,458
multigraph, 333
(-reflexive 726
Equivalence
494
contracted,
conversation Graphs
Directed path, Directed
matching, 687, 689-
691
438-439
seealso
388
complete
weakly connected vertices, 391-
638
375
428-432
topological,
capacity of, 633-634,647-648 circuit,
388
ordering of strings, of sets, 367-368
437
constraint,
capacity
4
set,
Empty
Enumeration
backward, 666
see
networks,
transport Networks
Edges of graphs
of a set, 1
Endpoints of a path,
paths,
Edge-disjoint
391-392
444
of a graph, 442
labeling
Edge
argument, 19-20
of an
Edge cut-set, 654-655
388
symmetric,
tree, 486
Economy
connected vertices,
strongly
knowledge
Elements (Euclid's), 20
graphs
simple, 333
simple path,
404-407
of algorithms,
Efficiency
base
388-389
see. Paths in reflexive, 339, 340 paths,
of development,
stage
Egervary, 689 EKB, see Explanatory
Dualofaposet, 370
Networks
see
526-527
graph,
Education
21
vertices of, 569
Menger's Theorem,695 networks,
40
law of,
Dual graph
The Extension Exterior
525
region
\"Extraordinary\"
Principle, 714 of a plane graph, sets,
9
743
Index
Facesofa plane,
525
minimal
binomial coefficients as, 191 136
-defined,
Fallacies affirming
the consequent, 50 28
ambiguity,
29-30 begging the question, circular reasoning, 29-30 the antecedent, 50-51 denying
30
cause,
30
generalization,
hasty
non sequitur, 51 post hoc ergo propter hoc, 30 unwarranted assumptions, 2930 \"vicious
29
circle,\"
46
Fermat primes, Fibonacci
(Leonardo numbers,
Fibonacci
116 for
120
of Pisa), 269 111, 113-114, 271-273 273
sums of, 270-271 for vertices in height
balanced
binary tree, 511-512
269-270
Fibonacci relation,
of, 271-273
solution
general
Fibonacci sequence,111,270-273, ^ 278
Finite
Boolean algebra, 588
Finite
graph,
First order
437
logic,
see
Logic, first
order
\"The
569-571
Flow-augmenting
path,
Flow-augmenting
path
666 algorithm,
Networks, 671
Forward
labeling,
in networks
capacity
constraint,
defined,
638
638
638
out of a vertex,
638,
663
Integrality
of Flows
The Max
increasing,
Theorem,
Cut 667-669
maximal, 641, 645-652 construction
functions
noncomputable,
on integers
of, 671-
700
subnormal,
700
systems
expert
^-transitive general fuzzy
relation,
726
37-40
Gambler's Ruin, 277
Theorem
of
Gamma probability
density
function, 733
118
of logic,
see Logic,
of
fuzzifier, 710-711
(FRKB), 724-727
Base
Gates,
596
logic, see Logic gates minimization of, 600-601
see also Arithmetic logic Boolean functions, Greatest
fuzzy binary general fuzzy link, 726-727
relation,
General fuzzy 727 713 726-727
relation
(link), 726-
22
Generalization,
Petersen graph, 464
Generalized
functions
Generating
711-713
calculating
coefficients, 247-251
proximity
relations,
713, 726
defined,
239
division
similarity
relations,
713, 726
equality
of power of, 240
reflexive, 713
common
divisor
713
of, 713 relation, relation,
common
Greatest
denominator;
@-transitive, 713
unit;
minimization of
GCD, see
relations
fuzzy
difference, 732
377-378
modulo m, 355-358
relation, 713 binary Relational Knowledge
n-ary
Fuzzy set
subset, 700
see also\"Soft\"
under Sets
Fuzzification,
699-704
function,
on, see
operations operations
support,
449-457
TheFundamental
Fuzzy
normal, 700
symmetrical
anti-symmetrical,
Flow-Min
Theorem,659-630,
membership
see Boolean 318
composition
672
height, 700
functions
Fuzzy
676
\"greedy\" method for
The Extension Principle, 714 of membership, 699-704 grade
generating, see Generating
Fuzzy
point, 701
699-700 examples of, 701-704
306,
set, see
732
defined,
Functions
forcing,
conventional
sets, 2 crossover
Functionally complete operations on Boolean algebras, 592-593 Boolean,
700
with
convex,
615-621
fundamentals
flow-augmenting path ' algorithm,
an
for
D. R.,659,671 614,
of, 714
contrasted
Knowledge Base
Fundamentals
conversation equation, flow into, 640
675
Free Boolean algebra, 590 .see Fuzzy Relational FRKB,
Full-adder,
731
Fuzzy sets cardinality
of reference 19-20
Fulkerson,
708
705,
union,
708-710
identity,
Mevelset,
containment,
The Four-Color Problem, 569-571
Arithmetic,
across a cut, 649
677
edge, 666
propositional,
676
maximal,
Forward
monotone increasing, 346
5-Color Theorem,
Flows
in expert
chaining systems, 724
isomorphisms,
First Theorem of Graph 440-441 Theory,\"
Flows in
inverse, 247-251
multiplicative Forward
intersection, 705, 731-732 kernel of a fuzzifier, 710-711 max (#) symbol, 704-705 min (&) symbol, 704-705 resolution
of, 247-251
Full directed tree, 506
270
Quarterly,
710-711 fuzzifier, \"soft\" AND, 705
product, 705-706
Formal power series,239
argument,
for, general solution and Pascal's triangle,
Fibonacci
to IHR,
solutions
L.R. Jr., 659, 671 478, 500-501
Forest,
707-708
Principle, 714
The Extension \"hard\" and
OIQ
Ford,
706
fuzzification,
defined,306 and particular
Frame
n, 273
large
674-
algorithm,
functions
Forcing
706
convex combination, dilation,
labeling N
675
707
product,
concentration,
639
value of, 640
division
False cause, fallacy of, 30 of, 29-30, Faulty inference, fallacy
edge, 639 edge,
vertex
Cartesian
complement, 705
647-651
unsaturated
718
restriction,
Fuzzy set operations
saturated edge, 639
S-Dcuts,
closure, 713
transitive Fuzzy
640
638,
(Contd.) 713
symmetrical,
net, 638, 640,668 net flow into, out of a vertex,
equivocation, 28
faulty inference, 29-30,46
Fuzzy relations
(Contd.) 645-652
cuts,
slack of an
28
amphiboly,
false
in networks
Flows
Factorials
series, 247-251
Index
744
functions
Generating
linearity of, 257 models, 241-244 fraction
partial
shifting solutions
scalar, 240
decomposition,
252-257
product
290
240-241
of,
properties of, 285-290 to recurrence relations,
290-296 sum
of, 240
relations
rule, 110
Geometricseries,110,116, 249-251 gib,
of a graph, 465 see Greatest lower
Goals of an
bound 19
argument,
Goldbach conjecture, 119
Good'sdiagrams,
540
Grade of membership, 699-704 With Applications, Graph Theory
551
444
sequences,
fc-critical,
561
fc-partite,
467
labelings,
444
457,
bipartite,
547-548
541
\"bridge\" edge,
see
chromatic
numbers, Chromatic numbers
circuit
nondirected
graphs,
nontrivial
path,
null, 457
481
rank,
closedpath,
442
see Chromatic numbers of subgraph, 455-
coloring, complement
456
531
452-453,
complete,
457,531-532 467 components, 391-
complete bipartite, fc-partite,
complete
(connected)
392,472
critical
planar,
442, 457,524
degree sequence, 465
diameter,
.
graphs
edges, see Edgesof graphs 388
Theory,\"
Theorem of Graph 440-441
girth, 465 graphic
464
Petersen,
sequence,
444
Hamiltonian, see Hamiltonian graphs
simple path,
388,442
size of, 437 spanning subgraph, star,
543
subgraph,
directed,
452
Havel-Hakimi
Height balanced binary
of graphs 438-
graphs,
Warshairs algorithm, 407-412,
539
Greatest
562-563 .
common denominator common
divisor (GCD),
356 Greatest element of a set, 364 Greatest
lower
Greedy algorithm,
tree,
510-
Height of a fuzzy
700
set,
of a tree,
501 500-501
Henkin,
Leon, 110
High-order
languages
(HOLs),
Homogeneous recurrence 266, 306-311 (HR),
(gib), 364 567 486-487,
bound
720
relations
see also Inhomogeneous
Recurrence
relations
for Boolean
Homomorphism algebras, 585
How to
Solve It, 18
see
Homogeneous
recurrence
relations
457
vertex,
Hyperedges, 728-731
vertices, see Vertices viewed as directed
Greatest
447
result,
Head of a sequence,282 P. J., 569 Heawood,
\"Hub\"
467
457
604
fallacy of, 30
generalization,
Hasty
HR,
trees, see Trees
converter),
Poset
see
recurrence relations;
339, 340,
458
457,
algorithms, 357-358
diagrams
334, 452
tetrahedron,
set
for fuzzy
AND
\"hard\"
457-458
(GCD),78
forest, 478 generalized
437,438
Gray-code (to binary-code
437
\"The First
527
simple,
543-548
path,
Hamilton's dodecahedron game,
of a vertex,
self-dual,
wheel,
Eulerian, 537-539
551 Hamiltonian
500
439
dual, 569 endpoints,
334-335
subgraph,
proper
Hamiltonian
512
quasi-strongly connected, 498-
union,
458
dodecahedron,
458
solids,
tripartite,
439
see Directed
directed,
457
in graphs paths, see Paths Petersen, 463, 464 see Planar graphs planar,
Sum of Degrees Theorem,\"440-441
437
defined,
molecules as, 446-447
graph,
551
theorem, 548-551 circuit, cycle. 543-
Hassediagrams,
\"The
439,464-465
Dirac'stheorem,
Hashing
442
437
438
529
cube, 458
cycle, 388,
organic
graphs
operations,705
458
symmetric
crossing number, 534
cubic,
388-389
406
Grinberg's
388
523,524-525
nonsimple, 438
689-691
Theorem,
Marriage
defined, 543
449-457
nonplanar,
689
Hamiltonian
333
nondirected path, nonisomorphic,
614-615
Half-adder,
ra-colorable, 558
polyhedral, 531, 532
circumference, 465-466
548-551 an argument, 19
for
Haken, W., 569
1
multiplicity
path
increasing
543 Hamilton, Sir William Rowan, The Hamiltonian Cycle Problem,
of edges, 535-536 536-537 matrix,
of platonic
388, 442
circuit,
Grounds
Hall's
437
multiplicities
order of,
450 396-402, adjacency matrix, AND/OR graphs, 728-731
for
Grinberg's theorem,
Hall, P.,
fc-regular, 439
open path,
Graphs
finite,
334,449-457
^-chromatic, 559,561
octahedron,
Graphic
\"Greedy\" method flow, 663
334
invariant,
isomorphic,
multigraphs, 333,437,438
see alsoRecurrence Girth
458
intersection, 456-457
loop-free,
table of, 289
Generating
728-731
hypergraphs,
icosahedron,
by a
multiplication
result, 447
Havel-Hakimi
(Contd.)
equivalent expressions for,
728-731
Hypergraphs,
728-731
Hyperpaths,
Hypothesis
of, 23
formulation
inductive, 103
of a proposition, 35, 47 strong inductive, 111 syllogism,
Hypothetical
IC, see Integrated Icosahedron, Idempotent algebras,
48,49
circuit
edge graph of, 458 laws for Boolean
580-581
Idempotent
property of sets, 5
IEC,seeInternational technical
Electro-
Commission
745
Index No. 91 for
Standard
IEEE
IHR, see
logic
Inhomogeneous recurrence
601
symbols,
relations
example solutions, 306-311 of particular solutions, summary
Inhomogeneous
recurrence relations
elements, 13
of set
Images
318
35
Implication,
law of, 40 logical, 45-46 proof of, see Proof, methods of Incident from, on, to edge, 333, 439 of Inclusion-exclusion, principle Euler's
226-228
formulation and
statement
218-219 proofs, 220-222
224-225 Sieve of Eratosthenes, for three sets, 213-218
sets, 212-213
two
for
601,
603
Incubation stage of development, \"21-22
579
postulates,
132-133
Indirect counting, Indirect
333, 439
of a vertex,
In-degree
61, 65-66
proof,
Induction
103-108
strong
mathematical;
and Analogy Mathematics, 18
see alsoStrong
Inductive
406
423
Intermediate
contraposition,
50,61,86
dilemma,
49
disjunctive
syllogism,
49
specification,
98
47-48, 49
modus tollens, 49 simplification,
transitive universal
605
form of Boolean 605
expression,
of a binary
Irreflexivity
339,340 Isolatedvertex,
Inference
engine, 720, 721,727-731
Inhomogeneous relations
(IHR),
recurrence
Leaf of a tree, 482
Leastelement Least upper Left child,
40 Middle,
of a set, 364 bound (lub), 364 507 edge, subtree,
of a path, 388, 391 LeonardoofPisa (Fibonacci), Level of a vertex, 469, 501 Level-orderindex of binary Lexicographic
373-375
Linear
of strings,
ordering
permutation,
148-151
257
approximations,
Fuzzy relations; Fuzzy
of relations,
operations; systems
368 380
Link
368
tree
266 Linear recurrence relation, Linearity of generating functions, Linguistic
Join-semilattice,
269
vertex, 509
281-285
Join of elements,
34
Length
relation,
graph,334,406,449-457 Iteration,
of implication, Excluded
Law of the
439
Proof,
methods of
266
the Laws of
form of a Boolean
Boolean, 585
98
generalization,
Reasoning;
602, 603
of contradiction, 34 of contrapositive, 40, 49, 50 of double negation, 40 of hypothetical syllogism, 48,
49 Law
Isomorphisms
49
rule, 48, 49
universal specification, 97-98
seealso
Law
583
Irredundant
Law
381-382
law for Boolean
expression,
hypothetical syllogism,48, 49 ponens,
41
function, of Investigation 577 Thought.\" algebras,
existential generalization, 99 existential
Law
247-251
(LSI), 600
Latin square, 96-97,693
Lattice,368,578
Irreducible
47-48, 49
detachment,
Large scale integration Latin 693 rectangle, Law
Involution
of
Equations
334
\"An
Laws, 6, 40-41,49,
DeMorgan's
The Lancaster
Invariant of graphs,
14
formula,
interpolation
88
426
INVERTER
49, 50
444
Invariant
of a set
45
destructive
sets, 14
for function assertion,
636
675
Combat,275
379
of a relation, 49
675
vertex, 674-675
456-457
of a proposition,
dilemma,
algorithm, 674-675
graph,
symbols,
sets, 705, 731-732
multiplicative,
of
constructive
Labeling
forward,
(IEC) for logic
535-538
486-489
algorithm,
Lagrange's
of sets, 5
49
conjunction, 49
Kruskal's
backward,
Electrotechnical
of relations,
695
Theorem,
Konig's
The Konigsberg Bridges, Kruskal, J. B. Jr., 486
edge, 632-633,
Inverse
Inference, rules
defined,
418-
vertex, 482
of graphs, Into
689
600
634
vertex,
601
46
addition,
large scale, algorithm,
very
of fuzzy
algorithms,
Knowledge-Based Consultant see Expert (Expert) Systems,
Intersection
valid, 46-47
modus
and
Interchange sort
103,111
569-571
of a fuzzifier, 710-711 Thomas Kirkman, P., 543 The Knight's Tour Puzzle, 555
large,
medium,
small,
117-15 Publication
Inference faulty,
Integration:
Commission
22-24
Inefficient
Primes
see
111-115
reasoning,
Inductive step,
571
Konig-Egervary Theorem, 695
relatively prime, 356 of Flows Theorem, 672 Integrality circuit (IC), 600 Integrated
inductive
hypothesis
610-611
607-609,
map,
A. B., 569,
Kempe,
Konig,
modulo m, 354-358
in
hypothesis, 103
Inductive
Karnaugh
Karp, 671
systems
of, 359-360
divisibility
International
Induction
503-504
B-tree,
Karnaugh, M., 607
Integers
Internal
mathematical,
graph, 439
fc-regular
Kernel
Inner product of operators, 397 Inorder traversal (LNR) 515,518
prime,
INCLUSIVE-OR function,
Independent
condition, 110, 268 term of a series, 110 442 vertex,
Initial
of,
467
graph,
fc-partite
559
Kempe-chain argument,
relations Initial
225-226
0-function,
coefficients, of, 311-319
method see also homogeneous recurrence relations; Recurrence Initial
fc-chromaticgraph, 56, ^-critical graph, 561 fc-way
undetermined
derangements,
(Contd.)
(IHR)
(general 727
\"Soft\"
see set
expert
fuzzy relation), 726-
Index
746
Literal for a Boolean variable, Literal variable, 605 see Inorder traversal LNR,
Logic, first
590
quantifier, 83-87, 89-
87, 89 by counterexample, proof by example, 87 87, 89 proof by exhaustion,
quantifiers, defined, 82-83 analysis,
91
abbreviated basic
truth table, 38-39 34-38 of two
propositional variables, 39-42 Logic, predicate,
in
602,603
INCLUSIVE-OR,601,603
of, 600-601
an ALU,
601-603
Logical
connectives, 34-38
Logical
implication,
consequence,
trees, 494 spanning Minimization of Boolean functions, functions, see Boolean
Minimal
471
Many-to-one
96 function
Mapping, see Functions
for sets,
14
Networks capacity function, 633
completematching,
cuts in,
see Cuts
defined,633
_
capacity,
edge
matching,
687,
coefficients, 191-192
NLR,
traversal
see Preorder
Non sequitur
fallacy,
51
functions, 377-
378
Nondirected
functions,
Nondirected
increasing
existence
Nondeterministic
47-48, 4S, 724
Modus tollens, 49 346
688-689
maximal matching, 687 source sink, vertex, 633, 638, 640 Newton's for binomial identity
Nonconstructive 87,88
Monotone
633-634
636 632-633, edge labeling, in networks flows in, see Flows intermediate vertex, 634
354-358 arithmetic, law for Boolean algebras,
ponens,
689-
687,
691
Modular
Modus
638,
640
Noncomputable
587
cut, 649
out of a vertex,
flow into,
Boolean expressions,
Modular
439
vertices, across a
Neighbor flow
Net
Minterm
590-592
278
Lukasiewicz, Jan,
of
minimization
LSI, see Largescaleintegration lub, see Least upper bound
Square,
deposit expert system, 722 cuts in networks,-645-652
Minimal
333
graph, 437 of a set, 364 bound see Postorder traversal sequence,
in an ALU, 619-
621
Mineral
Loop-free
Magic
of
Micro-operations
Loop, 333, 437
Lucas
coefficients, method of of Proof, see Proof, Methods
propositional
Loop-freedigraph,
Undetermined
coefficients, see
methods
functions, 38
LRN,
of undetermined
Method
46
46-47
equivalent
roots,
558
function, 602, 603 of a proposition, 34
NAND
Net
lists, 282-284 423-424 sequences,
711-713
relation,
fuzzy
127
events,
system, 722
expert
Negation
282-284,
300-304
of
valid inference,
699-704
function,
of characteristic
Method
logical implication, 45-46 rules of inference, see Inference,
Lower
Merging
sorted
exclusive
MUX, see Multiplexers
n-ary
425-426
sorted
of a graph,
matrix
536-537
n-colorable graph,
algorithm,
Merging
Fallacies
see
faulty inference, 46
Logically
sort
536
Multiplicity
MYCIN
Mersenne primes, 120
45-46
Logical inferences fallacies,
Merge
power series, 247-251 of graph edges, 535-
(MSI),
Menger's Theorem,695
603
Logic micro-operations in 619-621
of generating a scalar, 240 of formal inverse,
Multiplicities
integration 368
Menger, 689
Multiplicative
Mutually
368
89-91
621-626
functionby
system,
Meetof elements,
333
edges,
Multiplication
expert
Meet-semilattice, Membership
NAND, 602, 603
Logic symbols,
register
Members of a set, 1
INVERTER, 602, 603 602,
scale
600
EXCLUSIVE-OR,
minimization
shift 539-541
The Binomial theorem
see also
Multiplexers,
Boolean expressions,
Medium
theorem,
Multiple quantifiers,
667-669
diagnosis
coefficients 205-
Binomial
Multinomial
Multiple
of, 671-677 Cut Flow-Min
Maximum-length
722
seealso
The
\342\200\242207
Maximal matching, 687 Maximal graph, 534 planar Maximal spanning tree, 493
Medical
expert
205
Multinomial coefficients,205-207
networks, 641,
590-592
AND, 601,603
rules
The Max
Maxterm
Logic gates
logical
construction
723-724
systems,
NOR,
645-652
sequence,
and
inferences 33-34 propositions,
valid
537
traversable,
536-537
flows in
Theorem,659-660,
connectives, functions
396-402, 450
Boolean, 396-402
81-82
of discourse, of
universe
graphs, 526-527
Multinomial,
adjacency, Maximal
537-538
nondirected,
of plane
mathematical
Matrix
multiplicity,
80-
81 universal quantifier, 83-87, 89-
Logic, fundamentals
18
induction
proof
subject-predicate
538
Discovery,
in,
Bridges, 535-
The Konigsberg
induction, 103-108
see alsoStrong
89-91
quantifiers,
multiple
five
Mathematical Mathematical
open propositions, 81-86
537-539
688-689
network,
integration
paths and circuits
Eulerian
687
maximal,
87-88
scale
538
directed,
condition, 689
equivalences, 85-86
existence proofs,
MSI, see Medium
Multigraphs, 333, 437,438
687, 689-691
complete,
defined,80
91
Problem, 687, 689-
Marriage
691
Matching
order
existential
The
graphs,
proof,
algorithms, 419 333
Nondirected multigraphs, 333 path,
388
Nondirected trees, 469
747
Index
graphs, 449-457
Nonisomorphic
recurrence
Nonlinear
321-322
Nonplanar
Organic moleculesas graphs,
524-525
523,
Out-degree of a vertex,
406
algorithms,
general
439
333,
726
relation,
Nontrivial
path,
Nontrivial
tree,
388-389
Parent
Normal Normal
and
algorithm,
fuzzy set, 700
graph,
457
string,
373
Null set, 4 Null
362-363, 580
133-134
for sets,
function
Onto
Openpath,
14
442 y
355-358
on integers modulo m, see under Relations relations, on sets, see under Sets 397 Operator on operators, Operator postfix, prefix notation, on
471-472
Operators
Sets
of a proposition, 41-42 Boolean OR, OR.AND operators,
398-400 OR function, EXCLUSIVE and INCLUSIVE, 601, 602, 603 437
pair, 9
Ordered partition of a set,
181,182-184 selection
Ordered
Orderedtree, 517
177-
of objects,
enumeration, lexicographic,
143
see Enumeration 373-375
340-341, 362-363, 580 see Strings strings,
partial, on
topological, 428-432 total,
363
Ordinary
generating
Generating
\"Ordinary\"
functions, see
functions
sets, 9
simple, trivial,
Perfect
718-720
Post hoc
30
Plausible
Postulates,
164
Powell,
144,146
numbers,
172-177
and
M. B., 565
repetitions,
series,
partitions,
repetitions,
247-251
Predicate,81-82 logic
723-724 Preimages
181-184
inverse,
multiplicative
Power set, 7, 9 Predicate
162-
515,
579
formal, 239 division of, 247-251
Power
partitions, 177-181,
with constrained
(LRN),
consistent
independent,
summary of use, 182-184 unordered
traversal
hoc fallacy,
518
Inference,
75
unlimited
ergo propter
Postorder
442
182-184
with
consistency
719
principle,
389
148-151
repetition
715-720
theory,
Possibility/probability
defined,143 ordered
715-720
716
to probability,
related
Possibility,
circular, 150-151 linear,
365
364,
Possibility Postulate, Possibility
388, 442
integer,
algorithms,
distribution,
Possibility
388-389
in
polynomial
716-717
666
vertex-disjoint,
Patterns 18
of, 458
Posets, 362, 364-368,370 Possibility assignment equation,
543-548
a vertex, 442
traverse
edge graphs
solids, G., 18
Poset diagrams,
of, 388
nontrivial,
406
406
hyperpaths, 728-731
open,442
Subgraph Problem,
Characteristic
Eulerian, 537-539 Hamiltonian,
527
self-dual,
Polynomial-bounded 442
flow-augmenting,
of, 530-532
531, 532 Polyhedral plane graph, Polynomial, characteristic, see
388
endpoints,
526-527
531, 532
regions of, 525, 569
Polya,
directed, 388 edge-disjoint,
569-
571
Platonic
Permutations
relations
Ordering
265
maximal length, 391
Opposite
Ordered
273
relation,
388, 442
length
Boolean, 398-400
Order of a graph,
numbers,
in graphs
cycle,
Kempe-chain argument,
The Planar
closed,442
set
operations
set, seeunder
265
circuit, 388, 442
sets, see Fuzzy
on fuzzy
Fibonacci
193-194
569-
571
properties
192-194,
as a recurrence Path graph, 457 Paths
81-86
Open proposition, Operations
Pascal'sidentity,
569-571
Problem,
polyhedral,
178
Pascal's triangle,
5-Color Theorem,
maximal planar, 534
181-184
of a set,
and
525
region,
multigraphs,
126,350-351
unordered,
0( ), see Big O notation Octahedron, edge graph of, 458 One-to-one correspondence, 13,14,
Posets
177-181,182-184
of a set, Parts
sets, see
ordered
ordered,
of, 526-527
TheFour-Color
340-341,
relations,
ordering
Partially Partition
dual
Euler's formula, 530-532 exterior
252-257
Partial
crossovers,523 cycles,524 defined,523
404
fraction decomposition,
Partial
density
problems, 406-407
NP-complete
tree, 507
Partial correctness of an
591-592
probability function, 732
Null
Parsing
conjunctive
form, disjunctive,
of a vertex, 482 in binary vertex a sentence, 505
Parent
NOR function, 602,603 Normal
critical, 529
Russell's, 7, 9
469
for, 569-571
numbers
chromatic
Cantor's, 7
fuzzy
relation/726
67-71
principle,
Planar graphs
Paradox
general
Nonsymmetric
of
principle
Inclusion-exclusion,
Pigeonhole
138
Palindrome,
graph, 438
Nonsimple
148-151
Petersen graph, 463, 464
P-ciosure of a set, 384
fuzzy
(Contd.) repetitions,
see also Combinations;
729-731
Nonpolynomial-bounded Nonreflexive
Permutations without
OR-VERTEX,
graph,
446-
447
relations,
in expert
of set
systems,
elements, 13
Premise,35,47 Preorder
traversal
515,518
(NLR), 514,
748
Index
of (Contd.) Proof, methods direct proof, 61,63-64
Primes
76
adjacent,
existenceproofs,
Euclidean, 118 Mersenne,
quadruple, 76 Prim's
proof
Principle
66
494
algorithm,
Principle
of duality, 580 of inclusion-exclusion,
proof
71
principle of Induction,103-108
proof
of
principles
Counting,
Probability, related 718-720
proof by exhaustion, proof by mathematical
see
of counting,
Principles
by equivalence, 87 by example,
proof
of Mathematical
to
87, 89
cases, 62,
63, 64-65
87, 89
possibility,
61 trivial proof, vacuous proof, 61 see also Inference,
733
function, 37-42
Propositions,
33
Number
Problem,406
Problem, 361
The Coconut
TheCommittee
686,
Problem,
691
The Four-Color Problem, 569-
571
TheHamiltonian Problem,406
TheKnight's The
Cycle
Tour
The
Puzzle,
687,
Problem,
Marriage
555
535-
Bridges,
Konigsberg
538
689-691
NP-complete, 406-407
ThePlanar
Subgraph
406
The Scheduling
Problem, 558-
Problem,
Problem,
The Towers
of Hanoi,
Problem-solving
strategies, see
of fuzzy
sets, 705-706
of generating
functions,
Product rule, 128-132 Product-of-sums
form,
arithmetic, Projection Proof,
existential, 83-87,89-91
591, 612
of methods
110,115
110,116, 249-251 a relation, 379-380 of
conditional proof, 62-63,72 377-378 diagonal argument,
fuzzy
Reflexive
general
Reflexive
relation
726
connected
of a
describea 108 relation,
subroutine, binary
Reflexive 713
\342\200\242
fuzzy relation, on a set,
11
binary relation, 339, 340
of a similarity of a planar
726
relation,
vertices,
Regular
language,
Range Rational
of relation on a set,,10-11 roots theorem,-89
525
tree, 505
directed
Relations see
binary,
725
Query
569
graph,
of a plane,
83-87, 89-91
relations
Binary
closure property,
Quotient, 64
383-384
379
complement,
composition, 382-383 379
difference,
see Equivalence
equivalence, relations
24-26
fuzzy,
approach,17-19
aspects of discovery, circular, 29-30
general
381-382
inverse,
19-20
join, 380
meet, 368
22-24
working
backward, 26-27
working
forward,
20-21
see also Inference, rules Proof, methods of
see Fuzzy relations fuzzy, 726-727
intersection, 379
21-22
elements of an argument, fallacies, see Fallacies inductive,
set, 3
109-111
Regions
89-91
\"analysis-synthesis,\"
Progression geometric,
97-100
propositions,
Quantifiers
Reasoning 240-241
formula to
Reflexivity
282
Reasoning
Product
Quadruple primes, 76
universal,
Recursive
77
triple,
multiple,
108-109
Recursive
system,
498-500
657, 686, 691
Representatives Problem,
expert
of Hanoi, 282 functions
Generating
Recursion, of
relations, of a tree, 495-497
Pythagorean
406
System of Distinct
code
TheTowers
Recursion theorem,
fundamentals
281-285
solutions,
systems of, 319-322
see also
713, 726
Quasi-strongly
Isomorphism
of,
722 Priifer
285-290
functions,
solution, defined, 267
quantified, 97-100
Proximity
321-322
properties of generating
substitution
see alsoLogic,
282-284,
algorithm,
models, 274-275
open, 81-86
Quantified
560
The Subgraph
negation
of, 34
PROSPECTOR
utilities, 523-525
houses and
38
of
Equations
275
425-426
34
equivalent,
268
conditions,
shifting
and disjunction
conjunction
306-311
266,
inhomogeneous, see Inhomogeneous recurrence relations
nonlinear,
Propositional
Assignment
290-296
homogeneous,
merge sort of;
Problems
Problem, 686
269-273
relation,
generating function solutions,
linear, 266 rules
\"Probe\" sequence, 358
The Chromatic
285, 321-322
Combat,
Proper subgraph, 334 3-4 Proper subset,
The
relations,
divide-and-conquer
initial
75
divisor,
Proper
as, 274
derangements
The Lancaster
Reasoning
in
methods 723-724
Probability-based expert systems,
as, 274
compound interest defined, 266
induction,103-108,111-115
functions, 732-
Probability density
by counterexample, of by elimination
solutions,
300-304
Fibonacci
proof
see Inclusion-exclusion,
Principle
67-71
proof by cases, 61-62, 71 61, 66-67 by contradiction, 61, 65proof by contrapositive,
twin, 76
Primitive triple, 77
roots
characteristic
principle,
pigeonhole
76
triple,
87-88
positive), 61,65-66
120
110
relations,
boundary conditions, 268
proof (proof by contra-
indirect
120
Fermat,
Recurrence
Ordering
P-closure of a set, 384 partial
of;
see
ordering,
ordering
ordering, relations
projection,
relations
see Partial
379-380
749
Index Relations
Series
(Contd.)
713, 726
proximity,
Recurrence
see
recurrence, relations
SES, see Sets
726
713,
similarity,
symmetric closure, 383 total
transitive (reflexive)closure, 383 379
union,
105, 366-367 of a set, 4 complement prime integers, 356
well-ordering, Relative Relatively
Remainder, 64
144,146
Repetition
numbers,
Revelation
stage of development,
Resolution
708-710
identity,
22
binary relation on, sum, 5
Cantor's
Root of a
507
tree, 469,482
300-304
Rule Rule of detachment, 47-48, 49 Rules of inference, see Inference, Russell,
of
Bertrand, 9
Russell's paradox
for sets, 7, 9
definition,
1
639
The Scheduling Problem,
558-560
algorithms
Searching
DFS, 482,
485
Selections, see Combinations; Permutations
plane graph, 526-527 2-valued Boolean
Self-dual Self-dual
135
functions,
Self-loop,
437
Semilattice, 368, 371
Sentenceparsing,
505
Sequences
binary search, 415-418
deBruijn,
539-541
111, 270-273, 278 functions for, table,
Fibonacci, generating
289
graphic,
sequences,423-
358
searching, 415
sorted, 415 of, 282
Sequential counting, 128-132
11
Simple digraph,
images, 13
elements,
into
14
363
intersection, 5 function,
14
function,
operator,
ordered
13
pair, 9
\"ordinary,\" 9
scale
(SSI), 600 integration algebra, 588-
Boolean
589
for fuzzy
AND
\"Soft\"
437
edge, 639
\"Soft\" expert
set
systems (SES),722-
724
one-to-onecorrespondence,14 onto function, 14
388, 442
operations,705
368
1
function,
path,
49 Simplification rule of inference, Singleton set, 4, 442 for sets, 13 function Single-valued Sink 633, 638, 640 vertex,
\"Smallest\"
null, 4 one-to-one
Simple
Small
364
lub, 364
members,
graph, 437, 438
Slack of an
least element, 364 bound,
333
Simple
Sizeofa graph,
inverse function, 14 368 of elements, join lower
224-
Similarity relations, 713,726 circuit, 388, 442 Simple
idempotent property, 5
incomparable
of
225
364
element,
greatest
see
The Sieve of Eratosthenes,
9
meetof elements,
424
tail
see
fuzzy,
gib, 364
of generating
properties
functions, 285-290
Inclusion-exclusion, principle
defined, 13 Fuzzy sets
mapping, 13
444
merging sorted
\"probe,\"
function,
609, 610
Sievemethod,
many-to-one
head of, 282 Lucas, 278
-
367-368
4
214 13
well-ordered, 366-367 (SSD), Seven-segment display
Shifting
empty, 4
\"extraordinary,\"
415
sequences,
Searching
10-11
elements, 1
equivalence relation,
415-418
binary,
5
laws,
relation,
6, 212, function,
Sheffer stroke function, 593 Shell sort algorithm, 419 Shift registers, 539-541
5, 211
equality,
bound,364 diagrams,
596-600,
enumerations,
BFS, 482-485
2-3
universal,
well-defined
2-3
of
/
union, 4-5 Venn
50,61,86
domain
367
uncountable,
upper
DeMorgan's Laws,6, 40-41,49,
description,
13
relation, 11
transitive
correspondence,13 367
ordered, 363
totally
transformation,
n, 12
modulo
distributive
S-D cut, 647-651 edge,
representatives, 657,686
14-15
of relation,
of distinct
system
16
disjoint, Saturated
symmetrical difference, 5
commutative property, 5
congruence class,12
11
relation,
symmetric
13
function,
subset, 3-4
operations,
binary
countable,
7, 9
paradox,
single-valued
383-384
property,
containment, 3-4
22,126-132
rules
7
function, 2
characteristic
congruence
product, 128-132 sum,
Russell's
singleton, 4, 442
product, 8,10
composition
Roots, characteristic,
relative complement, 4
363
chain,
on, 10
relation
comparable elements, 363
tree, 468
Rooted
16
10
paradox,
Cartesian
3-4
subset,
10-11 range of relation, reflexive relation, 11
Boolean
commutative
child, edge, subtree, 607 pattern,
Right \"Ring\"
preimages, 13
16
operations,
closure
edge, 666
Reverse
power, 7 proper
associative associative property, 5 binary
350-351
partition,
systems
11 relation, binary operations,
antisymmetric
see Posets
ordered,
partially
249-251
110, 116, \"Soft\" expert
absolute complement, 4
363
ordering,
384 P-closure,
239, 247-251
formal power, geometric,
Sets
see under
set,
Sets (Contd.) 115
110,
arithmetic,
13
ARIES,
727-731
EKB, 725-727
FRKB, 724-727 VKB,
Sorted
725-727
lists, merging 282-284
Sorted sequences,415
750
Index
Sum
algorithms
Sorting
binary search, 415-418 bubble sort, 297, 419, 423
rule,
see also
22,126-132
Transitive
Inclusion-exclusion,
Transitivity
of
principle
merge sort, 282-284,425-426
Sum-of-products form, 591,605 of a fuzzy set, 700 Support
run
Switching
418-423
sort,
interchange
347
times,
Shell sort, 419 successiveminima,
Source vertex, Spanning subgraph,
603
452
trees
Spanning
Gray-code (to binary-code
497
formula,
DFS, 482,485 480
maximal,
493
minimal,
485-489
Prim's
properties Prufer code,
495-497
terminology
associated
with, 482
Specialization, 22
Star graph, 457-458
State diagrams,
shift
722
540
second
, kind,209-210 for problem
Reasoning
373-375
Strings,
Strong inductive hypothesis,
seealso
Inductive
hypothesis
Strong mathematical
induction,
111-115
seealso
111
induction
Mathematical
392
Symmetric
Problem,406
Subgraphs,
complement
Subroutine,
108
recursive,
Subset
of a fuzzy of a set, Substitution
set,
Successiveminima Sum bit, 614 Sum
of Degrees
440-441 Sum
algorithm,
of generating
Theorem,\"
Terms
of a similarity
^-transitivity 726
494
spanning, 469
nontrivial,
prefix and
operator
postfix
517 in,
482
of, 473-476 properties Prufer code, 495-497 root of, 469
rooted, 468
see
spanning,
Spanning
subtree, 482 traversal
trees
514-515,
algorithms,
518
205
Trinomial,
graph, 467
Tripartite Trivial
path,
Trivial
tree,
(reflexive)
relation
363 282
Functions closure
on a
469
84 Truth set of a proposition, Truth tables, 35, 37-41,46 for logic networks Truth tables
601
function,
set, 11
function, 602
616
full-adder,
Gray-code relation,
442
Trivial proof, 61
EXCLUSIVE-OR
428-432
713 of a fuzzy binary relation, of a relation, 383 WarshalPs 407-412, algorithm,
Transitive
482
nondirected, 469
AND
tree, 506
607
Transitive
vertex,
Triple primes, 76
of an algorithm, 404 Termination in formal power series, 239 Tetrahedron, edge graph of, 458
539
functions, 240
178
vertex, 442
The Towers of Hanoi, see Transformation, 419
691
38
Total order
for 281-285
Subtree, 482, 507
\"The
partition
Torus,
solutions
recurrence relations,
510-512
trivial,1469 of a set,
Topological sorting,
3-4
191 713
657, 686,
Representatives Problem,
Thin directed
700
506
parent
relation, 726
System of Distinct
relation,
486
edges, 483
ordered,
coefficients, relation,
of a fuzzy binary of a similarity
Terminal
components, 391-392 80-81 Subject-predicate analysis, Subnormal fuzzy set, 700 connected
directed, seeDirectedtrees
minimal
binary relation, 339, 340
of binomial
Tautology,
of, 455-456
descendant in,482
notation, 471-472
Tail of a sequence,282
334, 452
509-510
binary,
defined,468
leaf of, 482
of fuzzy sets, 732 of sets, 5
t-part
Isomorphism
relationships,
complete
difference
Mevelset, 708
584
Boolean,
Subalgebra,
The Subgraph
combinatorial
internal
directed graph, 438 relation on a set, 11
Symmetric
Strongly connected vertices, 391-
search,
height of, 501
Symmetric closure of a relation,
of a
see Binary trees 512-514
binary,
full,
48, 49
hypothetical,
Symmetry
B-tree,503-504
height-balanced,
Symmetrical
solving, see
Strategies
unit;
minimization of
383
register,
Stirling number of the
see also Arithmetic logic Boolean functions, disjunctive, 49
Institute, 722
Research University,
Trees
economy,
Syllogism
SSD,seeSeven-segment display SSI, see Small scaleintegration Stanford
596-600,
609, 610
494 of, 480-482
Stanford
602, 603
function,
NAND function, 602,603 NOR function, 602, 603
seven-segment display,
algorithm,
518
514-515,
501-503
INVERTER
algorithm, 486-489
KruskaFs
537
multigraph, algorithms,
child in, 482
function, 601,
603
networks, see Networks
Traverse (path), 389
binary
604
converter),
INCLUSIVE-OR
defined,480
directed,
600-601
gate minimization,
BFS, 482-485
Cayley's
596
gate,
724
727
improvement,
Traversal
function, 602,
EXCLUSIVE-OR
339-340
relation, systems,
Traversable
596
equivalent,
of a binary in expert
Transport
601, 603
AND function, 419
sort, 428-432 633, 638, 640
topological
mechanisms
48, 49
rule,
converter,
half-adder,
to binary-code 604
615
INCLUSIVE-OR function, INVERTER function, 602 623, 625
multiplexers,
NAND function, 602 NOR
function,
602
seven-segment display, 597 Twin
primes,
76
601
751
Index Boolean
2-valued
2's complement
134-
function,
136
form,
620-621
Venn
defined, 311
312-315 319 polynomials
315-317 Uniform probability density function, 732
602
connected
Unilaterally
391-392 Union
of fuzzy of graphs,
of sets, 4-5 Universal
dual
generalization,
98
Universal quantifier, 83-87, 89-91 Universal
set,
2-3
Universal specification, 97-98 Universe (of discourse), 2-3, 81-82 Unordered of a set, 181partition
184
Unordered
selection
Unsaturated
Unwarranted of, 29-30
edge,
of objects, 639
assumptions, fallacy
Upper bound of a set, 364 Vacuous
proof,
61
Valid inference, 46-47 base (VKB), Value knowledge
725-727
600 (VLSI), circle\" \"Vicious see Value VKB,
439
VLSI, see Very
descendant, 482
379
143
569
graph,
out
into,
of,
638,
640
567 in directed
of,
500-501
\"hub,\" initial,
442
internal, 482
634
439
labeling of, 674-675 left child, 507 level of, in rooted tree, 469 level of, in forest, 501 level-order index, in binary tree,
509
scale
large
of an argument, S., 402, 407
Warrants Warshall,
19-20
Warshall's algorithm, 407-412,539 M. E., 464
Watkins,
Weakly connected vertices, 391-
392
333, 439
intermediate, isolated,
forest,
457
in-degree,
fallacy, 29 knowledge base
437
greedy algorithm for coloring, height
391-392
integration
edges between, joining, 388 endpoints, flow
connected, 391-392
connected,
Very large scaleintegration \"
332
degree,
unilaterally weakly
cycle, 388
731
389
traverse,
638
472
vertex,
391-392
terminal, 442
covering of edges,695 defined,
sets, 705, 457
of relations,
equation,
633,638, 640
connected,
strongly
connected, 388, 472 cut
vertices,
388
sink, source,
558, 567
conversation
507
child,
simple path,
729-731
388
coloring,
507
quasi-strongly connected, 498root, 482
507
child, 482,
333, 439
482,
parent,
502-
729-731
OR-VERTEX,
out-degree,
right
ancestor, 482 AND-VERTEX,
503
500
439
adjacent,
circuit,
logic symbols, 601-
Uniform-shape
paths,
Vertices of graphs
for products of and exponentials,
solutions
trial
444
of a graph, 442
labeling
Vertex-disjoint
for polynomials,
solutions
trial
Vertex
for exponentials,
solution
trial
path, 388 of, in directed tree,
number
567
of
out of, 638, 640
flow into,
nondirected
6, 212, 214 of a graph, 558,
diagrams, coloring
Vertex
coefficients,
method
neighbors, 439 net
606
diagram,
Venn, John, 6
Uncountable sets, 367
204-205
(Contd.)
of graphs
Vertices
Vandermonde's identity, Veitch, E. W.. 606 Veitch
Undetermined
640
of a flow,
Value
for sets, 13 of integers,
function
Well-defined
Well-ordered property 105
Well-ordered sets, 366-367 D. J. A., 565 Welsh, Welsh-Power
algorithm,
565-566
Wheel graph, 457, 562-563 Working
backward,
26-27
Working forward, 20-21 Zadeh,
L. A., 699