- From the previous discussion,
we have that:
maximum flow ≤ capacity of min. cut
|
- To complete the proof, we
show that:
- There
exists
a cut C such that:
capacity of cut C = maximum flow
|
|
We will
construct the
cut C
from a maximum flow....
- Assume that
we have found a maximum flow
in the network
Now
construct
the following cut:
- X =
set of
vertices
that can be
reached
from source S
through
a flow-augmenting path
- Y =
all the other vertices
|
Example:
- Here is a basic network with
a maximum flow:
- Nodes that can
reached
from source S
through
a flow-augmenting path:
- This is the cut that we will
construct:
|
- We must prove the following:
- The above construction yields a
cut
I.e.:
- The source S
and the sink T
are in different sets !
|
- The total flow through the
cut is
equal to
the capacity of the
cut
|
We will prove the above by proving
3 special properties of this
construction
- Property 1:
the construct yields a
cut, meaning:
- S ∈ X
- T ∉ X
(i.e.:
T ∈ Y)
|
Proof:
- By the way the set
X is formed,
the source S
is always included in X.
I.e.:
- We will show
T ∉ X
(i.e.,
T ∈ Y)
by contradiction
Suppose:
- From the construction of the
cut C:
- X =
all vertices that can be
reached from source S
by a flow-augmenting path
|
- Because
T ∈ X,
then:
- There exists a
flow augmenting path
from
S → T
|
which means:
- the
current flow is
not maximum !!!!
|
- That contradicts the
given fact that the
current flow is
maximum !!!
|
- Taking stock:
- We have shown that:
- The source S and
the sink T are
in different parts
of the cut C:
|
|
Now we will show that:
- Total flow
over the cut is
equal to the
capacity of the cut
Recall:
- Capacity of a cut =
sum of the
capacity of
all
forward edges
|
|
- Property 2:
- For each forward edge e
in the
cut C:
Graphically illustrated:
|
Proof:
- Select an
arbitrary forward edge
A→B of the
cut
- A
∈
X,
and
- B
∈
Y
(i.e., there is
no
flow augmenting path from
S to
B)
|
- Because
A
∈
X,
there is a flow augmenting path from
S → A:
- If:
f(e) < c(e):
then:
- there will be
a flow augmenting path from
S → B
(by increasing the flow
through A → B) !!!
|
which mean:
- This contradicts the fact that:
B ∈ Y
|
- Property 3:
- For each backward edge e
in the cut
C:
Graphically illustrated:
|
Proof:
- Select an
arbitrary backward edge
B→A of the
cut
- A
∈
X,
and
- B
∈
Y
(i.e., there is
no
flow augmenting path from
S to
B)
|
- Because
A
∈
X,
there is a flow augmenting path from
S → A:
- If:
f(e) > 0:
then:
- there will be
a flow augmenting path from
S → B
(by increasing the flow
through A → B) !!!
- If we
decrease some
flow on
A→B,
the
|
|
which mean:
- This contradicts the fact that:
B ∈ Y
|
- Therefore, we have the following situation at this particular cut:
And therefore:
total flow = sum of f(e) for every forward edge e (f(e) = c(e) !!!)
= sum of c(e) for every forward edge e
= capacity of the cut
|
In other words:
- We found a cut that has the
capacity equal to the max. flow !!!
|
That completes the proof...
|