Shortest Nontrivial Cycles in Directed Surface Graphs Jeff Erickson SOCG 2011
Drink! 2
The problem Given an edge‐weighted directed graph G embedded on a surface, find the shortest non‐contractible or non‐separating cycle in G . 3
The problem Given an edge‐weighted directed graph G embedded on a surface, find the shortest non‐contractible or non‐separating cycle in G . non‐separating separating separating non‐contractible non‐contractible contractible 3
Why? Finding short nontrivial cycles is a critical subproblem of several more complex surface‐graph algorithms. •Topological noise/feature removal •Surface parametrization •Shortest homotopic paths •Approximate TSP tours and Steiner trees •Graph isomorphism •Drawing in the plane with few crossings •Probabilistic embedding into planar graphs •... 4
Time bounds (undirected) Non‐contractible Non‐separating O( n 3 ) O( n 3 ) Thomassen 90 O( n 2 log n ) O( n 2 log n ) Erickson Har‐Peled 03, 04 g O( g ) n 3/2 O( g 3/2 n 3/2 log n ) Cabello Mohar 05, 07 g O( g ) n 4/3 log n — Cabello 06 g O( g ) n log n g O( g ) n log n Kutz 06 O( g 3 n log n ) O( g 3 n log n ) Cabello Chambers 07 O( g 2 n log n ) O( g 2 n log n ) Cabello Chambers Erickson In some of these bounds, O(log n ) factors can be reduced to O(log log n ) [Italiano Nussbaum Sankowski Wulff‐Nielsen STOC 11] 5
Time bounds (directed) Non‐contractible Non‐separating O( n 2 log n ) O( n 2 log n ) Cabello, Colin de Verdière, Lazarus 10 O( g 1/2 n 3/2 log n ) O( g 1/2 n 3/2 log n ) — 2 O( g ) n log n Erickson Nayyeri 11 6
Time bounds (directed) Non‐contractible Non‐separating O( n 2 log n ) O( n 2 log n ) Cabello, Colin de Verdière, Lazarus 10 O( g 1/2 n 3/2 log n ) O( g 1/2 n 3/2 log n ) — 2 O( g ) n log n Erickson Nayyeri 11 g O( g ) n log n O( g 2 n log n ) This paper Same as Kutz for Same as Cabello et al. for undirected graphs undirected graphs 6
Two main ideas ‣ 3‐path condition: The shortest ‣ 1‐crossing condition: The nontrivial cycle consists of two shortest nontrivial cycle shortest paths between any crosses any shortest path at pair of antipodal points. most once. [Thomassen 90, Erickson Har‐Peled 04] [Cabello Mohar 05, all later papers] 7
Why directed graphs are harder ‣ Undirected shortest paths cross at most once. 8
Why directed graphs are harder ‣ Undirected shortest paths cross at most once. ‣ Directed shortest paths can cross arbitrarily many times! 8
Time bounds (directed) modified Non‐contractible Non‐separating 3‐path condition O( n 2 log n ) O( n 2 log n ) Cabello, Colin de Verdière, Lazarus 10 O( g 1/2 n 3/2 log n ) O( g 1/2 n 3/2 log n ) — 2 O( g ) n log n Erickson Nayyeri 11 g O( g ) n log n O( g 2 n log n ) This paper Same as Kutz for Same as Cabello et al. for modified undirected graphs undirected graphs 1–crossing condition 9
Key insight ‣ Let γ be the shortest nontrivial directed cycle. ‣ Let σ be any directed shortest path that crosses γ. 10
Key insight ‣ Let γ be the shortest nontrivial directed cycle. ‣ Let σ be any directed shortest path that crosses γ. ‣ Contracting σ to a point transforms γ into a set of loops. 10
Key insight ‣ Let γ be the shortest nontrivial directed cycle. ‣ Let σ be any directed shortest path that crosses γ. ‣ Contracting σ to a point transforms γ into a set of loops. ‣ At most one of these loops is nontrivial. 10
Shortest non‐separating cycles 11
Greedy homology basis ‣ Greedy tree‐cotree decomposition ( T , L , C ): ▹ T = single‐source shortest‐path tree in G ▹ C = dual of any spanning tree of ( G \ T )* ▹ L = G \ ( T ∪ C ) = set of 2 g edges ‣ For each edge e i in L , let λ i = unique undirected cycle in T ∪ e i [Eppstein 03, Erickson Whittlesey 05, Cabello Mohar 05] 12
Greedy homology basis Undirected cycles λ 1 , λ 2 , ..., λ 2 g such that: ‣ Homology basis: Every nonseparating cycle crosses some cycle λ i an odd number of times. ‣ Greedy: Every cycle λ i consists of two shortest paths σ i and τ i and an edge. [Eppstein 03, Erickson Whittlesey 05, Cabello Mohar 05] 13
Greedy homology basis Undirected cycles λ 1 , λ 2 , ..., λ 2 g such that: ‣ Homology basis: Every nonseparating cycle crosses some cycle λ i an odd number of times. ‣ Greedy: Every cycle λ i consists of two shortest paths σ i and τ i and an edge. e i σ i τ i [Eppstein 03, Erickson Whittlesey 05, Cabello Mohar 05] 13
Cyclic double‐cover ΣN λ ‣ Fix a non‐separating cycle λ. λ Σ 14
Cyclic double‐cover ΣN λ ‣ Fix a non‐separating cycle λ. λ Σ ‣ The surface Σ ʹ := Σ ✂ λ has two boundary cycles λ + and λ – . λ + Σ ʹ λ – 14
Cyclic double‐cover ΣN λ ‣ Fix a non‐separating cycle λ. λ Σ ‣ The surface Σ ʹ := Σ ✂ λ has two boundary cycles λ + and λ – . (λ + ,0) (Σ ʹ ,0) ‣ Make 2 copies (Σ ʹ ,0) and (Σ ʹ ,1) (λ – ,0) (λ + ,1) (Σ ʹ ,1) (λ – ,1) 14
Cyclic double‐cover ΣN λ ‣ Fix a non‐separating cycle λ. λ Σ ‣ The surface Σ ʹ := Σ ✂ λ has two boundary cycles λ + and λ – . λ + Σ ʹ ‣ Make 2 copies (Σ ʹ ,0) and (Σ ʹ ,1) λ – ‣ Identify (λ + ,1) = (λ – ,0) and (λ + ,0) = (λ – ,1) (Σ ʹ ,0) (Σ ʹ ,1) Σq 14
Cyclic double‐cover ΣN λ Any cycle γ in Σ crossing λ an odd number of times is the projection of a path γ̂ in Σq λ from ( s ,0) to ( s ,1), for any point s in γ 15
Cyclic double‐cover ΣN λ Any cycle γ in Σ crossing λ an odd number of times is the projection of a path γ̂ in Σq λ from ( s ,0) to ( s ,1), for any point s in γ 15
Cyclic double‐cover ΣN λ The shortest cycle γ in Σ crossing λ an odd number of times is the projection of a shortest path γ̂ in Σq λ from ( s ,0) to ( s ,1), for any point s in γ 16
At most one nontrivial crossing ‣ Fix a non‐separating cycle λ covered by two shortest paths σ and τ. ‣ Let γ = shortest cycle crossing λ an odd number of times. ‣ Suppose γ intersects σ. σ τ 17
At most one nontrivial crossing ‣ Fix a non‐separating cycle λ covered by two shortest paths σ and τ. ‣ Let γ = shortest cycle crossing λ an odd number of times. ‣ Suppose γ intersects σ. σ 17
At most one nontrivial crossing ‣ Suppose γ intersects σ = s 0 → s 1 → ⋅⋅⋅ → s k . (σ,0) (σ,1) 18
At most one nontrivial crossing ‣ Suppose γ intersects σ = s 0 → s 1 → ⋅⋅⋅ → s k . ‣ Let s i = minimum‐index vertex of σ that lies on γ. (σ,0) ( s i ,0) (σ,1) ( s i ,1) 18
At most one nontrivial crossing ‣ Suppose γ intersects σ = s 0 → s 1 → ⋅⋅⋅ → s k . ‣ Let s i = minimum‐index vertex of σ that lies on γ. ‣ Let γ̂ = shortest path in Σq λ from ( s i ,0) to ( s i ,1). (σ,0) ( s i ,0) (σ,1) ( s i ,1) 18
At most one nontrivial crossing ‣ Suppose γ intersects σ = s 0 → s 1 → ⋅⋅⋅ → s k . ‣ Let s i = minimum‐index vertex of σ that lies on γ. ‣ Let γ̂ = shortest path in Σq λ from ( s i ,0) to ( s i ,1). (σ,0) ( s i ,0) (σ,1) ( s i ,1) 18
Recommend
More recommend