TCSLib

135 Graph Theory — Karger Min Cut Trace

135.1 Overview

This chapter documents the algorithmic trace layer for Karger’s contraction algorithm: adaptive contraction runs of a multigraph together with a distinguished cut carried along the contractions, a finite edge-occurrence sampling model, and the resulting survival probability lower bound \(2/(n(n-1))\) for a fixed min-cut. It builds on the local contraction facts (cut size preservation, min-cut preservation, degree and handshaking bounds) proved for multigraphs elsewhere, and packages them both recursively and as a telescoping product along an indexed trace.

135.2 Declarations

Definition 135.1 State of the contraction process
#

A state consists of a multigraph \(G\) over \(\alpha \) together with a distinguished cut \(C\) of \(G\). It records the current graph of the algorithm and the cut whose survival is being tracked.

Definition 135.2 Contraction of a state along a non-crossing edge

Given a state \(s\), an edge \(e\) of \(s.G\) that does not cross the distinguished cut \(s.C\), the contracted state has graph \(s.G\) contracted along \(e\) and cut the corresponding contracted cut.

Definition 135.3 Surviving step

The relation asserting that state \(t\) arises from state \(s\) by contracting some edge \(e\) of \(s.G\) that does not cross the distinguished cut of \(s\).

Definition 135.4 Surviving run

The inductively defined relation of \(n\) consecutive surviving steps leading from a state \(s\) to a state \(t\): the empty run has \(n = 0\) and \(t = s\), and a run of length \(n+1\) is a run of length \(n\) followed by one surviving step.

Lemma 135.5 Positive edge count from an edge

If \(e\) is an edge of a multigraph \(G\), then \(G\) has positive edge count.

Lemma 135.6 A surviving step preserves cut size

If \(t\) is obtained from \(s\) by a surviving step, then the distinguished cuts have the same size: \(t.C.\mathrm{size} = s.C.\mathrm{size}\).

Lemma 135.7 A surviving step preserves minimality

If \(t\) is obtained from \(s\) by a surviving step and \(s.C\) is a min-cut of \(s.G\), then \(t.C\) is a min-cut of \(t.G\).

Lemma 135.8 A surviving step removes one vertex

If \(t\) is obtained from \(s\) by a surviving step, then \(t.G\) has exactly one vertex fewer than \(s.G\).

Lemma 135.9 A surviving step requires an edge

If some state \(t\) is reachable from \(s\) by a surviving step, then \(s.G\) has positive edge count.

Lemma 135.10 A surviving run preserves cut size

If \(t\) is reachable from \(s\) by a surviving run of any length, then \(t.C.\mathrm{size} = s.C.\mathrm{size}\).

Lemma 135.11 A surviving run preserves minimality

If \(t\) is reachable from \(s\) by a surviving run and \(s.C\) is a min-cut, then \(t.C\) is a min-cut.

Lemma 135.12 An \(n\)-step surviving run removes \(n\) vertices

If \(t\) is reachable from \(s\) by a surviving run of \(n\) steps, then \(t.G.\mathrm{vertexCount} = s.G.\mathrm{vertexCount} - n\) (truncated subtraction on \(\mathbb {N}\)).

If \(t\) is reachable from \(s\) by a surviving run and \(s.C\) is a min-cut, then the graph reached after the run still satisfies the handshaking lower bound

\[ s.C.\mathrm{size}\cdot t.G.\mathrm{vertexCount} \; \le \; 2\, t.G.\mathrm{edgeCount}. \]

The same invariant, with the vertex count after \(n\) contractions written explicitly: for a surviving run of \(n\) steps from \(s\) to \(t\) with \(s.C\) a min-cut,

\[ s.C.\mathrm{size}\cdot (s.G.\mathrm{vertexCount} - n) \; \le \; 2\, t.G.\mathrm{edgeCount}. \]
Lemma 135.15 Algebraic one-step survival bound
#

For naturals \(c, n, m\) with \(2 \le n\), \(0 \lt m\) and \(c\, n \le 2m\), the survival probability \(1 - c/m\) satisfies

\[ \frac{n-2}{n} \; \le \; 1 - \frac{c}{m}. \]

If a surviving step is possible from \(s\), the distinguished cut \(s.C\) is a min-cut, and \(s.G\) has at least two vertices, then writing \(n = s.G.\mathrm{vertexCount}\),

\[ \frac{n-2}{n} \; \le \; \mathrm{survivalProb}(s.C.\mathrm{size},\, s.G.\mathrm{edgeCount}). \]

If \(t\) is reached from \(s\) by a surviving run of \(i\) steps, a further surviving step is possible from \(t\), \(s.C\) is a min-cut, and \(t.G\) has at least two vertices, then with \(n_t = t.G.\mathrm{vertexCount}\),

