Randomized Algorithms Kyomin Jung KAIST Applied Algorithm Lab Jan 12, WSAC 2010 1.
1 Transitive-Closure Spanners Sofya Raskhodnikova Penn State University Joint work with Arnab...
-
Upload
bret-osswald -
Category
Documents
-
view
214 -
download
2
Transcript of 1 Transitive-Closure Spanners Sofya Raskhodnikova Penn State University Joint work with Arnab...
1
Transitive-Closure Spanners
Sofya RaskhodnikovaPenn State University
Joint work with Arnab Bhattacharyya MIT Elena Grigorescu MIT Kyomin Jung MIT David Woodruff IBM Almaden
2
Graph Spanners [Awerbuch85,Peleg Schäffer89]
A subgraph H of G is a k-spanner if for all pairs of vertices u, v in G,
distanceH(u,v) ≤ k distanceG(u,v)
Goal: to find a sparsest k-spannerApplications: • efficient routing• protocols in unsynchronized networks • parallel /distributed algorithms for approximate shortest paths
dense graph G sparse subgraph H
3
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 distanceH(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 ≤ 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
– Add a (k-2)-TC-spanner on hubs – Connect each node to the hubs before and after– Recurse on the fragments between hubs
n1/2 hubs
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]• For directed trees [Thorup 97] 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)
• O(log n)-approximation algorithm for k=2 [Kortsarz Peleg 94]• O(n2/3 polylog n)-approximation 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– path-separable graphs– directed hypercube
• Computational results on directed spanners k-TC-Spanner: Given a graph, compute a sparsest k-TC-spanner
– new algorithms and inapproximability results
7
Application 1: 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 [Fischer 01]: (log n) queries
• Attempts: 1. Test: Pick a random number and compare it to the next.
Fails on: 1 1 1 1 1 1 1 0 0 0 0 0 0 0 Ã 1/2-far from sorted
2. Test: Pick two random numbers and compare them.
Fails on: 1 0 2 1 3 2 4 3 5 4 6 5 7 6 Ã 1/2-far from sorted
12
8
Is a list sorted or ²-far from sorted?
[Dodis Goldreich Lehman Raskhodnikova Ron Samorodnitsky 99] Test can be viewed as: Pick a random edge from sparsest 2-TC-spanner for
the line and compare its endpoints. Reject if they are out of order.
1 2 5 4 3 6 7 Claim 1. There are · n log n edges in the 2-TC-spanner.Claim 2. Green numbers are sorted.Proof: Any two green numbers are connected by a length-2 path of black edgesAnalysis of the test:• All sorted lists are accepted.• If a list is ²-far from sorted, it has ¸ ² n red numbers, ) ¸ ² n/2 red edges – If £((log n )/²) edges are checked, a red edge will be discovered w.p. ¸2/3
12
12
5 4 3
9
Generalization: Testing if a Matrix is Sorted3 4 5 63 4 5 62 3 4 51 2 3 4
• Is a matrix sorted along all rows and columns or far from sorted (many numbers have to be changed to make it sorted)?
• [Goldreich Goldwasser Lehman Ron Samorodnitsky 00, Batu Rubinfeld White 99, Dodis Goldreich Lehman Raskhodnikova Ron Samorodnitsky 99, Halevy Kushilevitz 04] considered this problem for d-dimensional matrices.
• Is a function f : {1,…,m}d ! R monotone or ²-far from monotone? [DGLRRS99]: O(d ¢ (log m) ¢ (log |R|) /²) time [Fischer Lehman Newman Raskhodnikova Rubinfeld Samorodnitsky 02]: for m = 2 and R = {0,1}, need (log log d) queries
12
10
Monotonicity of Functions Over PO domains
[FLNRRS 02]:
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.
• Testing monotonicity is equivalent to several other testing problems.
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
1
1
0
0
1
1
0
01
0
1
0
1
0
1
0
monotone ½-far from monotone
11
Monotonicity Testers via Sparse 2-TC-spanners
Lemma. G has a 2-TC-spanner with s(n) edges
monotonicity of functions on G can be tested in time O(s(n)/(² n))
Questions: • What is the size of the sparsest 2-TC-spanner for a hypercube
(hypergrid)?• other families of graphs?• Given a graph, can we efficiently construct a sparse 2-TC-
spanner for it?
12
12
Application 2: Access Control
Efficient key management in access hierarchies [Attalah Frikken Blanton 05, Attalah Blanton Frikken 06, Santis Ferrara Massuci 07]
Used in content distribution, operating systems and project development
Access class with
private key ki Permission edge with
public key Pij
Need ki to efficiently compute kj from Pij
To speed up key derivation time, add shortcut edges consistent with permission edges
13
Application 3: Data Structures
Computing partial products in a semigroup [Yao 82, Alon Schieber 87, Chazelle 87, Thorup 97]
Example:
Goal: quickly answer queries max(ai ,…,aj) for all i · j.
• Question: How many values should we store if we want to compute max of at most k numbers per query?
• Answer: storage = size of sparsest k-TC-spanner for the directed line.
This example generalizes to other partial products and to directed trees.
a1 ai aj an… … …
max(ai ,…,aj)
14
Our Contributions
• Common abstraction for several applications• Structural results on TC-spanners
– 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)/²)
– Directed hypercube Hd
Sparsest 2-TC-spanner for Hd has size (2cd) and O(2cd d3) where c¼ 1.1620• Hd has £(2d d) edges; TC(Hd) has 3d edges• Needed a 2-TC-spanner of size o(2d d2) to improve monotonicity tests
• Computational results on directed spanners k-TC-Spanner: Given a graph, compute a sparsest k-TC-spanner
– New algorithms and inapproximability results
15
Graph Separators (for Undirected Graphs)
Used in recursive constructions
S-separators [Lipton Tarjan]• Removing S nodes disconnects a graph G on n nodes into connected
components with · n/2 nodes eachs-path-separators [Abraham Gavoille 06]• Removing nodes on s paths from any spanning tree of G disconnects G
into connected components with · n/2 nodes each
Gain– For some graphs s << S e.g., planar graphs are £(n1/2)-separable but 3-path-separable
from any spanning tree of G
16
1. Construct k-TC-spanner for each path separator (line) P as before.2. For each node v with a path to some node in P:
– Let v’ = smallest node in P such that v à v’– At each stage of recursion, connect v to the smallest hub above v’
3. Deal symmetrically with each node u with a path from some node in P.Claim. If v à u via some node in P, we added a path of length · k from v to u.Proof: v and u are connected to the same hubs as v’ and u’, respectively.
Constructing k-TC-spanners via Path Separators
v
Pv’
u
u’
· (k,n) edges
O(n (k,n) ¢ log n ) edges
17
Path Separators for Directed Graphs
Our guarantee. If the underlying undirected graph for G is s-path-separable, we can efficiently find a set of directed paths in G:
• Removing nodes on these paths disconnects G into connected components with · n/2 nodes each
• Each vertex v is comparable to nodes on O(s) paths
Technique. Unlike [Abraham Gavoille 06], we choose path separators dynamically (not from the same spanning tree).
Theorem. O(1)-path-separable graphs have k-TC-spanners of size O(n log n ¢(k,n))
12
Our ContributionsA
lgor
ith
ms
• 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) CP+sampling Applies to directed spanners ,….Simplifies [EP] for k=3
k = (log n) O((n log n)/k2) PathSampling Better than directed spanners
Setting of k Inapproxi-mability
Assumption Notes
k = 2 (log n) P NP Matches upper bound
constant k > 2 (2log1-² n) NP( DTIME(npolylog n) Improvement )breakthrough
k = n1-° 8 > 0 (1+²) P NP 18
Har
dnes
s
19
k-TC-Spanner: (2log1-² n)-inapproximability for k>2
Starting point:• Reduce from Min-Rep• Use generalized butterfly graphs and broom graphs
Instance. Undirected bipartite graphIn each part: n nodes, grouped in r clusters
|Ai|=|Bj|= n/r
The Min-Rep Problem
A1
A3
B1
B2
B3
supergraph
Theorem [Elkin Peleg 07]. Min-Rep is (2log1-² n)-inapproximable unless NP µ DTIME(npolylog n). 20
(Ai,Bj) is a superedge iffsome node in Ai is adjacent to some node in Bj.
A2
Rep-Cover is a node set S: for each superedge(Ai,Bj) there is edge (a,b) with a2AiÅS, b2BjÅSGoal. Find minimum size rep-cover.
21
Generalized Butterfly Graphs [Woodruff 06]
• Outdegree = indegree = d• There is a unique path from (a1,…,ak-1, 1) to (b1,…,bk-1, k)
• Each shortcut edge is on at most d k-3 such paths • At least d k+1 shortcuts must be added to reduce diameter by 1
Nodes: (a1,a2,…,ak-1, i) where a1,…,ak-12 [d] and i2 [k]
12
. . .
. . .
layer 1 layer i layer i+1 layer k
(a1,…,ai,…,ak-1, i)
(a1,…,bi,…,ak-1, i+1)
22
Graphs Used in the Reduction• Generalized butterfly
• Broom – A complete bipartite graph with disjoint stars attached to all
right nodes
d d
d
A1
A3
B1
B2
B3
23
A2
Min-Rep Brooms3 layers
Butterfliesk layers
Reduction from Min-Rep to k-TC-Spanner
A Sparse TC-Spanner for the Hard Instance
A1
A3
B1
B2
B3
24
A2
layer k-2
OPT d 2 + |G| edges, where OPT is the size of minimum rep-cover
25
ConclusionOur contributions• Common abstraction for several applications
– monotonicity testing, access control, data structures • Structural results on TC-spanners
– path-separable graphs, directed hypercube• Computational results on k-TC-Spanner
– new algorithms and inapproximability results
Open questions• Can TC-spanner perspective be used to get new algorithms for
problems related to monotonicity testing?– approximating distance to monotonicity or the length of LIS– in streaming?
• Other applications of TC-spanners?