A topic in the Open Knowledge Graph — a free, open map of 15,290 topics and the order to learn them in.

Max-Flow Min-Cut Theorem

Graduate Depth 67 in the knowledge graph ☐ I know this ☆ Set as goal
3topics build on this
284prerequisites beneath it
See this on the map →
Network Flow Models and Feasibility→→Menger's Theorem and Network Connectivity
graph-theory flows optimization

Core Idea

The Max-Flow Min-Cut Theorem states that the maximum flow from source to sink equals the minimum capacity of any cut separating them. This powerful result provides both a theoretical characterization and a practical algorithm for solving flow problems.

How It's Best Learned

Work through small networks by hand, computing flows and cuts to see the equality in action. Use the Ford-Fulkerson method to incrementally build flows.

Common Misconceptions

A cut's capacity is the sum of edge capacities crossing it, not the number of edges. Minimum cut is not the cut with fewest edges, but minimum total capacity.

Explainer

From your study of network flows, you know that a flow assigns a value to each edge — respecting capacity constraints and conservation (flow in = flow out at every internal vertex). The value of a flow is the total amount leaving the source. You also know that you can push flow along augmenting paths to increase the total flow. The Max-Flow Min-Cut Theorem provides the theoretical foundation for why augmenting path algorithms actually find the maximum: they stop precisely when the flow equals the minimum cut.

A cut is a partition of all vertices into two sets: S, containing the source, and T, containing the sink. Every path from source to sink must cross from S to T at least once. The capacity of the cut is the total capacity of edges going from S to T (forward edges only — backward edges from T to S do not count). This immediately implies that any flow ≤ any cut capacity: the flow must pass through the cut's forward edges, and can never exceed their combined capacity. This "weak duality" is easy to see — any cut gives an upper bound on the maximum flow.

The remarkable result is that these two quantities are not just bounded together — they are equal: max flow = min cut. The proof uses the idea of residual capacity. When Ford-Fulkerson terminates (no augmenting paths remain), define S as all vertices reachable from the source in the residual graph. Then T = V \ S contains the sink (otherwise there would be an augmenting path). Every forward edge from S to T must be fully saturated (otherwise the endpoint in T would be reachable), and every backward edge from T to S must carry zero flow (otherwise the tail in S would be reachable). Therefore the current flow value exactly equals the capacity of the S-T cut — proving equality.

The theorem is one of the great duality results in combinatorics and optimization. It connects two seemingly different questions — "how much can flow from source to sink?" and "what is the bottleneck in the network?" — and shows they have the same answer. Applications are wide-ranging: maximum matching in bipartite graphs reduces to max-flow (finding the minimum vertex cover equals the maximum matching, by König's theorem, which is itself a consequence of max-flow min-cut). Network reliability, airline scheduling, image segmentation, and supply chain optimization all use this theorem. Whenever you want to maximize throughput through a constrained network, or find the minimum set of resources to disrupt a network, the Max-Flow Min-Cut Theorem is the underlying guarantee that your algorithm will find the exact answer.

Practice Questions 5 questions

Prerequisite Chain

Understanding Zero → The Number Zero → Counting to Five → Counting to 10 → Counting to 20 → Counting a Set of Objects Up to 20 → Cardinality: The Last Number Counted → Matching Numerals to Quantities → Subitizing Small Quantities → Addition Within 10 → Making 10 as an Addition Strategy → Addition Within 20 → Doubles and Near Doubles → Doubles Facts Within 10 → Near Doubles Facts Within 20 → Mental Math Strategies for Addition → Mental Math: Adding and Subtracting Tens → Addition Within 100 → Repeated Addition as Multiplication → Multiplication as Equal Groups → Multiplication: Arrays → Basic Multiplication Facts Through 10 → Multiplication Facts Within 100 → Division as Equal Sharing → Division as Grouping (Measurement Division) → Division: Grouping (Repeated Subtraction) Model → Division: Fair Sharing Model → Division as Equal Sharing → Division as Grouping → Basic Division Facts → Division Facts Within 100 → Multiplication and Division Fact Families → Relationship Between Multiplication and Division → Division Facts as Inverse of Multiplication → Remainders and Quotients in Division → Division Word Problems → Multi-Step Word Problems → Solving Multi-Step Word Problems → Multiplication Word Problems → Division Word Problems → Introduction to Long Division → Factors and Multiples → Prime and Composite Numbers → Equivalent Fractions → Relating Fractions and Decimals → Decimal Place Value → Integers and the Number Line → Opposites and Additive Inverses → Absolute Value → Adding Integers → Subtracting Integers → Multiplying Integers → Introduction to Exponents → Order of Operations → Integer Order of Operations → Variable Expressions → The Distributive Property → Variables and Expressions Review → Introduction to Polynomials → Adding and Subtracting Polynomials → Multiplying Polynomials → Factorial → Permutations → Combinations → Counting Principles: Addition and Multiplication Rules → Introduction to Graph Theory → Network Flow Models and Feasibility → Max-Flow Min-Cut Theorem

Longest path: 68 steps · 284 total prerequisite topics

Prerequisites (1)

Leads To (1)