\[ \frac{n_t-2}{n_t} \; \le \; \mathrm{survivalProb}(s.C.\mathrm{size},\, t.G.\mathrm{edgeCount}). \]
Definition 135.18 Non-crossing edges of a state

The sub-multiset of edges of \(s.G\) that do not cross the distinguished cut \(s.C\); these are exactly the edge choices that keep the cut alive.

Definition 135.19 Number of non-crossing choices

The cardinality (with multiplicity) of the multiset of non-crossing edges of a state.

Definition 135.20 Uniform one-step survival probability

The real number obtained as the number of non-crossing edge choices divided by the total edge count of \(s.G\), i.e. the probability that a uniformly chosen edge occurrence does not cross the cut.

Lemma 135.21 Non-crossing choices count edges minus cut size

For every state \(s\), the number of non-crossing edge choices equals \(s.G.\mathrm{edgeCount} - s.C.\mathrm{size}\).

Lemma 135.22 Cut size bounded by edge count

For every state \(s\), \(s.C.\mathrm{size} \le s.G.\mathrm{edgeCount}\).

Lemma 135.23 Uniform choice realizes the survival probability

If \(s.G\) has at least one edge, the uniform survival probability of \(s\) equals \(\mathrm{survivalProb}(s.C.\mathrm{size},\, s.G.\mathrm{edgeCount}) = 1 - c/m\) with \(c = s.C.\mathrm{size}\) and \(m = s.G.\mathrm{edgeCount}\).

Definition 135.24 Sample space of edge occurrences
#

The finite set of pairs (edge, occurrence index) obtained from the edge multiset of \(s.G\); the second coordinate distinguishes parallel copies of the same edge, so that a uniform choice on this set is a uniform choice of an edge occurrence.

Definition 135.25 Surviving edge occurrence

The predicate on an edge occurrence saying that its underlying edge does not cross the distinguished cut of \(s\).

Lemma 135.26 Size of the occurrence space

The occurrence sample space of a state has cardinality \(s.G.\mathrm{edgeCount}\).

Lemma 135.27 Filtering occurrences by first coordinate

For a multiset \(m\) and a decidable predicate \(p\), the number of enumerated occurrences of \(m\) whose first coordinate satisfies \(p\) equals the cardinality of the sub-multiset of \(m\) filtered by \(p\).

The number of surviving edge occurrences of a state equals its number of non-crossing edge choices.

Definition 135.29 Survival ratio of the occurrence space

The ratio of the number of surviving edge occurrences to the total number of edge occurrences, i.e. the concrete one-step survival probability of the finite sampling model.

Lemma 135.30 Survival ratio equals uniform survival probability

For every state, the occurrence-space survival ratio coincides with the uniform survival probability.

Lemma 135.31 An occurrence carries an actual edge

The first projection of any element of the occurrence sample space of \(s\) is an edge of \(s.G\).

If an edge occurrence of \(s\) survives, then its underlying edge is not a crossing edge of the distinguished cut \(s.C\).

Definition 135.33 Successor state of a surviving occurrence

Given a state \(s\) and a sampled edge occurrence that does not cross the distinguished cut, this is the state obtained by contracting \(s\) along the underlying edge.

Lemma 135.34 Sampling a surviving occurrence gives a surviving step

For any surviving edge occurrence at \(s\), the pair consisting of \(s\) and the resulting successor state is a surviving step.

Definition 135.35 Recursive survival probability

The finite probability that the distinguished cut survives the next given number of random edge-occurrence choices, defined by recursion on the number of steps: zero steps have probability \(1\), and one further step averages over all edge occurrences, contributing \(0\) for occurrences that cross the cut and the recursive value at the contracted state otherwise.

Lemma 135.36 Base case of the recursive survival probability

With no remaining contractions the survival probability is \(1\).

Lemma 135.37 Recursion step of the survival probability

The unfolding equation: the survival probability for \(\text{steps}+1\) contractions at \(s\) is the average over all edge occurrences of \(s\) of the survival probability for \(\text{steps}\) contractions at the contracted state, with crossing occurrences contributing \(0\).

Lemma 135.38 Surviving occurrences in the attached sample space

Counting surviving occurrences in the attached (subtype) version of the sample space gives the same number as counting them in the sample space itself.

Lemma 135.39 Counting bound for a conditional sum

Let \(S\) be a finite set, \(p\) a decidable predicate, \(f : S \to \mathbb {R}\) and \(B \in \mathbb {R}\) with \(B \le f(x)\) for every \(x \in S\) satisfying \(p\). Then

\[ \left\lvert \{ x \in S : p(x)\} \right\rvert \cdot B \; \le \; \sum _{x \in S} \bigl[\, p(x) \, \bigr] f(x), \]

where terms failing \(p\) contribute \(0\).

