9E

Cuts and the max-flow min-cut theorem

Cuts in a flow network, finding the capacity of a cut (forward edges only), the maximum-flow minimum-cut theorem, and using it to judge upgrades and whether a network can meet demand.

In 9D you built a flow up path by path. But how do you know you've reached the maximum, rather than just run out of ideas? Cuts answer that. They also tell a water authority exactly which pipe to upgrade, and which upgrades would be money down the drain.

What is a cut?

A cut is a set of edges that, if removed, stops all flow from the source to the sink. Draw it as a line through the network that separates the vertices into two groups: the source side (containing S) and the sink side (containing T).

The capacity of a cut is the total capacity of the edges it crosses from the source side to the sink side. Edges that cross the other way, from the sink side back to the source side, are not counted: nothing travelling from S to T needs them to get across the line.

Capacity of a cut
$$\text{capacity} = \text{sum of capacities of edges from the source side to the sink side}$$
Example 1●

For the network in 9D (S→A $5$, S→B $4$, A→B $2$, A→T $3$, B→T $6$), find the capacity of every cut.

There are four cuts: source side $\{S\}$, $\{S, A\}$, $\{S, B\}$, $\{S, A, B\}$.
Each cut is a way of splitting A and B between the two sides. S is always on the source side and T on the sink side.
S→A $+$ S→B $= 5 + 4 = 9$
Source side {S}: the edges leaving it.
S→B $+$ A→B $+$ A→T $= 4 + 2 + 3 = 9$
Source side {S, A}: edges from S or A to B or T.
S→A $+$ B→T $= 5 + 6 = 11$
Source side {S, B}: edges from S or B to A or T.
A→T $+$ B→T $= 3 + 6 = 9$
Source side {S, A, B}: edges into T.
Minimum cut capacity $= 9$, which matches the maximum flow found in 9D.
The smallest is the minimum cut.

The maximum-flow minimum-cut theorem

Why? Every drop of water going from S to T must cross every cut. So no flow can be bigger than any cut's capacity, and in particular not bigger than the smallest. The theorem says that the best flow always reaches that limit exactly: the minimum cut is the bottleneck of the whole network.

In practice: find a flow by sending it along paths, find a cut with the same value, and you have proved both are optimal. If they don't match, keep looking. Either the flow can go higher or there is a smaller cut.

InteractiveCut the pipes
Try this

This is the water network from 9D. Click pipes to cut them. Cut S→A and S→B first and read the capacity. Then clear and cut A→C and B→D. Why does C→B not count, even though it crosses between the two sides?

Press Show the minimum cut, then upgrade B→D one step at a time. Does the network meet the town's demand of $15$ ML/day? What happens to the minimum cut when you upgrade B→D past $9$?

Example 2●●

The water network has S→A $9$, S→B $7$, A→B $3$, A→C $6$, C→B $2$, B→D $8$, C→T $7$, D→T $9$ (ML/day). Find the capacity of the cut with source side $\{S, A, B\}$, and show it equals the maximum flow.

A→C $= 6$ and B→D $= 8$
List edges crossing from {S, A, B} to {C, D, T}.
C→B is not counted.
C→B also crosses the line, but from the sink side back to the source side.
Capacity $= 6 + 8 = 14$
Add the forward edges.
S–A–C–T: $6$. S–B–D–T: $7$. S–A–B–D–T: $1$. Total $14$.
Find a flow of 14 to match.
Maximum flow $=$ minimum cut $= 14$ ML/day.
A flow and a cut with the same value prove both are the best possible.

Meeting demand and choosing upgrades

If a town needs more than the maximum flow, the network can't meet demand, however the water is routed. To raise the maximum flow you must raise the capacity of every minimum cut, so the upgrade has to be on an edge in the minimum cut. Upgrading any other pipe changes nothing.

Example 3●●●

The town supplied by the network in Example 2 needs $15$ ML/day. Can the network meet this? If not, which single pipe should be upgraded, and by how much?

Maximum flow $= 14 \lt 15$, so demand is not met. Shortfall: $1$ ML/day.
Maximum flow is the minimum cut.
Try B→D from $8$ to $9$: the cut becomes $6 + 9 = 15$.
Only pipes in the minimum cut {A→C, B→D} can raise the maximum.
Source side $\{S, A, B, D\}$: A→C $+$ D→T $= 6 + 9 = 15$. Source side $\{S\}$: $9 + 7 = 16$. The minimum is now $15$.
Check that no other cut is now smaller than 15.
Upgrade B→D to $9$ ML/day. The network then carries exactly $15$.
Upgrading further gives nothing, because the cut {A→C, D→T} still caps it at 15.

Your turn

Traffic flows S→A $10$, S→B $8$, A→C $4$, A→D $7$, B→D $5$, C→T $9$, D→T $9$ (cars per minute). Find the capacity of the cut with source side $\{S, A, B, D\}$, and say whether it is the minimum cut.

Show the working

Edges from $\{S, A, B, D\}$ to $\{C, T\}$: A→C $4$ and D→T $9$. Capacity $= 13$. A flow of $13$ exists (S–A–C–T $4$, S–A–D–T $6$, S–B–D–T $3$), so by the theorem this is the minimum cut and the maximum flow is $13$.

Flashcards
Cut
A set of edges whose removal stops all flow from source to sink
Capacity of a cut
Sum of capacities of edges from the source side to the sink side only
Maximum-flow minimum-cut theorem
Maximum flow = capacity of the minimum cut
Practice
  1. A cut in a flow network is:

  2. When finding the capacity of a cut, you add the capacities of:

  3. A cut crosses four edges. Three go from the source side to the sink side, with capacities $7$, $6$ and $3$. One goes from the sink side to the source side, with capacity $4$. Find the capacity of the cut.

  4. The maximum-flow minimum-cut theorem says:

  5. For the network S→A $5$, S→B $4$, A→B $2$, A→T $3$, B→T $6$, find the capacity of the cut with source side $\{S, B\}$.

  6. The minimum cut of a network has capacity $20$. What is the maximum flow?

  7. A suburb needs $25$ ML/day. The minimum cut of its supply network is $22$ ML/day. By how much does supply fall short?

  8. Exam style: Find the maximum flow for S→A $10$, S→B $8$, A→C $4$, A→D $7$, B→D $5$, C→T $9$, D→T $9$, using the minimum cut.

  9. Exam style: In the previous network, only D→T can be widened. What is the smallest capacity of D→T that lets the network carry $15$ cars per minute?

Formula sheet