Transitive-Closure Spanner of Directed Graphs

17
Transitive-Closure Spanner of Directed Graphs Kyomin Jung KAIST 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

description

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. - PowerPoint PPT Presentation

Transcript of Transitive-Closure Spanner of Directed Graphs

Page 1: 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

Page 2: Transitive-Closure  Spanner of   Directed Graphs

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

Page 3: Transitive-Closure  Spanner of   Directed Graphs

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)

Page 4: Transitive-Closure  Spanner of   Directed Graphs

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

Page 5: Transitive-Closure  Spanner of   Directed Graphs

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]

Page 6: Transitive-Closure  Spanner of   Directed Graphs

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

Page 7: Transitive-Closure  Spanner of   Directed Graphs

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

Page 8: Transitive-Closure  Spanner of   Directed Graphs

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

Page 9: Transitive-Closure  Spanner of   Directed Graphs

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

Page 10: Transitive-Closure  Spanner of   Directed Graphs

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

Page 11: Transitive-Closure  Spanner of   Directed Graphs

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]

Page 12: Transitive-Closure  Spanner of   Directed Graphs

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

Page 13: Transitive-Closure  Spanner of   Directed Graphs

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

Page 14: Transitive-Closure  Spanner of   Directed Graphs

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

Page 15: Transitive-Closure  Spanner of   Directed Graphs

• 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

Page 16: Transitive-Closure  Spanner of   Directed Graphs

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

Page 17: Transitive-Closure  Spanner of   Directed Graphs

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.