If the occurrence sample space of \(s\) is nonempty and every surviving branch has recursive survival probability at least \(B\), then the averaged survival probability for one more step satisfies

\[ \mathrm{edgeChoiceSurvivalRatio}(s)\cdot B \; \le \; \mathrm{survivalEventProb}(\text{steps}+1,\, s). \]

If \(s.C\) is a min-cut of positive size and \(s.G\) has at least two vertices, then with \(n = s.G.\mathrm{vertexCount}\),

\[ \frac{n-2}{n} \; \le \; \mathrm{edgeChoiceSurvivalRatio}(s). \]

For every \(n\) and every state \(s\) whose distinguished cut is a min-cut of positive size, if \(2 \le n\) and \(s.G\) has exactly \(n\) vertices, then the recursive sampling model survives \(n-2\) contractions with probability at least

\[ \frac{2}{n(n-1)}. \]
Theorem 135.43 Survival lower bound at the initial state

For a state \(s\) whose distinguished cut is a min-cut of positive size and whose graph has at least two vertices, writing \(n = s.G.\mathrm{vertexCount}\),

\[ \frac{2}{n(n-1)} \; \le \; \mathrm{survivalEventProb}(n-2,\, s). \]

Human-facing form of the previous statement: a fixed min-cut of positive size in a graph with \(n \ge 2\) vertices survives the \(n-2\) random contractions with probability at least \(2/(n(n-1))\).

Definition 135.45 Graph-only occurrence space
#

The finite set of edge occurrences of a multigraph \(G\), the same construction as the state-level sample space but without reference to a distinguished cut.

Lemma 135.46 The two occurrence spaces agree

For every state \(s\), the graph-only occurrence space of \(s.G\) equals the occurrence space of \(s\).

Lemma 135.47 A graph occurrence carries an actual edge

The first projection of any element of the graph-only occurrence space of \(G\) is an edge of \(G\).

Definition 135.48 Graph after a sampled contraction

The multigraph obtained by contracting \(G\) along the edge underlying a sampled edge occurrence.

Lemma 135.49 Sampled contraction removes one vertex

Contracting along any sampled edge occurrence decreases the vertex count by exactly one.

Lemma 135.50 State contraction agrees with graph contraction

The graph of the successor state after a surviving occurrence equals the graph obtained by contracting \(s.G\) along the same occurrence viewed in the graph-only occurrence space.

Definition 135.51 Graph-only Karger run

The inductive relation asserting that \(H\) is reachable from \(G\) by a given number of successive arbitrary edge-occurrence contractions. It models the actual graph evolution of the algorithm without tracking any distinguished cut.

Lemma 135.52 Vertex count along a graph run

If \(H\) is reachable from \(G\) by a graph run of \(\text{steps}\) contractions, then \(H.\mathrm{vertexCount} = G.\mathrm{vertexCount} - \text{steps}\).

Lemma 135.53 A full graph run ends with two vertices

If \(G\) has at least two vertices and \(H\) is reachable from \(G\) by \(G.\mathrm{vertexCount} - 2\) contractions, then \(H\) has exactly two vertices.

Lemma 135.54 A full graph run yields a Karger output

Under the same hypotheses, the terminal graph \(H\) is a valid Karger output, i.e. a two-vertex multigraph.

Lemma 135.55 Every edge yields an occurrence

If \(e\) is an edge of \(G\), then the occurrence \((e, 0)\) belongs to the graph-only occurrence space of \(G\).

Lemma 135.56 A surviving step is realized by a graph occurrence

If \(t\) arises from \(s\) by a surviving step, then there is an edge occurrence of \(s.G\) whose contraction produces exactly \(t.G\).

Lemma 135.57 Surviving runs project to graph runs

A surviving run of \(\text{steps}\) steps from \(s\) to \(t\) induces a graph-only Karger run of the same length from \(s.G\) to \(t.G\).

Lemma 135.58 A full surviving run ends with a Karger output

If \(s.G\) has at least two vertices and \(t\) is reached from \(s\) by a surviving run of \(s.G.\mathrm{vertexCount} - 2\) steps, then \(t.G\) is a Karger output.

Definition 135.59 Adaptive graph trace

An explicit indexed execution of the contraction loop: a family of graphs indexed by \(\mathbb {N}\), an edge occurrence of the graph at each index below \(\text{steps}\), and the requirement that the next graph is the contraction of the current one along that occurrence. The choice type depends on the current graph, matching the adaptive nature of the process.

Lemma 135.60 Prefixes of a graph trace are graph runs

For \(i \le \text{steps}\), the first \(i\) stages of an adaptive graph trace form a graph run from the initial graph to the graph at index \(i\).

Lemma 135.61 Vertex count along a graph trace

