Flows in Networks III: The Circulation TheoremTextbook
Motivation
Many questions in operations research and combinatorics ask whether a system of linear inequalities on a network has a solution: can the demands at a set of warehouses be met from the supplies at a set of factories through roads of limited capacity; is there a nonnegative matrix with bounded entries whose row and column sums lie between given limits; can a periodic schedule be met when every activity has a minimum and a maximum rate. Chapter II of L. R. Ford, Jr. and D. R. Fulkerson's Flows in Networks (RAND Report R-375-PR, 1962; Princeton University Press, 1962, doi:10.1515/9781400875184) answers these questions by feasibility theorems: a system of flow constraints has a solution exactly when a family of inequalities, one for each set of nodes, holds.
The history in the chapter's first three sections is short. D. Gale proved the supply-demand theorem in 1957 (A theorem on flows in networks, Pacific J. Math. 7 (1957) 1073–1082). A. J. Hoffman proved the circulation theorem, with lower and upper bounds on every arc, in 1960 (Some recent applications of the theory of linear inequalities to extremal combinatorial analysis, Proc. Sympos. Appl. Math. 10, AMS, 1960), originally through the separation theorem for convex sets. Ford and Fulkerson derive all of these, and the two-sided variants, from the max flow min cut theorem of their Chapter I.
Setting
A network is a finite set of nodes together with a set of ordered pairs of distinct nodes, the arcs; there is at most one arc from to , but both and may be arcs. Each arc carries a real capacity . For a real function on the arcs and node sets ,
so is the total of on arcs leaving and the total on arcs entering . For a node set , ; for a node function , .
In §§1–2 the nodes are partitioned into sources , intermediate nodes and sinks (any of them may be empty). Sources carry a supply , sinks a demand . A function on the arcs is a feasible flow for the supply-demand problem when the net outflow is at most at every source, zero at every intermediate node, the net inflow is at least at every sink, and on every arc.
In §3 there are no distinguished nodes. A lower bound function with is given on the arcs, and a feasible circulation is a function on the arcs with
Formalization targets
Goal: Hoffman's circulation theorem (Chapter II, Theorem 3.1, p. 26)
For a network with capacities and lower bounds , a feasible circulation exists if and only if
Milestones
- Theorem 1.1 (p. 4), Gale's supply-demand theorem. The supply-demand constraints are feasible if and only if for every .
- Corollary 1.2 (p. 7). They are feasible if and only if for every some flow respecting the supplies, conservation and capacities delivers .
- Theorem 2.1 (p. 21). With two-sided bounds on the net outflow at sources and on the net inflow at sinks, feasibility holds if and only if, for all ,
- Corollary 2.2 (p. 22). The two-sided system is feasible if and only if each of the two one-sided systems (lower bound at sources with upper bound at sinks; upper bound at sources with lower bound at sinks) is feasible.
- Corollary 2.3 (p. 23). For , , : if one matrix meets , and another meets , , both with , then a single matrix meets all four row and column limits with .
- Theorem 3.2 (p. 28). With node bounds (no sign condition) on the net inflow at every node and arc bounds , feasibility holds if and only if
With this is the goal.
Significance
The circulation theorem is the most general of the chapter's feasibility criteria for directed networks: the supply-demand theorem, the existence of – flows between lower and upper arc bounds (Chapter I, §9), and the transportation-matrix criterion of Corollary 2.3 all follow from it or from its extension, Theorem 3.2, by adjoining arcs, and the rest of Chapter II applies them to systems of distinct representatives and (0, 1)-matrices.
All results of the mission have been proved for more than sixty years. None of them, in this form, is formalized on Prove2Me: the platform has decomposition results for circulations and max flow min cut statements in other conventions, but no Gale or Hoffman feasibility criterion. The mission produces machine-checked versions of the six numbered results and the goal over one shared notion of network, in the book's notation.
Difficulty
Necessity is the routine half of every theorem. Sufficiency asks for a flow built from a family of inequalities, one per node set, and constructing a flow arc by arc or node by node with local repairs gives no argument that the repairs stop or that all constraints hold at once. The statements also differ in ways that are easy to get wrong: §§1–2 bound the net outflow at sources but the net inflow at sinks, §3 bounds the net inflow everywhere, the node bounds of Theorem 3.2 carry no sign condition and may be negative, and Theorem 2.1 needs two inequalities per node set rather than one. Real-valued data rule out any argument by induction on integer flow values without a separate limiting step.
Formalization scope
Nodes form a Fintype with decidable equality; arcs are a Finset (N × N) with no loops; capacities and flows are real functions . A flow is required to vanish off , and every sum runs over arcs only, so the values of and off never matter. Supplies, demands and node bounds are real functions on all of whose values enter only through sums over the sets the book names (, , …). The partition is three pairwise disjoint Finsets covering . ranges over all subsets of , including and . Each section's sign convention is copied: §§1–2 bound the net outflow at sources and the net inflow at sinks, §3 bounds the net inflow. Corollary 2.3 is stated for real matrices indexed by Fin m × Fin n. All data are finite reals; no integrality is assumed.
Feasibility is always stated as the existence of a function on the arcs satisfying the book's displayed constraints. Defining feasibility through the cut condition itself, or through a linear-programming solver predicate, would make every theorem definitional and is ruled out.
Beyond the paper. One variant is posed beside the faithful goal: [Strengthened] Theorem 3.1, the circulation theorem for any real lower bound without (capacities stay nonnegative). The substitution reduces it to a supply-demand problem with nonnegative capacities , whose Gale condition is regardless of the sign of ; it implies the faithful statement.
A complete development needs Chapter I's max flow min cut theorem in some form (or the linear-programming duality theorem, or Farkas' lemma), the manipulation of arc sums over node sets, and the auxiliary-network constructions. The definitions of networks, arc sums and partitions are reusable by the later Chapter II missions. Proofs of any milestone, of the variant, and alternative proofs through LP duality are welcome.
Selected references
- L. R. Ford, Jr. and D. R. Fulkerson, Flows in Networks, The RAND Corporation, Report R-375-PR, 1962; Princeton University Press, 1962. doi:10.1515/9781400875184
- D. Gale, A theorem on flows in networks, Pacific Journal of Mathematics 7 (1957), 1073–1082. doi:10.2140/pjm.1957.7.1073
- A. J. Hoffman, Some recent applications of the theory of linear inequalities to extremal combinatorial analysis, Proceedings of Symposia in Applied Mathematics 10, American Mathematical Society, 1960, 113–127.
- L. R. Ford, Jr. and D. R. Fulkerson, Maximal flow through a network, Canadian Journal of Mathematics 8 (1956), 399–404. doi:10.4153/CJM-1956-045-5