Finding a smallest odd hole in a claw-free graph using global structure
A lemma of Fouquet implies that a claw-free graph contains an induced $C_5$, contains no odd hole, or is quasi-line. In this paper we use this result to give an improved shortest-odd-hole algorithm for claw-free graphs by exploiting the structural relationship between line graphs and quasi-line graphs suggested by Chudnovsky and Seymour’s structure theorem for quasi-line graphs. Our approach involves reducing the problem to that of finding a shortest odd cycle of length $\geq 5$ in a graph. Our algorithm runs in $O(m^2+n^2\log n)$ time, improving upon Shrem, Stern, and Golumbic’s recent $O(nm^2)$ algorithm, which uses a local approach. The best known recognition algorithms for claw-free graphs run in $O(m^{1.69}) \cap O(n^{3.5})$ time, or $O(m^2) \cap O(n^{3.5})$ without fast matrix multiplication.
💡 Research Summary
The paper addresses the problem of finding a smallest odd hole (an induced cycle of odd length at least five) in claw‑free graphs. While polynomial‑time algorithms exist for detecting odd holes in a graph or its complement, no general‑purpose algorithm for directly locating an odd hole in an arbitrary graph is known. Claw‑free graphs, however, have a rich structural theory that can be exploited.
The authors begin with a classic lemma of Fouquet: in any connected claw‑free graph G with independence number α(G)≥3, every vertex is either bisimplicial (its neighbourhood can be partitioned into two cliques) or its neighbourhood contains an induced C₅. Consequently, any claw‑free graph falls into one of three categories: (i) α(G)≤2, (ii) it contains an induced C₅, or (iii) it is a quasi‑line graph (every vertex is bisimplicial). The first two cases are easy to handle in O(m²) time by a straightforward enumeration of edges and neighbourhood sets.
The core of the contribution lies in handling quasi‑line graphs. Chudnovsky and Seymour’s structure theorem characterises quasi‑line graphs as either circular interval graphs or compositions of linear interval strips. A linear interval strip (S, X, Y) is a connected linear‑interval graph together with two distinguished end‑cliques X and Y; a “span” is an induced path that starts in X, ends in Y, and visits exactly one vertex from each of X and Y. The authors prove that for any strip one can compute in O(m) time both a shortest span and, if it exists, a “near‑shortest” span whose length is exactly one more than the shortest.
For circular interval graphs the algorithm proceeds as follows. For each edge (x_i, x_j) the algorithm identifies the clockwise neighbours of x_j that are not neighbours of x_i (set X) and the counter‑clockwise neighbours of x_i that are not neighbours of x_j (set Y). The induced subgraph on the remaining vertices together with X and Y forms a linear interval strip, to which the span‑finding routine is applied. By examining each edge, a shortest odd hole containing that edge can be found in O(m) time, yielding an overall O(m²) procedure for circular interval graphs.
When the quasi‑line graph is a composition of strips, the authors first eliminate all nonlinear homogeneous pairs of cliques (pairs of cliques whose vertices have identical adjacency to the rest of the graph) using the O(m²) antithickening algorithm of Chudnovsky and King. This yields a subgraph G₀ that is still quasi‑line, contains no such pairs, and preserves any shortest odd hole of the original graph.
Next, the composition is decomposed into an underlying directed multigraph H and a family of strips { (S_e, X_e, Y_e) : e∈E(H) }. For each edge e, the length ℓ_e of a shortest span is recorded; edges whose strips also admit a near‑shortest span form a set E⁺. The multigraph H is then weighted by ℓ_e on each edge. For every e∈E⁺ the algorithm temporarily removes e (and any parallel edges of length 1 when ℓ_e=2) and runs Dijkstra’s algorithm to find a shortest path between the former endpoints. Adding e back yields a cycle whose total weight is at least four; if the weight is odd, the corresponding cycle in the original graph is an odd hole. Because |E⁺|=O(n), this step costs O(n² log n).
All odd holes that pass through any strip in E⁺ are thus discovered. To handle holes that avoid all such strips, the algorithm discards every vertex except a single shortest span from each remaining strip, producing a subgraph G′ that is exactly the line graph L(H₀) of another multigraph H₀. Constructing H₀ takes O(m) time. The problem then reduces to finding a shortest odd cycle of length at least five in H₀. The authors first search for a C₅ in O(|V(H₀)||E(H₀)|) time; if none exists, they exploit structural restrictions on chords of longer odd cycles to locate the shortest one in O(|V(H₀)||E(H₀)| + |V(H₀)|² log |V(H₀)|) time.
Putting all pieces together, the total running time of the algorithm is
O(m²) (for C₅ detection and removal of nonlinear homogeneous pairs)
+ O(m) (for computing spans in each strip)
+ O(n² log n) (for weighted‑cycle search in H)
+ O(m) (for constructing H₀)
+ O(n² log n) (for the final odd‑cycle search in H₀),
which simplifies to O(m² + n² log n). This improves upon the previous best O(n m²) algorithm of Shrem, Stern, and Golumbic, which relied on a local breadth‑first search in an auxiliary graph. Moreover, the new bound is comparable to the fastest known recognition algorithms for claw‑free graphs (O(m^{1.69}) ∩ O(n^{3.5}) with fast matrix multiplication, or O(m²) ∩ O(n^{3.5}) without).
The paper demonstrates that exploiting global structural properties—specifically the quasi‑line decomposition into interval strips—yields a substantially faster algorithm for a classic combinatorial problem. It also illustrates how sophisticated decomposition theorems (Chudnovsky‑Seymour) can be turned into concrete algorithmic tools, bridging deep graph theory with practical computation.
Comments & Academic Discussion
Loading comments...
Leave a Comment