For \(i \le \text{steps}\), the graph at index \(i\) of an adaptive trace has vertex count equal to the initial vertex count minus \(i\).

Lemma 135.62 A full graph trace terminates with two vertices

If \(2 \le n\) and an adaptive graph trace of \(n-2\) steps starts from a graph with \(n\) vertices, then its final graph is a Karger output.

Theorem 135.63 Adaptive traces output two vertices

Human-facing termination statement: every adaptive graph trace of \(n-2\) contractions starting from an \(n\)-vertex graph with \(n \ge 2\) ends with a two-vertex graph.

For a state \(s\) whose distinguished cut is a min-cut of positive size and whose graph has \(n = s.G.\mathrm{vertexCount} \ge 2\) vertices, both of the following hold: the recursive sampling model survives \(n-2\) contractions with probability at least \(2/(n(n-1))\), and every adaptive graph trace of \(n-2\) contractions starting from \(s.G\) ends with a Karger output.

Human-facing name for the previous conjunction: the survival lower bound \(2/(n(n-1))\) together with termination of every adaptive graph trace of \(n-2\) contractions.

Definition 135.66 Indexed surviving trace

A family of states indexed by \(\mathbb {N}\) such that consecutive states at indices below \(\text{steps}\) are related by a surviving step. This is the product-friendly counterpart of a surviving run: it exposes the state present at each index.

Definition 135.67 Graph trace of a surviving trace

The adaptive graph trace obtained from an indexed surviving trace by forgetting the distinguished cuts and choosing, at each step, an occurrence realizing the surviving step.

Lemma 135.68 Prefixes of a surviving trace are surviving runs

For \(i \le \text{steps}\), the first \(i\) stages of an indexed surviving trace form a surviving run from the initial state to the state at index \(i\).

Lemma 135.69 Vertex count along a surviving trace

For \(i \le \text{steps}\), the graph at index \(i\) of a surviving trace has vertex count equal to the initial vertex count minus \(i\).

If the initial cut of an indexed surviving trace is a min-cut, \(i \lt \text{steps}\), and the graph at index \(i\) has at least two vertices, then with \(n_i\) its vertex count,

\[ \frac{n_i-2}{n_i} \; \le \; \mathrm{survivalProb}\bigl(\, \text{initial cut size},\; \text{edge count at }i\, \bigr). \]
Lemma 135.71 Product of factors bounds the product of survival probabilities

If the initial cut is a min-cut and every graph along the first \(\text{steps}\) indices has at least two vertices, then

\[ \prod _{i\lt \text{steps}} \frac{n_i-2}{n_i} \; \le \; \prod _{i\lt \text{steps}} \mathrm{survivalProb}\bigl(\, \text{initial cut size},\; \text{edge count at }i\, \bigr), \]

where \(n_i\) is the vertex count at index \(i\).

Lemma 135.72 Factor product in telescoping form

If a surviving trace has \(\text{steps} = n-2\) and starts from a graph with \(n\) vertices, then

\[ \prod _{i\lt \text{steps}} \frac{n_i-2}{n_i} \; =\; \prod _{i\lt n-2} \frac{n-i-2}{n-i}. \]

For an indexed surviving trace of \(n-2\) steps starting from an \(n\)-vertex graph with \(n \ge 2\), initial min-cut, and at least two vertices at every step,

\[ \frac{2}{n(n-1)} \; \le \; \prod _{i\lt n-2} \mathrm{survivalProb}\bigl(\, \text{initial cut size},\; \text{edge count at }i\, \bigr). \]
Definition 135.74 Product of uniform survival probabilities

The product over \(i \lt \text{steps}\) of the uniform one-step survival probabilities of the states of an indexed surviving trace.

Lemma 135.75 Uniform product as a product of survival probabilities

The uniform survival product of a trace equals the product over \(i \lt \text{steps}\) of \(\mathrm{survivalProb}\) applied to the cut size and edge count at index \(i\).

The same product may be written using the initial cut size at every index, since cut size is invariant along a surviving trace.

Theorem 135.77 Lower bound for the uniform survival product

Under the same hypotheses as the product-level bound, the product of the concrete uniform one-step survival probabilities along the trace is at least \(2/(n(n-1))\).

Definition 135.78 Product of occurrence-space survival ratios

The product over \(i \lt \text{steps}\) of the finite sample-space survival ratios of the states of an indexed surviving trace.

Lemma 135.79 The two concrete products agree

For every indexed surviving trace, the product of occurrence-space survival ratios equals the product of uniform survival probabilities.

Theorem 135.80 Lower bound for the occurrence-space survival product

For an indexed surviving trace of \(n-2\) steps starting from an \(n\)-vertex graph with \(n \ge 2\), initial min-cut, and at least two vertices at every step, the product of the finite uniform edge-choice survival ratios is at least \(2/(n(n-1))\).