1 / 17

Transitive-Closure Spanner of Directed Graphs

2009 Combinatorics Workshop. Transitive-Closure Spanner of Directed Graphs. Kyomin Jung KAIST. Joint work with A rnab Bhattacharyya MIT Elena Grigorescu MIT Sofya Raskhodnikova Penn State U. David Woodruff IBM Almaden. Appeared in SODA ‘09.

mada
Download Presentation

Transitive-Closure Spanner of Directed Graphs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 2009 Combinatorics Workshop Transitive-Closure Spanner of Directed Graphs Kyomin Jung KAIST Joint work with Arnab Bhattacharyya MIT Elena GrigorescuMIT SofyaRaskhodnikovaPenn State U. David Woodruff IBM Almaden Appeared in SODA ‘09

  2. Graph Spanners [Awerbuch85,Peleg Schäffer89] A subgraph H of a graph G is a k-spanner if for all pairs of vertices u, v in G, dH(u,v) ≤ k dG(u,v) Goal: find a sparsest k-spanner dense graph G sparse subgraph H

  3. Transitive-Closure Spanners Transitive closure TC(G) has an edge from u to v iff G has a path from u to v k-TC-spannerH of G has TC(H) = TC(G) and dH(u,v) ≤k iff G has a path from u to v Alternatively: k-TC-spanner of G is a k-spanner of TC(G) G TC(G)

  4. Example: Directed Line on n Vertices • 2-TC-spanner O(n log n) edges • 3-TC-spanner O(n log log n) edges • 4-TC-spanner O(n log* n) edges • k-TC-spanner O(n(k,n)) edges where (k,n) is the kth-row inverse Ackermann function … …

  5. Previous work Structural results on TC-spanners (what is a sparsest k-TC-spanner for a given graph family?) • Shortcut graphs (special case when |E(H)|≤2 |E(G)|) [Thorup 92, 95, Hesse 03] implicit in • data structures [Yao 82, Alon Schieber 87, Chazelle 87] • property testing [Dodis Goldreich Lehman Raskhodnikova Ron Samorodnitsky 99] • access control [Attalah Frikken Blanton 05] Computational results on directed spanners (given a graph, compute a sparsest k-spanner) LetOPTbe number of edges in sparsest k-TC-spanner. • O(log n)-approximation of OPT for k=2[Kortsarz Peleg 94] • O(n2/3 polylog n)-approximation of OPT for k=3[Elkin Peleg 99]

  6. Our Contributions • Common abstraction for several applications • property testing • access control • data structures • Structural results on TC-spanners • Sparse TC-spanners for planar graphs and other path-separable graph families • Computational results k-TC-Spanner: Given a graph, compute a sparsest k-TC-spanner • Algorithms • Inapproximability

  7. Application : Testing if a List is Sorted • Is a list of n numbers sorted? Requires reading entire list. • Is a list of n numbers sorted or ²-far from sorted? (An ² fraction of list entries have to be changed to make it sorted.) [Ergün Kannan Kumar Rubinfeld Viswanathan 98]: O((log n)/²) time

  8. Generalization: Monotonicity over PO domains 1 1 • 4 5 6 • 4 5 6 • 3 4 5 • 1 2 3 4 Graph = partially ordered domain; node labels = values of the function • A function is monotone if there are no violated edges (along which labels decrease): 1 0 • A function is ²-far from monotone if ¸² fraction of labels need to be changed to make it monotone. [GGLRS 00], [DDGLR 99], [FLNRRS 02] 1 1 0 0 1 2 5 4 3 6 7 0 0

  9. Monotonicity Testers via Sparse 2-TC-spanners [Jung et al] Sparse 2-TC-spanner for graphG Fast monotonicity tester with respect to poset given by G Size:s(n) Query complexity: O(s(n)/(² n)) Tester checks for violations on randomly chosen edges of the 2-TC-spanner

  10. Our Contributions • Common abstraction for several applications • Structural results on TC-spanners [Jung et al] • Path-separable graphs O(1)-path-separable graphs have k-TC-spanners of size O(nlog n ¢(k,n)) • e.g., improves run time of monotonicity testers on planar graphs from O((n1/2 log n)/²)[FLNRRS02] to O((log2n)/²) • Computational results k-TC-Spanner: Given a graph, compute a sparsest k-TC-spanner • Algorithms • Inapproximability

  11. Graph Separators (for Undirected Graphs) Used in recursive constructions S-separators[Lipton Tarjan 79] • Removing S nodes disconnects a graph G on n nodes into connected components with ≤n/2 nodes each r-path-separators[Abraham Gavoille 06] • Removing nodes on rpaths from any spanning tree of Gdisconnects G into connected components with ≤n/2 nodes each Gain • For some graphs r << S e.g., planar graphs are £(n1/2)-separable but 3-path-separable [Thorup 04]

  12. Our Contributions • Common abstraction for several applications • Structural results on TC-spanners • Computational results on k-TC-Spanner Algorithms

  13. Our Contributions • Common abstraction for several applications • Structural results on TC-spanners • Computational results on k-TC-Spanner Hardness

  14. Approximation Algorithms • For any k > 2, we achieve an O((n lg n)1-1/k)approximation algorithm for the Directed Spanner Problem in polynomial time • Gives the same ratio for Transitive-Closure spanners • Yields the first sublinear ratio for k > 3 • Solves the main open question of [Elkin Peleg 05] • Our technique is a new balancing of a linear program with a sampling-based approach • Greatly simplifies the previous O(n2/3 polylog n)-approximation algorithm [Elkin Peleg 05] for k = 3

  15. Approximation Algorithm: Linear Program • For each edge e2G, introduce binary variable xe, which indicates whether or not we include e in the k-Spanner H • For each path p of length at most k in G, introduce binary variable yp indicating whether or not we include p in H. For constant k, the number of such paths is O(nk+1) = poly(n). • Integer programming formulation: Minimize total number of edges included, subject to: (i) having at least 1 path of length at most k between every pair of vertices adjacent in G and (ii) for every path p, for every edge e in p, having xe¸ yp • Linear programming relaxation: xe, yp2 [0,1]

  16. Approximation Algorithm: LP + Sampling Sampling solves the “many paths” case LP solves the “few paths” case … • Solve the linear program, let the solution variables bexe*, yp* • Define a rounding scheme: include e in thek-Spanner H if and only ifxe*¸1/n1-1/k Problem for LP if lots of paths present between a pair of vertices • Sample O(n1-1/k ) vertices and grow BFS trees around them. • Claim: H is a k-Spanner of G with prob. at least 1-1/n.

  17. Conclusion Our contributions • Common abstraction for several applications • monotonicity testing, access control, data structures • Structural results on TC-spanners • path-separable graphs • Computational results on k-TC-Spanner • new algorithms and inapproximability results Open question • For which k, does k-TC-Spanner admit efficient approximation algorithms? • Showed strong inapproximability for any constant k > 2 • What about restricted class of graphs, ex. Hyper-cube ? Thank you.

More Related