Augmenting path Created 2026-09-29 Updated 2026-10-14
An augmenting path is a source-to-sink graph path of positive capacities in the residual network. Its bottleneck is . Add to original flow on forward residual edges and subtract on backward residual edges. Each internal vertex still satisfies flow conservation, and the bottleneck guarantees every capacity constraint. The resulting feasible flow has strength of a flow . In the unit-capacity residual network example, , and the subtraction on is precisely what allows the value to rise from to .
Capacitated flow optimality conditions Created 2026-10-07 Updated 2026-10-14
For positive capacities and a feasible flow, optimality is equivalent to network dual potentials for which the network reduced cost is nonnegative at a lower bound, zero in the interior, and nonpositive at an upper bound. These signs make every feasible displacement nonnegative in total cost. They are also equivalent to absence of negative-cost cycles in the residual network. A zero-capacity edge is fixed and imposes no reduced-cost sign condition.
Cut capacity Created 2026-10-07 Updated 2026-10-18
The cut capacity of , with the complement of a set, isOnly outward directed edges contribute; incoming and internal edges contribute nothing.[ref]
FordFulkerson.java. Algorithms, 4th edition by Robert Sedgewick and others; Sedgewick and Wayne, FordFulkerson.java, check method, lines 196–203: sum capacities only from the source side to its complement
Here is the accounting behind the bound, using nonnegative original edge amounts in a finite flow network. Sum the divergence of a flow over the vertices in :An edge with both endpoints in appears once with a plus sign at its tail and once with a minus sign at its head, so those contributions cancel. An outward edge appears only with a plus sign; an incoming edge appears only with a minus sign. Since , and every other vertex satisfies flow conservation, the left side is the flow value. ThusThe inequality uses two facts separately: each forward flow is at most its flow network edge capacity, and each backward flow is nonnegative. This is the weak duality bound underlying the max-flow min-cut theorem. It is an accounting proof, requiring no choice of augmenting paths.
For in the running example, explicitly add the two divergences of a flow:The internal edge cancels. The edge is a genuine original directed edge entering , so its flow is subtracted; this is different from a backward edge in a residual network. Its flow network edge capacity is neither added to nor subtracted from cut capacity, which remains .
Equality in the bound holds precisely when every outward edge is saturated and every incoming edge carries zero flow, becauseand every term is nonnegative. For the two outward edges are saturated and there are no incoming edges, so the gap is zero. For all outward edges are still saturated, but the incoming flow of gives a gap of . This explains exactly why the second cut of a flow network is not a minimum cut.
Directed cycle Created 2026-10-07 Updated 2026-10-14
A closed directed path whose vertices are distinct except for the common start and endpoint is a directed cycle. In a residual network, augmenting around a directed cycle preserves flow balance. A negative total cost on such a cycle gives an improving displacement for a minimum-cost flow.
Flow network Created 2026-09-24 Updated 2026-10-14
A flow network is a directed graph with distinct source and sink vertices and a nonnegative flow network edge capacity on each directed edge . In the finite setting here, every flow network edge capacity is a finite real number. A feasible flow assigns a nonnegative amount to each original directed edge, satisfies the capacity constraints, and obeys flow conservation at every other vertex:These are nonnegative arc amounts. The antisymmetric convention in flow instead records net amounts , taking a missing arc amount as zero. The two conventions express the same flow conservation; keeping them distinct makes backward residual network edges easier to interpret.
Think of vertices as routers, directed edges as communication links, flow network edge capacities as available bandwidth, and flow as a steady transmission rate. An intermediate router can distribute incoming traffic among outgoing links, but flow conservation prevents it from creating traffic. The maximum flow problem asks how much total traffic can pass from to , allowing several graph paths to share the work. The same flow network language models transportation and abstract resource allocation.[ref]
https://ocw.mit.edu/courses/6-854j-advanced-algorithms-fall-2008/4064d889e5033a9915327a777d12b592_notes_flow.pdf. Goemans, Network flows, introduction and maximum flow formulation
Our running flow network has vertices and exactly five directed edges, with flow network edge capacitiesThe cross edge lets traffic entering use spare capacity on . With this edge removed, the two separate graph paths can carry only ; including it will let the maximum flow reach . Thus a link's usefulness depends on the rest of the flow network, rather than just its own flow network edge capacity.
Flow network edge capacity 2026-10-05
A directed edge capacity is the upper bound on the feasible nonnegative flow through that edge. In a residual network, its forward residual capacity is and its backward residual capacity is . Increasing every edge capacity need not increase the maximum flow by that same amount, because a cut of a flow network can contain several edges.
Ford-Fulkerson algorithm Created 2026-09-24 Updated 2026-10-14
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.
Max-flow min-cut theorem Created 2026-09-24 Updated 2026-10-14
For a finite flow network with finite nonnegative real flow network edge capacities, the greatest strength of a flow of a feasible flow equals the least cut capacity of a source-to-sink cut of a flow network:For a maximum flow, the vertices reachable from the source in the residual network define a minimum cut whose outgoing original edges are saturated and whose incoming original edges carry zero flow.[ref]
https://courses.csail.mit.edu/6.854/21/Notes/n06-flow.html. Karger, MIT 6.854 Notes 6, maximum-flow optimality conditions
Why is a cut of a flow network an upper bound? Sum flow conservation on its source side . Internal edge contributions cancel, leavingOnly directed edges leaving contribute to cut capacity. Directed edges entering are subtracted in net flow, so adding their capacities to the upper bound would lose the intended bottleneck. This inequality is weak duality; the theorem says the bound is attained, an instance of strong duality. Its beauty is that a routing plan and a separating boundary independently witness each other's optimality.
In the running flow network, the two internal vertices give four possible source sides. For , the cut capacity is . For it is . For it is ; the incoming edge contributes nothing to that cut capacity. Finally, gives . Thus the minimum cut has cut capacity , matching the explicitly computed maximum flow.
Maximum flow of value five and two minimum-cut certificates
. Labels show flow/capacity on each directed edge. The shaded source sides give cuts of capacities three plus two and two plus one plus two, both equal to the flow value. Details.Ford and Fulkerson's 1956 paper opens with a railway-capacity question attributed there to T. Harris and proves a minimal-cut theorem as Theorem 1. Its original formulation uses graph paths carrying nonnegative amounts; the residual reachability certificate for maximum flow below gives the finite directed flow network proof used here.[ref]
https://doi.org/10.4153/CJM-1956-045-5. Ford and Fulkerson, Maximal Flow Through a Network, Canadian Journal of Mathematics 8 (1956), pp. 399–404
Maximum flow problem Created 2026-10-05 Updated 2026-10-20
The maximum flow problem maximises the strength of a flow from a source to a sink subject to flow conservation and flow network edge capacities. For the nonnegative arc amounts used in flow network, its objective is net outflow from the source:The equality follows by summing flow conservation over all internal vertices. Incoming source flow must be subtracted: merely circulating traffic through does not deliver more to . The max-flow min-cut theorem identifies the optimum with the least cut capacity of a cut of a flow network. A feasible flow and a cut of a flow network of equal value certify optimality without requiring a particular choice of augmenting paths.
For the five-edge flow network with flow network edge capacities , takeEvery capacity constraint holds with equality. Flow conservation at is , and at it is . The strength of a flow is , also entering . This flow consists of units on the graph path , on , and on . The cut of a flow network with source side has cut capacity , so no feasible flow can do better.
Even a seemingly poor first augmenting path , carrying , does not cause failure in this example. It leaves residual network capacity along and along . These two subsequent augmenting paths yield values , , and , and produce exactly the flow above. Backward residual network edges become essential in the unit-capacity example under residual network, where this same first choice blocks every unused forward route.
Discrete assignment is another reason to study maximum flow. Put unit-capacity edges from to job vertices, from each job to eligible worker vertices, and from workers to . An integral flow selects a matching in a graph: each job and worker participates at most once, and the strength of a flow counts assigned jobs. The integral max-flow theorem therefore turns maximum cardinality assignment into maximum flow. Minimizing assignment costs is the related assignment problem, modeled by minimum-cost flow.[ref]
https://ocw.mit.edu/courses/6-854j-advanced-algorithms-fall-2008/4064d889e5033a9915327a777d12b592_notes_flow.pdf. Goemans, Network flows, assignment formulation
Past exam of the mathematics course of the University of Cambridge 2002 ib Paper 4 5H Solution Created 2026-09-24 Updated 2026-10-14
Consider a finite directed flow network with source , sink , and nonnegative finite flow network edge capacities . A feasible flow assigns to each arc and satisfies flow conservation at every vertex except . Its value is net outflow from , equivalently net inflow to . A maximal flow here means a flow of greatest value, also called a maximum flow. A source–sink cut of a flow network is a partition with , ; its cut capacity is , summing directed arcs from to its complement.
The max-flow min-cut theorem statesFor any feasible flow and cut, summing flow conservation over vertices in cancels internal arcs and gives . This proves the upper bound by every cut.
For the reverse bound, a maximum exists: the feasible set is a nonempty closed subset of the bounded product , hence compact, and is continuous. Choose a maximizing flow . Its residual network has a forward arc for unused capacity and a reverse arc for cancellable flow , retaining original-arc identities if necessary. If a residual path joined to , the minimum of its positive residual capacities would be positive. Increasing forward flows and cancelling reverse flows by this amount would preserve all constraints while increasing , a contradiction.
Let consist of vertices reachable from through positive residual arcs. Then . An original arc from to must be saturated, since otherwise its forward residual arc would make its endpoint reachable. An original arc from to must carry zero flow, since a positive reverse residual arc would again extend reachability. ThusThe upper bound and this equality prove the theorem and exhibit a residual reachability certificate for maximum flow. The argument works for real capacities and does not assume that an arbitrary augmenting-path algorithm terminates in finitely many steps.
Past exam of the mathematics course of the University of Cambridge 2004 ib Paper 4 10G Solution Created 2026-09-24 Updated 2026-10-14
Take a finite directed flow network with distinct source , sink and finite nonnegative flow network edge capacities. A flow assigns to each edge with and obeys flow conservation at every vertex except . Its value is net outflow from the source, . A maximal flow here means a maximum flow: one with greatest value among feasible flows. A source-to-sink cut of a flow network is a partition with , ; its cut capacity is , counting directed edges leaving .
The max-flow min-cut theorem statesSumming conservation over cancels internal edges and givesThis is the upper bound for every flow and every cut. To prove equality, a maximum exists: the feasible edge vectors form a nonempty closed bounded subset of a finite-dimensional real space, and flow value is continuous.
For a maximum , construct its residual network. Each edge has a forward residual edge of capacity and a backward residual edge of capacity ; retain those of positive capacity. If a residual source-to-sink path existed, augment by the smallest residual capacity on that finite path. Increasing original forward flows and decreasing backward flows preserves all feasibility conditions and increases value, contradicting maximality. Thus no such augmenting path exists.
Let be the vertices reachable from in the residual network. Then . Every original edge leaving is saturated, since otherwise its positive forward residual edge would make its endpoint reachable. Every original edge entering has zero flow, since otherwise its backward residual edge would give the same contradiction. HenceTogether with the universal upper bound this proves equality and identifies a minimum cut. This proof covers real capacities without assuming that an augmenting-path algorithm terminates after finitely many steps. Merely being impossible to increase all edge flows coordinatewise is not the optimization meaning of “maximal” used in the theorem.
Past exam of the mathematics course of the University of Cambridge 2004 iii Paper 33 2 Solution Created 2026-10-03 Updated 2026-10-14
Given a feasible network flow , an original directed edge has forward residual capacity and a reverse residual arc of capacity . A source–sink graph path in this residual network permits an augmentation by the minimum residual capacity along it: increase forward flows and decrease the corresponding reversed flows. Capacities and flow conservation are preserved, and the flow value increases by that amount.
If no residual source–sink graph path exists, let be the vertices reachable from the source. The sink is outside . Every original arc from to its complement is saturated, and every original arc back into has zero flow, since a positive reverse residual arc would make its tail reachable. Conservation therefore givesThe flow equals this cut capacity, so the max-flow min-cut theorem proves it is maximum.
Termination needs a capacity or path-selection assumption. For integer capacities, starting from zero, every residual capacity and augmentation is integral; each augmentation increases the value by at least one, and the value is bounded by the total source-outgoing capacity. The algorithm therefore terminates. Rational capacities can be scaled to integers. With arbitrary real capacities, unrestricted graph path choices do not guarantee finite termination. A valid uniformly terminating implementation is the Edmonds–Karp algorithm, choosing a shortest residual graph path each time.
Here is why that choice works independently of numerical capacity sizes. Residual distances from the source cannot decrease after augmenting along a shortest graph path. Every newly created residual arc is the reverse of a graph path arc; if it could cause the first distance decrease, its previous distance relation would contradict that decrease. When an arc is saturated on a shortest graph path, . Before the same direction can be saturated again, it must have been restored by a reverse augmentation on a shortest graph path, at which time . Each arc is consequently critical only times. There are arcs and each augmentation saturates at least one, giving augmentations, each found by breadth-first search in time. Thus the shortest-path Ford–Fulkerson implementation terminates and finds a maximum flow in arithmetic operations.
For sports elimination by maximum flow, first give the target team all its remaining wins. This cannot hurt its chance to finish strictly ahead: changing a result to favour it also removes a rival's win. Let be its resulting win count. If any rival already has at least wins, strict victory is impossible. Otherwise give each unordered pair of rivals one game node. Its incoming capacity is , and its two outgoing arcs go to the participating team nodes. Their capacities may be replaced by the finite numbersince no arc can need more than the total number of remaining rival games. Team has sink capacity .
An integral flow of value saturates all game-node incoming arcs. Its two outgoing amounts allocate exactly wins to the two teams; the team-sink caps keep each rival strictly below . Conversely any successful completion of the league specifies such a flow. Integral capacities and augmentation give an integral maximum flow, soafter the initial negative-capacity rejection. Each actual game is counted once: making independent nodes for both ordered pairs would double-count it.
The network has nodes and arcs. If each input integer has at most bits, its derived capacities have bits. The shortest-path algorithm above uses arithmetic operations, each on integers of polynomial bit length. Therefore the decision problem belongs to P, even with part of the input. If is fixed, even the basic integral-augmentation bound is polynomial in . If varies, that particular bound is only pseudopolynomial; it is the shortest-path implementation that establishes polynomial bit complexity.
Past exam of the mathematics course of the University of Cambridge 2005 ib Paper 4 20D Solution Created 2026-09-24 Updated 2026-10-14
Start with a feasible network flow, meaning capacity bounds and flow conservation at every vertex other than source and sink. Its residual network has, for an arc with capacity and current flow , a forward residual capacity and a reverse residual capacity . A reverse arc allows earlier flow to be cancelled. The Ford-Fulkerson algorithm repeatedly finds a residual source-to-sink augmenting path, takes the smallest residual capacity on it, and augments by , increasing forward flows and decreasing reverse flows as appropriate. Feasibility is preserved and the total flow increases by .
For rational capacities and initial flows, choose one common denominator and scale all quantities by . Every residual capacity and augmentation is then integral; each augmentation increases the integer-valued flow by at least one. The flow value is bounded by the finite sum of capacities out of the source, so termination occurs after finitely many augmentations. When no residual path remains, let be the vertices reachable from the source. Every original arc leaving is saturated and every original arc entering carries zero flow, or its reverse arc would extend reachability. Conservation then makes the flow value equal to the capacity of the cut . Every feasible flow is bounded by that cut capacity. Thus the terminating flow is globally optimal, proving the needed max-flow min-cut theorem conclusion.
For the given directed graph, begin at zero. One valid sequence of augmentations is:
Each amount is the current path bottleneck. The resulting nonzero arc flows areevery other arc has zero flow. Directly summing incoming and outgoing flows verifies conservation, and every displayed flow is at most its printed capacity. A minimum-cut certificate isIts only outgoing arcs are , , and , with capacities . ThereforeThe matching feasible flow and cut prove optimality independently of the augmenting-path choices.
Past exam of the mathematics course of the University of Cambridge 2005 iii Paper 40 5 Solution Created 2026-10-03 Updated 2026-10-14
Label the two intermediate vertices . The four outer edges have capacity and the middle edge has capacity one. The cut separating from the other vertices has capacity , and the two paths and can each carry . Thus the maximum flow is .
A fast run of the Ford-Fulkerson algorithm chooses those two direct paths and augments by on each: it terminates in two augmentations. One augmentation cannot suffice, because every initial path has bottleneck at most .
For a run with augmentations, first choose and augment by one. The middle edge then has net flow from to . Its reverse residual capacity is , not one. Alternate crossing paths, next , then , and so on. Each of the next augmentations has bottleneck two. More explicitly, after crossing augmentations, , the total flow is , and the outer-edge flow totals on the pairs and are and in one order or the other. The middle net flow is . The next opposite crossing path uses the less-loaded outer pair and has reverse-middle capacity two. Until , its outer residual capacities are at least two.
After these augmentations, one outer pair is full and the other has one unit left. One final opposite crossing augmentation of one reaches . The total amounts are , then copies of , then , giving exactly augmentations. For the middle block is empty and this gives two augmentations as well. These are explicit requested path-choice histories. In an undirected network, need not be a bound on every possible history: for , choosing the crossing path, the two direct paths, and then the crossing path again gives four successive unit augmentations.
Direct and crossing flow augmentations, including reverse residual capacity two on the middle edge
. Details. For a general undirected network, let be the antisymmetric net flow. Feasibility gives , so the directed residual network has nonnegative capacities . For any cut with , , conservation at the internal vertices givesThus its outgoing residual cut capacity isThe subtracted flow value is the same for every cut. Taking the minimum and applying the max-flow min-cut theorem to the original and residual networks proves the residual maximum flow is the remaining optimality gap identity
Suppose now , and let consist of vertices reachable from through residual arcs of capacity at least . If , every outgoing arc from has capacity strictly below , since its head would otherwise be reachable. At most original undirected edges cross this cut, and each supplies exactly one outgoing directed arc. Hence , contradicting the residual minimum-cut value . Therefore , and a widest augmenting path has bottleneck at least . When , the current flow is already optimal and no such path is needed.
Let be the remaining residual maximum flow after augmentations of the modified rule, starting from zero flow. Its chosen widest path increases the flow by at least , soThis is the geometric convergence of widest-path augmentation. For , . Starting from zero with integer capacities keeps all flow values and residual optimality gaps integer. Thus makes and hence , giving termination in augmentations for . If , one positive integer augmentation suffices; if , none is required. A uniform statement is . With , a nonzero flow is also completed in one augmentation, consistent with the recurrence's zero contraction factor.
Past exam of the mathematics course of the University of Cambridge 2007 ib Paper 1 8C Solution Created 2026-09-24 Updated 2026-10-14
For a finite directed flow network with nonnegative finite edge capacities, a source and a distinct sink , the max-flow min-cut theorem states that the largest feasible flow value equals the smallest capacity of a cut separating from . A feasible flow has on each directed edge and flow conservation at all other vertices. Its value is the net outflow at .
For any cut containing but not , sum conservation over vertices of . Internal edges cancel, givingThus every flow value is bounded by every cut capacity.
A maximum flow exists: the feasible set is nonempty, closed and bounded in a finite-dimensional edge-coordinate space, hence compact, and the flow value is continuous. For such a flow, form its residual network: each original edge has forward residual capacity and backward residual capacity . Keep these as edge-labelled arcs if the original network already has edges in both directions. If a directed positive-residual path joined to , increasing the flow along its forward arcs and decreasing it along its backward arcs by the path's positive bottleneck capacity would preserve feasibility and increase the value. That contradicts maximality.
Let be the vertices reachable from by positive residual arcs. Then . Every original edge from to is saturated, otherwise its forward residual arc would extend reachability. Every original edge from to has zero flow, otherwise its backward residual arc would extend reachability. ThereforeTogether with the bound for every flow and cut, this provesThe compactness step makes the proof valid for arbitrary real capacities; it does not assume that a particular augmenting-path algorithm terminates after finitely many augmentations.
Past exam of the mathematics course of the University of Cambridge 2010 iii Paper 35 3 a Solution Created 2026-10-03 Updated 2026-10-14
For a finite directed flow network with source , sink and nonnegative finite flow network edge capacities , the max-flow min-cut theorem statesHere feasible arc flows satisfy and flow conservation at every vertex except . Their strength of a flow is the net outflow at . A cut of a flow network has cut capacity equal to the sum of capacities on arcs directed from to .
For any feasible flow and any such cut of a flow network, summing flow conservation over cancels internal arcs and givesThus every flow value is bounded by every cut capacity.
A maximum flow exists: the feasible arc-flow vectors form a nonempty closed subset of the finite-dimensional compact box , and flow value is continuous. Choose one, . Its residual network has a forward arc of capacity and a reverse arc of capacity for each original arc. If a residual – augmenting path existed, its smallest positive residual capacity would permit increasing forward flows and decreasing reverse flows along the path. This preserves all capacity bounds and internal flow conservation while strictly increasing , a contradiction.
Let be the vertices reachable from through positive residual arcs. Then . Every original arc leaving is saturated, since otherwise its endpoint would also be reachable. Every original arc entering carries zero flow, since a positive flow would create a residual reverse arc leaving . ThereforeTogether with the universal upper bound, this proves both optimality claims and the theorem. This existence argument works for real capacities; it does not assume that arbitrary choices in the Ford-Fulkerson algorithm terminate. For integer capacities, positive augmentations are integral and increase the flow value by at least one, so the algorithm does terminate.
Past exam of the mathematics course of the University of Cambridge 2010 iii Paper 35 3 b Solution Created 2026-10-03 Updated 2026-10-14
Start with zero flow and apply the Ford-Fulkerson algorithm. The following augmenting paths and bottlenecks use the capacities in the original PDF diagram:For example, the second path is limited by the remaining capacity two on and by capacity two on . After the third augmentation, has residual capacity one; the fourth path supplies it through . Every displayed increment is the smallest residual capacity of its path.
The resulting arc flows areHere denotes . These satisfy every capacity bound and flow conservation. The final residual network has source-reachable set . Its outgoing arcs are , , and , with capacities , all saturated. ConsequentlyThis is a minimum cut, and the equal flow and cut values certify optimality by the max-flow min-cut theorem. The cut immediately before node eight also has capacity six, so the minimum cut is not unique.
Past exam of the mathematics course of the University of Cambridge 2013 iii Paper 38 3 a Solution Created 2026-10-03 Updated 2026-10-14
Label the vertices (left), (upper middle), (lower middle), (upper right), (lower right). Use the flow balance convention outgoing minus incoming equals supply. The printed initial flows, in the order , areThey obey all capacity constraints and the flow balances . The four strictly interior edges form a spanning tree. The remaining edges are at a bound: at zero, and at their upper bounds. Thus this is already a feasible network simplex tree basis; no artificial feasibility phase is needed. Its total cost is .
For a tree, choose network dual potentials with and zero network reduced cost on each tree edge. InitiallyThe nonbasic lower-bound edge has network reduced cost . Increase its flow and adjust around the graph cycle , reversing and . The available step is , so leaves at zero. This givesThe tree is now , and the potentials are .
Now is at its upper bound but has network reduced cost , so decreasing it improves cost. Its reverse residual network edge enters along the cycle . The forward edges increase; decrease. The step isThus leaves at its upper bound, andThe new tree has potentials .
The upper-bound edge now has network reduced cost . Enter its reverse direction along , decreasing and and increasing . The step is , so leaves at zero. The resulting flow isThe tree is , with potentials . The nonbasic edges have network reduced costs at its upper bound, at its lower bound, and at its lower bound. All have the correct signs, so there is no improving network simplex pivot. The next part proves these signs certify optimality.
Past exam of the mathematics course of the University of Cambridge 2013 iii Paper 38 3 b Solution Created 2026-10-03 Updated 2026-10-07
For a minimum-cost flow with bounds , the capacitated flow optimality conditions consist of primal feasibility and network dual potentials whose network reduced costs obeyFor a zero-capacity edge both bounds coincide and no sign restriction is needed; all capacities here are positive. These are the bound form of complementary slackness. To derive necessity directly, construct the residual network: a possible increase has original cost and a possible decrease has reverse cost . An optimal flow cannot admit a negative-cost directed cycle, since a positive step around it preserves flow balance and lowers cost. If there is no such cycle, connect a new source by zero-cost edges to every vertex and let be shortest-path distances. They exist because no negative cycle is reachable. For every residual edge , . Taking makes every residual network reduced cost nonnegative, exactly the displayed sign conditions: both directions exist for an interior edge.
Conversely, for any other feasible flow , equal flow balances giveEach summand is nonnegative at a lower or upper bound, and zero at an interior edge. Hence the sign conditions suffice for optimality as well.
For the final flow, use in the order . All four tree edges have zero network reduced cost, while have costs . More explicitly, every feasible flow satisfiesOur flow attains equality. This gives a direct cost certificate of 220. The strict signs also force , at any optimum; flow balance then fixes all remaining edges, so this flow is unique.
Past exam of the mathematics course of the University of Cambridge 2013 iii Paper 38 4 b Solution Created 2026-10-03 Updated 2026-10-14
Let the bipartite graph have parts . Add a source , a sink , capacity-one edges for and for , and capacity on each original edge directed . Use the max-flow min-cut theorem: maximum flow value equals minimum cut capacity. Also use Integrality of the Ford-Fulkerson algorithm: integral capacities admit an integral maximum flow, found by integral augmenting paths.
An integral flow selects a matching in a graph, because each left and right vertex carries at most one unit. Conversely every matching gives a unit flow along its selected paths. Hence maximum flow value equals maximum matching cardinality.
A minimum cut has capacity at most , whereas crossing even one original edge would cost . For its source side , no edge of the original graph runs from to . Thereforeis a vertex cover, and its cardinality is exactly the cut capacity. Conversely, given any cover , use . No original edge crosses this cut, because both its endpoints would otherwise be outside the cover; its capacity is . Thus minimum cut capacity equals minimum cover size, proving Kőnig's theorem for bipartite matching:For the algorithm, repeatedly find augmenting paths in the residual network, then take to be the vertices reachable from . Each integral augmentation increases flow by at least one; the total value is at most . Each reachability search takes time, so this procedure takes time. The network uses only polynomially many edges and integer capacities, yielding the requested polynomial-time algorithm and an explicit cover.



