Maxflow-Mincut Theorem
The maximum flow of a network is equal to the size of the minimum cut.
Proof:
We have the easy direction from Lemma (Maxflow is at Most the Mincut). So, in the reverse direction, consider the maximum flow , where it is impossible for us to create an augmenting path to apply lemma to increase it.
On the other hand, we can create a partial augmenting path. We start at the source, but we don’t need to end at the sink. It’s edges are in or reverse edges in . Let
Since there’s no partial augmenting path that ends at the sink, then the sink must be in . This allows us to define a cut with this partition.
I claim that . First, there is no edge from . Suppose by contradiction there was. But then this means there is a partial augmenting path with an endpoint in , contradicting the definition of . This implies the flow is equal to the capacity.
Likewise, we cannot have an edge from . Otherwise, the reverse of it would be , giving us a contradiction.
This allows us to compute :
where the last equality is by definition. But this tell us,
Indeed, for all flows ,
and for all cuts ,
Therefore the maxflow and mincut are equal.
Applications
We can apply this to Konig’s Theorem by turning it into a network graph where the directed edges are from , and that we can create an arbitrary source vertex connecting all of , (i.e. ) and an arbitrary sink vertex where . This gives a correspondence from matchings in , to flows in .
We can also apply this to Menger’s Theorem. Replace each edge with two directed edges in the opposite direction to form a network. If we can remove edges to separate , then it defines a cut . Then is at most the number of removed edges. But for a minimum cut, this is equal to the maxflow. Indeed, there exists a flow where .
If is a flow of size at least , then it contains edge disjoint paths. We can prove this by induction on . For , we start at and create a path by adding new edges to until we get stuck (in particular, ). Suppose we stopped at some vertex . For each ingoing edge to , we take an outgoing edge, except for the last one such that we cannot get stuck. At , the number of outgoing is ingoing plus . So, we cannot get stuck here. Thus we can only stop at .
For the inductive step, consider a path . We induct on , giving us edge disjoint paths. The proof is trivial from here.