A Linear-Time Algorithm for Finding a Sparse k-Connected Spanning Subgraph of a k-Connected Graph 2: FOREST's Forests E_i Preserve Local Node-Connectivity up to i in a Simple GraphResearch Paper
Motivation
Given a -connected graph, many connectivity algorithms run in time that grows with the number of edges . A sparse certificate is a spanning subgraph with only edges that is still -connected; computing one first and running the expensive algorithm on it replaces by in the bound. Finding a -connected spanning subgraph with the minimum number of edges is NP-complete for every fixed (Garey and Johnson, problem GT31), so the question is how cheaply a sparse, not necessarily minimum, certificate can be found.
Nagamochi and Ibaraki (Algorithmica 7 (1992) 583–596) answered this with a single linear-time scanning procedure, FOREST, which partitions the edges into classes . They showed that the prefix unions are certificates for edge-connectivity and, for simple graphs, for node-connectivity. The node-connectivity result is the subject of this mission; the edge-connectivity result is the preceding mission of this series.
Timeline:
- 1980: Galil gives an algorithm testing whose running time depends on (SIAM J. Comput. 9).
- Before 1992 (as cited on p. 583): Suzuki et al. give -time algorithms for sparse 2- and 3-node-connected spanning subgraphs; Nishizeki and Poljak find, for general , a -node-connected spanning subgraph with at most edges in time.
- 1992: Nagamochi and Ibaraki prove that FOREST, which runs in time, yields a -node-connected spanning subgraph of every simple -node-connected graph, with . Their Theorem 3.1 states a stronger, local form.
- 1993: Cheriyan, Kao and Thurimella isolate "scan-first search" as the general principle behind such certificates (SIAM J. Comput. 22 (1993)).
Setting
A graph has a finite node set with and a finite edge set ; each edge has an unordered pair of two distinct end nodes. In this mission the graph is simple: no two edges have the same end nodes. For , is the spanning subgraph with edge set .
The local node-connectivity of nodes in a graph on is if and are adjacent in , and otherwise the minimum size of a node set whose deletion leaves no – path. The node connectivity is .
Procedure FOREST keeps a label on each node, initially . While some node is unscanned, it chooses an unscanned node of largest label; for each unscanned edge it puts into the class , increases by one if , and increases by one; then it marks scanned. Ties are broken arbitrarily. The time instants are the states between these elementary operations; denotes the class at an instant, and its final value. Put
Formalization targets
Goal: Theorem 3.1
For a simple graph and the classes of any completed run of FOREST, for ,
The statement is local: it holds pair by pair, not only for the global minimum, and for every tie-breaking of the procedure.
Milestones, in the order the proof uses them
- Lemma 2.2: at every instant, a node meets exactly for .
- Lemma 2.4(b): at every instant, a – path in yields – paths in every , .
- In-degree at most one (§2, p. 588): orienting each edge from the earlier-scanned to the later-scanned end, every node has at most one entering arc in each class.
- Lemma 3.1: if an – path of has the form with or scanned before , then any – and – paths in () share a node other than .
- Lemma 3.2: for a node cut set of (in scan order) separating a component from the rest , immediately after is scanned every – path of passes through , and has no – path for .
A companion item states the paper's announcement in §3: is -node-connected for every .
Significance
Theorem 3.1 at shows that the first classes of FOREST form a -node-connected spanning subgraph whenever is, and the edge-count analysis of the companion mission bounds its size by . Since FOREST runs in linear time, any algorithm testing can be run on instead of ; the paper uses this to improve the bound for testing from to , and similar gains for computing the number of node-disjoint paths between two nodes. The local form (3.1) is what makes the – applications possible.
The result is proved on paper. As far as a search of the platform shows, neither FOREST nor local node-connectivity has a machine-checked treatment there; Mathlib has no notion of vertex connectivity of a pair of nodes. This mission produces a formal model of FOREST as a nondeterministic transition system and the statements needed to verify the paper's proof step by step.
Difficulty
For edge-connectivity the analogous statement follows from a general principle: any sequence of maximal spanning forests, each taken in what remains of the graph, preserves local edge-connectivity up to its length. The obvious attempt is to prove (3.1) the same way, from the fact that each is a maximal spanning forest of what the earlier classes leave. The paper gives no such argument for node-connectivity: its proof uses the specific scan order of FOREST in an essential way, through the orientation of edges from earlier- to later-scanned nodes and the in-degree bound of that orientation (Lemmas 3.1 and 3.2). The argument tracks, for a hypothetical node cut of size in , the classes at the moments the nodes of are scanned, which requires reasoning about intermediate states of the algorithm and about paths in several classes at once. None of this reduces to a static property of the output partition.
Formalization scope
- Graphs. A node type
Vand an edge typeE, both finite, withends : E → Sym2 V; loop-freeness is∀ e, ¬ (ends e).IsDiagand simplicity isFunction.Injective ends. The standing assumptions of p. 583 and p. 589 (, no self-loop, a simple graph when node-connectivity is discussed) appear as hypotheses; §2 items are stated for loopless graphs, as on the page. - Connectivity. is valued in : on adjacent pairs, the minimum node cut otherwise, and when , where (3.1) holds trivially.
- FOREST. A nondeterministic step relation with three steps (select, scan, finish), a run of length from the initial state, and completion when every node is scanned. Every tie-breaking is allowed, so the theorems quantify over all completed runs. A time instant is a state of a run; "scanned before" compares positions in the run's selection order; "immediately after has been scanned" is the state right after the finish step of .
- Excluded. The running time "" and everything in §4 (the connectivity-testing algorithms and their bounds) are not stated: the paper fixes no machine model. The edge bounds on belong to the edge-connectivity mission.
- Ruled out. Stating (3.1) for an arbitrary partition into maximal spanning forests, or reading the classes of Lemmas 3.1–3.2 off the final state, would state a different theorem from the one the paper proves; the classes are those of a run of FOREST at the instant the page specifies.
- Infrastructure. Reachability avoiding a node set, walks and paths in
SimpleGraph, and invariants of the FOREST transition system. The definitions duplicate those of the edge-connectivity mission by design and are candidates for a shared layer. Contributions of general lemmas about the run (label invariants, monotonicity of classes along a run) are welcome.
Selected references
- H. Nagamochi, T. Ibaraki, A linear-time algorithm for finding a sparse -connected spanning subgraph of a -connected graph, Algorithmica 7 (1992), 583–596. https://doi.org/10.1007/BF01758778
- Z. Galil, Finding the vertex connectivity of graphs, SIAM J. Comput. 9 (1980), 197–199. https://doi.org/10.1137/0209016
- J. Cheriyan, M.-Y. Kao, R. Thurimella, Scan-first search and sparse certificates: an improved parallel algorithm for -vertex connectivity, SIAM J. Comput. 22 (1993), 157–174. https://doi.org/10.1137/0222013
- M. R. Garey, D. S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, Freeman, 1979.