Transitive-Closure Spanner of Directed Graphs
description
Transcript of Transitive-Closure Spanner of Directed Graphs
Transitive-Closure Spanner of Directed Graphs
Kyomin JungKAIST
2009 Combinatorics Workshop
Joint work with Arnab Bhattacharyya MIT Elena Grigorescu MIT Sofya Raskhodnikova Penn State U.
David Woodruff IBM Almaden
Appeared in SODA ‘09
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
Transitive-Closure Spanners
Transitive closure TC(G) has an edge from u to v iffG has a path from u to v
k-TC-spanner H of G has TC(H) = TC(G) and dH(u,v) ≤ k iffG has a path from u to v
Alternatively: k-TC-spanner of G is a k-spanner of TC(G)
G TC(G)
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)) edgeswhere (k,n) is the kth-row inverse Ackermann function
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)
Let OPT be 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]
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
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
12
Generalization: Monotonicity over PO domains
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
0
1
0
2 4 3 7651
3 4 5 6
4 4 5 6
5 3 4 5
1 2 3 4
1
0
1
0
Monotonicity Testers via Sparse 2-TC-spanners [Jung et al]
Sparse 2-TC-spanner for graph
G
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
Our Contributions• Common abstraction for several applications• Structural results on TC-spanners [Jung et al]
– Path-separable graphsO(1)-path-separable graphs have k-TC-spanners of size O(n log n ¢(k,n))
• e.g., improves run time of monotonicity testers on planar graphs from O((n1/2 log n)/²) [FLNRRS02] to O((log2 n)/²)
• Computational results k-TC-Spanner: Given a graph, compute a sparsest k-TC-spanner
– Algorithms– Inapproximability
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 eachr-path-separators [Abraham Gavoille 06]• Removing nodes on r paths from any spanning tree of G disconnects 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]
Our ContributionsA
lgor
ithm
s• Common abstraction for several applications• Structural results on TC-spanners• Computational results on k-TC-Spanner
Setting of k Approxi-mability
Authors/Technique
Notes
k=2 O(log n) [Kortsarz Peleg]k=3 O(n2/3 polylog n) [Elkin Peleg]
k > 2 O((n log n)1-1/k) [Jung et al] LP+sampling
Applies to directed spanners ,….Simplifies [EP] for k=3
Our Contributions• Common abstraction for several applications• Structural results on TC-spanners• Computational results on k-TC-Spanner
Setting of k Inapproxi-mability
Assumption Notes
k = 2 (log n) P NP [Jung et al]Matches upper bound
constant k > 2 (2log1-² n) NP( DTIME(2polylog n) [Jung et al]
Har
dnes
s
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
• For each edge e 2 G, 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, yp 2 [0,1]
Approximation Algorithm: Linear Program
Approximation Algorithm: LP + Sampling• Solve the linear program, let the solution variables be xe
*, yp*
• Define a rounding scheme: include e in the k-Spanner H if and only if xe
* ¸ 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.
…
Samplingsolves the“many paths”case
LP solvesthe “few paths” case
ConclusionOur 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.