Abstract
Let G = (V, E) be an undirected graph, S be a subset of its vertices, CS be the set of minimum edge-cuts partitioning S, and λS be the cardinality of such a cut. We suggest a graph structure, called the connectivity carcass of S, that represents both cuts in CS and the partition of V by all these cuts; its size is O(min{|E|, λS|V|}). In this paper we present general constructions and study in detail the case λS odd; the specifics of the case λS even are considered elsewhere. For an adequate description of the connectivity carcass we introduce a new type of graph: locally orientable graphs, which generalize digraphs. The connectivity carcass consists of a locally orientable quotient graph of G, a cactus tree (in case λS odd, just a tree) representing all distinct partitions of S by cuts in CS, and a mapping connecting them. One can build it in O(|S|) max-flow computations in G. For an arbitrary sequence of u edge insertions not changing λS, the connectivity carcass can be maintained in time O(|V| min{|E|, λS|V|} + u). For two vertices of G, queries asking whether they are separated by a cut in CS are answered in O(1) worst-case time per query. Another possibility is to maintain the carcass in O(|S| min{|E|, λS|V|} + u) time, but to answer the queries in O(1) time only if at least one of the vertices belongs to S.
Original language | English |
---|---|
Pages (from-to) | 753-808 |
Number of pages | 56 |
Journal | SIAM Journal on Computing |
Volume | 30 |
Issue number | 3 |
DOIs | |
State | Published - 2000 |
Keywords
- Dynamic algorithms
- Edge-connectivity
- Graph structures
- Incremental maintenance
- Minimum cuts
ASJC Scopus subject areas
- General Computer Science
- General Mathematics