Additive Spanners in Nearly Quadratic Time David Woodruff IBM Almaden Talk Outline 1. Spanners 1. 2. 3. Definition Applications Previous work 2. Our Results 3. Our Techniques for Additive-6 spanner • • 4. New existence proof Efficiency Conclusion Spanners • G = (V, E) undirected unweighted graph, n vertices, m edges • G (u,v) shortest path length from u to v in G • [A, PS] An (a, b)-spanner of G is a subgraph H such that for all u, v in V, H(u,v) · aG(u,v) + b • If b = 0, H is a multiplicative spanner • If a = 1, H is an additive spanner • Challenge: find sparse H, and do it quickly Spanner Application • 3-approximate distance queries G(u,v) with small space • Construct a (3,0)-spanner H with O(n3/2) edges. [PS, ADDJS] do this efficiently • Query answer: G(u,v) · H(u,v) · 3G(u,v) • Algorithmic tool: replace complicated dense graph with spanner – Spanner should be sparse – Algorithm should be efficient Multiplicative Spanners • [PS, ADDJS] For every k, can find a (2k-1, 0)-spanner with O(n1+1/k) edges in O(m) time • This is optimal assuming a girth conjecture of Erdos Surprise, Surprise • [ACIM, DHZ]: Construct a (1,2)-spanner H with O(n3/2) edges in O~(n2) time • Remarkable: for all u,v: G(u,v) · H(u,v) · G(u,v) + 2 • Query answer is a 3-approximation, but with much stronger guarantees for G(u,v) large Additive Spanners • Sparsity Upper Bounds: – (1,2)-spanner: O(n3/2) edges [ACIM, DHZ] – (1,6)-spanner: O(n4/3) edges [BKMP] – For any constant c > 6, best (1,c)-spanner known is O(n4/3) – For graphs with few edges on short cycles, can get better bounds [P] • Time Bounds: – A (1,2)-spanner can be found in O~(n2) time [DHZ] – A (1,6)-spanner can be found in O(mn2/3) time [BKMP, Elkin] Talk Outline 1. Spanners 1. 2. 3. Definition Applications Previous Work 2. Our Results 3. Our Techniques for Additive-6 spanner • • 4. New existence proof Efficiency Conclusion Main Contribution • We construct an additive-6 spanner with O~(n4/3) edges in O~(n2) time – Improves previous O(mn2/3) time for all m, n – Based on a new “path-hitting” framework Corollary: Graphs with Large Girth • We construct additive spanners for input graphs G with large girth in O~(n2) time • E.g., if G has girth > 4, we construct an additive 4-spanner with O~(n4/3) edges in O~(n2) time – Improves previous O(mn) time • E.g., if G has girth > 4, we construct an additive 8-spanner with O~(n5/4) edges in O~(n2) time – Improves previous O(mn3/4) time • Generalizes to graphs with few edges on short cycles Corollary: Source-wise Preservers • Given a subset S of O(n2/3) vertices of G, we compute a subgraph H of O~(n4/3) edges in O~(n2) time so that – For all u,v in S, δH(u,v) · δG(u,v) + 2 • Improves previous O(mn2/3) time Talk Outline 1. Spanners 1. 2. 3. Definition Applications Previous Work 2. Our Results 3. Our Techniques for Additive-6 spanner • • 4. New existence proof Efficiency Conclusion Include Light Edges • Include all edges incident to degree < n1/3 vertices in spanner • Call these edges light • At most O(n4/3) edges included Path-Hitting u v • Consider any shortest path. Suppose it goes from u to v. • Done if all edges on path are light • Otherwise there are heavy edges • Each heavy edge e is adjacent to a set Se of > n1/3 vertices • For heavy edges e and e’, Se and Se’ are disjoint Path-Hitting Wasn’t heavy u r z P P’ v s • Randomly sample vertices. Call these representatives ••Connect Patheach from each u tovertex v in the toeach spanner: one representative possible) • Connect path-hitter to representative (if using an almost (+0, +1, +2) shortest path P with at most x heavy edges • W.h.p. every • traverse degree light> edges n1/3 vertex + representative has an adjacent edgerepresentative to get to r • Only pay for heavy edges along P • Suppose • take thereP are to get x heavy to z edges • At most x heavy edges along P • Then there • take areP’>tox get * n1/3 to distinct s vertices at distance one from the path • # of edges included is O~(n2/3)*O~(n2/3/x)*x = O~(n4/3) • Randomly • traverse samplerepresentative O~(n2/3/x) vertices. edge Call + light these edges path-hitters to get to v O~(n2/3) • W.h.p. • Bysample triangleainequality vertex adjacent can show to the additive path distortion is 6 Recap Algorithm: 1. Randomly sample O~(n2/3) representatives 2. Randomly sample O~(n2/3/x) path-hitters 3. Connect each representative to each path-hitter on an almost (+0, +1, +2) shortest path using O(x) heavy edges This works w.h.p. for all shortest paths containing between x and 2x heavy edges To make it work for all shortest paths, vary x in powers of 2 and take the union of the edge-sets Theorem: there exists an additive-6 spanner with O~(n4/3) edges Talk Outline 1. Spanners and related objects 1. 2. Definition Applications 2. Previous Work 3. Our Results 4. Our Techniques for Additive-6 spanner • • 5. New existence proof Efficiency Conclusion Efficiency • Algorithm: 1. Randomly sample O~(n2/3) representatives 2. Randomly sample O~(n2/3/x) path-hitters 3. Connect each representative to each path-hitter on an almost (+0, +1, +2) shortest path using O(x) heavy edges • Only one time consuming step • Bicreteria problem: – Almost (+0, +1, +2) shortest path AND O(x) heavy edges • Simple breadth-first-search-like procedure – Time complexity proportional to # of edges in the graph – Only get quadratic time if # of edges is O(n4/3x) Deleting High Degree Vertices • If maximum degree · n1/3x, we get quadratic time • Delete all degree > n1/3x vertices and incident edges, run algorithm on subgraph • Oops, some shortest paths are disconnected u v Dominating Sets z u Maximum degree = d v • This only happens if there is a degree d > n1/3x vertex on the path • Delete all degree > d vertices in graph and incident edges • Choose a dominating set of O~(n/d) vertices for degree d vertices • Connect vertices in dominating set to representatives via an almost shortest path with O(x) heavy edges • # of edges is O~(n/d * n2/3 * x) = O~(n4/3). Time is O~(n/d * nd) = O~(n2). • Vary both d and x in powers of 2. Take the union of the edge-sets found. Talk Outline 1. Spanners and related objects 1. 2. Definition Applications 2. Previous Work 3. Our Results 4. Our Techniques for Additive-6 spanner • • 5. New existence proof Efficiency Conclusion Conclusion • New path-hitting framework improves running times of spanner problems to O~(n2) – Additive-6 spanner with O~(n4/3) edges – Further sparsifies inputs with large girth – Approximate source-wise preservers • Other graph problems for which technique may apply – Constructing emulators more efficiently – Constructing near-additive spanners more efficiently, i.e., for all pairs u, v, δH(u,v) · (1+ε)δG(u,v) + 4, where ε > 0 is arbitrary