Ford-Fulkerson algorithm Created 2026-09-24 Updated 2026-09-29
The Ford-Fulkerson algorithm repeatedly augments a feasible flow along an augmenting path. When no such path remains, the source-reachable vertices in the residual network define a cut of capacity equal to the flow value, proving optimality by the max-flow min-cut theorem.
Past exam of the mathematics course of the University of Cambridge 2019 ib Paper 4 20H a Solution Created 2026-09-24 Updated 2026-09-29
The max-flow min-cut theorem states that in a finite flow network, the maximum value of a feasible source-to-sink flow equals the minimum capacity of a source-to-sink cut.
First consider any feasible flow and any cut with and . Summing flow conservation over the vertices in cancels all contributions from edges internal to and givesThus every flow value is at most every cut capacity.
A maximum flow exists because the feasible flows form a nonempty compact subset of a finite-dimensional Euclidean space and the flow value is continuous. Let be maximum and form its residual network. If there were an augmenting path from to , increasing by the path's positive bottleneck capacity would contradict maximality. Let be the set of vertices reachable from in the residual network. Then . Every original edge from to its complement is saturated, while every original edge entering carries zero flow; otherwise the corresponding forward or reverse residual edge would make its other endpoint reachable. ConsequentlyThe general upper bound is attained by this flow and cut, proving the theorem.
Past exam of the mathematics course of the University of Cambridge 2019 ib Paper 4 20H c Solution Created 2026-09-24 Updated 2026-09-29
Assume the capacities are integers and begin with the zero flow. Inductively, if every edge flow is an integer, then every forward residual capacity and reverse residual capacity is an integer. The bottleneck on an augmenting path is therefore a positive integer. Augmenting by it changes every affected edge flow by an integer, so all edge flows remain integral.
Each augmentation raises the flow value by at least one. On the other hand, every feasible flow satisfiesand the right side is a finite integer because the network is finite. There can therefore be only finitely many augmentations. When the algorithm stops, no augmenting path remains, and the source-reachable cut in the residual network has capacity equal to the current flow value. The max-flow min-cut theorem proves that the terminating flow is maximum. This proves both termination and the Integrality of the Ford-Fulkerson algorithm.