Data Streams, Dyck Languages, and Detecting Dubious Data Structures
|
|
- Coleen Shelton
- 6 years ago
- Views:
Transcription
1 Data Streams, Dyck Languages, and Detecting Dubious Data Structures Amit Chakrabarti! Graham Cormode! Ranganath Kondapally! Andrew McGregor! Dartmouth College AT&T Research Labs Dartmouth College University of Massachusetts, Amherst
2
3
4
5 At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted
6 5 MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5)
7 5 3 MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3)
8 extract min! 5 3 MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3)
9 3 5 MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3) ext(3)
10 3 5 6 MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3) ext(3) ins(6)
11 MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3) ext(3) ins(6) ins(7)
12 extract min! MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3) ext(3) ins(6) ins(7)
13 MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3) ext(3) ins(6) ins(7) ext(5)
14 extract min! MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3) ext(3) ins(6) ins(7) ext(5)
15 653 7 MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3) ext(3) ins(6) ins(7) ext(5) ext(6)
16 extract min! MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3) ext(3) ins(6) ins(7) ext(5) ext(6)
17 5376 MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3) ext(3) ins(6) ins(7) ext(5) ext(6) ext(7)
18 5376 MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3) ext(3) ins(6) ins(7) ext(5) ext(6) ext(7)? Challenge: Without remembering all the interaction, can you verify the priority queue performed correctly?
19 5376 MEMORY At each step, user inserts a value into the memory or asks that the smallest currently stored value is extracted ins(5) ins(3) ext(3) ins(6) ins(7) ext(5) ext(6) ext(7)? Challenge: Without remembering all the interaction, can you verify the priority queue performed correctly? Motivation: Memory checking useful when using cheap commodity hardware. [Blum, Evans, Gemmell, Kannan, Naor 94]
20 PQ Language Problem
21 PQ Language Problem Let PQ be set of legitimate transcripts of a priority queue that starts and ends empty.
22 PQ Language Problem Let PQ be set of legitimate transcripts of a priority queue that starts and ends empty. ins(5), ins(3), ext(3), ins(7), ext(5), ext(7) PQ
23 PQ Language Problem Let PQ be set of legitimate transcripts of a priority queue that starts and ends empty. ins(5), ins(3), ext(3), ins(7), ext(5), ext(7) PQ ins(5), ext(3), ins(5), ins(7), ext(7), ext(5) PQ
24 PQ Language Problem Let PQ be set of legitimate transcripts of a priority queue that starts and ends empty. ins(5), ins(3), ext(3), ins(7), ext(5), ext(7) PQ ins(5), ext(3), ins(5), ins(7), ext(7), ext(5) PQ PQ Problem: Given streaming access to length N transcript, determine if it s in PQ using o(n) space.
25 PQ Language Problem Let PQ be set of legitimate transcripts of a priority queue that starts and ends empty. ins(5), ins(3), ext(3), ins(7), ext(5), ext(7) PQ ins(5), ext(3), ins(5), ins(7), ext(7), ext(5) PQ PQ Problem: Given streaming access to length N transcript, determine if it s in PQ using o(n) space. Previous results: If each extract is annotated with insert time, Õ( N) space suffices. [Chu, Kannan, McGregor 07] ins(5), ins(3), ext(3,2), ins(7), ext(5,1), ext(7,4) PQ+
26 PQ Language Problem Let PQ be set of legitimate transcripts of a priority queue that starts and ends empty. ins(5), ins(3), ext(3), ins(7), ext(5), ext(7) PQ ins(5), ext(3), ins(5), ins(7), ext(7), ext(5) PQ PQ Problem: Given streaming access to length N transcript, determine if it s in PQ using o(n) space. Previous results: If each extract is annotated with insert time, Õ( N) space suffices. [Chu, Kannan, McGregor 07] ins(5), ins(3), ext(3,2), ins(7), ext(5,1), ext(7,4) PQ+? Big Question: Is annotation necessary for sub-linear space?
27 Dyck Language Problem [Magniez, Mathieu, Nayak 10]
28 Dyck Language Problem [Magniez, Mathieu, Nayak 10] DYCK2 is the set of strings of balanced brackets when there are two different types of brackets: ((([])()[])) DYCK 2 ([([]])[])) DYCK2
29 Dyck Language Problem [Magniez, Mathieu, Nayak 10] DYCK2 is the set of strings of balanced brackets when there are two different types of brackets: ((([])()[])) DYCK 2 ([([]])[])) DYCK2 DYCK Problem: Given streaming access to length N string, determine if it s in DYCK2 using o(n) space.
30 Dyck Language Problem [Magniez, Mathieu, Nayak 10] DYCK2 is the set of strings of balanced brackets when there are two different types of brackets: ((([])()[])) DYCK 2 ([([]])[])) DYCK2 DYCK Problem: Given streaming access to length N string, determine if it s in DYCK2 using o(n) space. Previous results: Given one pass, Õ( N) space suffices. If you re allowed one forward pass followed by a reverse pass, Õ(log N) space suffices.
31 Dyck Language Problem [Magniez, Mathieu, Nayak 10] DYCK2 is the set of strings of balanced brackets when there are two different types of brackets: ((([])()[])) DYCK 2 ([([]])[])) DYCK2 DYCK Problem: Given streaming access to length N string, determine if it s in DYCK2 using o(n) space. Previous results: Given one pass, Õ( N) space suffices. If you re allowed one forward pass followed by a reverse pass, Õ(log N) space suffices.? Big Question: Does Õ(log N) space suffice if we re only allowed multiple forward passes?
32 Outline
33 Outline I. Priority Queues and Memory Checking Algorithms Õ( N) space algorithm for PQ with no annotations! Extensions to stacks, double-ended queues, etc.
34 Outline I. Priority Queues and Memory Checking Algorithms Õ( N) space algorithm for PQ with no annotations! Extensions to stacks, double-ended queues, etc. II. Multipass Stream Lower Bounds Any constant pass algorithm for DYCK2 or PQ that only uses forward passes requires Ω( N) space
35 Outline I. Priority Queues and Memory Checking Algorithms Õ( N) space algorithm for PQ with no annotations! Extensions to stacks, double-ended queues, etc. II. Multipass Stream Lower Bounds Any constant pass algorithm for DYCK2 or PQ that only uses forward passes requires Ω( N) space III. Information Complexity Trade-offs for Augmented Index Even multi-round protocol leak information.
36 I. Memory Checking II. Lower Bounds III. Augmented Indexing
37 I. Memory Checking
38 PQ Algorithm
39 PQ Algorithm Thm: There exists a O( N log N) space algorithm with O(log N) amortized update time for recognizing PQ.
40 PQ Algorithm Thm: There exists a O( N log N) space algorithm with O(log N) amortized update time for recognizing PQ. Prelim: Easy to check that set of values inserted equals set of values extracted using fingerprinting: f S (x) = a S(x a) mod p
41 PQ Algorithm Thm: There exists a O( N log N) space algorithm with O(log N) amortized update time for recognizing PQ. Prelim: Easy to check that set of values inserted equals set of values extracted using fingerprinting: f S (x) = a S(x a) mod p! For this talk: Assume inserted elements are distinct and that inserts come before their corresponding extract. I.e., we re trying to identify the following bad pattern: ins(u)... ext(v)... ext(u) for some u < v
42 Epochs and Local Bad Patterns...
43 Epochs and Local Bad Patterns... Increasing Value Increasing Time
44 Epochs and Local Bad Patterns... Increasing Value Increasing Time Split length N sequence into N epochs of length N
45 Epochs and Local Bad Patterns... Epoch-1 Epoch-2 Epoch-3 Epoch-4 Epoch-5 Epoch-6 Increasing Value Increasing Time Split length N sequence into N epochs of length N
46 Epochs and Local Bad Patterns... Epoch-1 Epoch-2 Epoch-3 Epoch-4 Epoch-5 Epoch-6 Increasing Value Increasing Time Split length N sequence into N epochs of length N Defn: Bad pattern ins(u)... ext(v)... ext(u) is local if ins(u) and ext(v) occur in same epoch and long-range otherwise.
47 Epochs and Local Bad Patterns... Epoch-1 Epoch-2 Epoch-3 Epoch-4 Epoch-5 Epoch-6 Increasing Value Increasing Time Split length N sequence into N epochs of length N Defn: Bad pattern ins(u)... ext(v)... ext(u) is local if ins(u) and ext(v) occur in same epoch and long-range otherwise. Using O( N) space, we can buffer each epoch and check for local bad patterns.
48 Catching Long-Range Bad Patterns... 1/2
49 Catching Long-Range Bad Patterns... 1/2 f(1) f(2) Defn: Let ft(i) be maximum value extracted between end of i-th epoch and present time t.
50 Catching Long-Range Bad Patterns... 1/2 f(1) f(2) Defn: Let ft(i) be maximum value extracted between end of i-th epoch and present time t.
51 Catching Long-Range Bad Patterns... 1/2 f(1) f(2) f(3) Defn: Let ft(i) be maximum value extracted between end of i-th epoch and present time t.
52 Catching Long-Range Bad Patterns... 1/2 f(1) f(2) f(3) Defn: Let ft(i) be maximum value extracted between end of i-th epoch and present time t.
53 Catching Long-Range Bad Patterns... 1/2 f(1) f(2) f(3) Defn: Let ft(i) be maximum value extracted between end of i-th epoch and present time t.
54 Catching Long-Range Bad Patterns... 1/2 f(1) f(2) f(3) Defn: Let ft(i) be maximum value extracted between end of i-th epoch and present time t. Defn: Each insert or extract is adopted by k-th epoch where k = min{j : f(j) u} where we assume f(current epoch)=0.
55 Catching Long-Range Bad Patterns... 2/2
56 Catching Long-Range Bad Patterns... 2/2 Lemma: If ins(u)... ext(v)... ext(u) is a long-range bad pattern then ins(u) and ext(u) are adopted by different epochs.
57 Catching Long-Range Bad Patterns... 2/2 Lemma: If ins(u)... ext(v)... ext(u) is a long-range bad pattern then ins(u) and ext(u) are adopted by different epochs. Proof: i. Let ins(u) be adopted by k-th epoch.
58 Catching Long-Range Bad Patterns... 2/2 Lemma: If ins(u)... ext(v)... ext(u) is a long-range bad pattern then ins(u) and ext(u) are adopted by different epochs. Proof: i. Let ins(u) be adopted by k-th epoch. ii. After v is extracted f(k) v>u and hence ext(u) will be adopted by k -th epoch for some k >k.
59 Catching Long-Range Bad Patterns... 2/2 Lemma: If ins(u)... ext(v)... ext(u) is a long-range bad pattern then ins(u) and ext(u) are adopted by different epochs. Proof: i. Let ins(u) be adopted by k-th epoch. ii. After v is extracted f(k) v>u and hence ext(u) will be adopted by k -th epoch for some k >k. Lemma: If there are no bad patterns, every ins(u) and ext(u) pair get adopted by the same epoch.
60 Catching Long-Range Bad Patterns... 2/2 Lemma: If ins(u)... ext(v)... ext(u) is a long-range bad pattern then ins(u) and ext(u) are adopted by different epochs. Proof: i. Let ins(u) be adopted by k-th epoch. ii. After v is extracted f(k) v>u and hence ext(u) will be adopted by k -th epoch for some k >k. Lemma: If there are no bad patterns, every ins(u) and ext(u) pair get adopted by the same epoch. Algorithm: Using fingerprinting to check: {(u,k) : ins(u) adopted by k} = {(u,k) : ext(u) adopted by k}.
61 Finishing Up
62 Finishing Up Some steps to removing assumptions: i. Within buffered epoch, rearrange terms such that all inserts follow a series of increasing extracts: ensures all extracts are adopted by previous epochs. ii. Keep track of number of times epoch k adopts ins(u) while f(k)<u and while f(k)=u separately and whether epoch k has ever adopted more ext(u) s than ins(u) s.
63 Finishing Up Some steps to removing assumptions: i. Within buffered epoch, rearrange terms such that all inserts follow a series of increasing extracts: ensures all extracts are adopted by previous epochs. ii. Keep track of number of times epoch k adopts ins(u) while f(k)<u and while f(k)=u separately and whether epoch k has ever adopted more ext(u) s than ins(u) s. Thm: There exists a O( N log N) space algorithm with O(log N) amortized update time for recognizing PQ.
64 Finishing Up Some steps to removing assumptions: i. Within buffered epoch, rearrange terms such that all inserts follow a series of increasing extracts: ensures all extracts are adopted by previous epochs. ii. Keep track of number of times epoch k adopts ins(u) while f(k)<u and while f(k)=u separately and whether epoch k has ever adopted more ext(u) s than ins(u) s. Thm: There exists a O( N log N) space algorithm with O(log N) amortized update time for recognizing PQ. Extensions: Sub-linear space streaming recognition of other data structures like stacks, double-ended queues...
65 I. Memory Checking II. Lower Bounds III. Augmented Indexing
66 II. Lower Bounds
67 Augmented Index
68 Augmented Index Many space lower bounds in data stream model are based on reductions from communication complexity.
69 Augmented Index x {0,1} n y {0,1} k-1, k [n], c {0,1}, Many space lower bounds in data stream model are based on reductions from communication complexity. Augmented Index: Alice has x {0,1} n and Bob has a prefix y {0,1} k-1 of x and c {0,1}. Bob wants to check if c=xk.
70 Augmented Index x {0,1} n y {0,1} k-1, k [n], c {0,1}, Many space lower bounds in data stream model are based on reductions from communication complexity. Augmented Index: Alice has x {0,1} n and Bob has a prefix y {0,1} k-1 of x and c {0,1}. Bob wants to check if c=xk. Thm: Any 1/3-error, one-way protocol from Alice to Bob for AIn requires Ω(n) bits sent. [Miltersen et al. JCSS 98]
71 Augmented Index x {0,1} n y {0,1} k-1, k [n], c {0,1}, Many space lower bounds in data stream model are based on reductions from communication complexity. Augmented Index: Alice has x {0,1} n and Bob has a prefix y {0,1} k-1 of x and c {0,1}. Bob wants to check if c=xk. Thm: Any 1/3-error, one-way protocol from Alice to Bob for AIn requires Ω(n) bits sent. [Miltersen et al. JCSS 98] Our main result concerns multi-way protocols but we ll cover the relevance to DYCK2 and PQ first...
72 Multi-player Augmented Index
73 Multi-player Augmented Index x 1 y 1, k 1, c 1 x 2 y 2, k 2, c 2 x 3 y 3, k 3, c 3 We now have 2m players A1,..., Am, B1,..., Bm where each Ai and Bi have an instance (x i,k i,c i ) of AIn
74 Multi-player Augmented Index x 1 y 1, k 1, c 1 x 2 y 2, k 2, c 2 x 3 y 3, k 3, c 3 x 3 x 2 x 1 We now have 2m players A1,..., Am, B1,..., Bm where each Ai and Bi have an instance (x i,k i,c i ) of AIn Want to determine if any of the AI instances are false using private messages communicated in the order A1 B1 A2 B2... Am Bm Am Am-1... A1
75 Multi-player Augmented Index x 1 y 1, k 1, c 1 x 2 y 2, k 2, c 2 x 3 y 3, k 3, c 3 x 3 x 2 x 1 We now have 2m players A1,..., Am, B1,..., Bm where each Ai and Bi have an instance (x i,k i,c i ) of AIn Want to determine if any of the AI instances are false using private messages communicated in the order A1 B1 A2 B2... Am Bm Am Am-1... A1 Thm: Any 1/3-error, p-round protocol for MULTI-AIm,n needs ps=ω(min m,n) where s is max message length.
76 Reduction to Dyck
77 Reduction to Dyck ([( ( [ (
78 Reduction to Dyck ([( )][( ( [ ( ) ( ][
79 Reduction to Dyck ([( )][( [[( ( [ ( ) ( ][ ( [ [
80 Reduction to Dyck ([( )][( [[( )])([( ( [ [ ) ( ] [ )( ( [ ( ) ( ][
81 Reduction to Dyck ([( )][( [[( )])([( (([ [ ( ( ( [ [ ) ( ] [ )( ( [ ( ) ( ][
82 Reduction to Dyck ([( )][( [[( )])([( (([ ][ [ ( ( ][ ( [ [ ) ( ] [ )( ( [ ( ) ( ][
83 Reduction to Dyck ([( )][( [[( )])([( (([ ][ ])) [ ( ( ][ ] ) ) ( [ [ ) ( ] [ )( ( [ ( ) ( ][
84 Reduction to Dyck ([( )][( [[( )])([( (([ ][ ])) )]] [ ( ( ][ ] ) ) ( [ [ ) ( ] [ )( ) ] ] ( [ ( ) ( ][
85 Reduction to Dyck ([( )][( [[( )])([( (([ ][ ])) )]] )]) [ ( ( ][ ] ) ) ( [ [ ) ( ] [ )( ) ] ] ( [ ( ) ( ][ ) ] )
86 Reduction to Dyck ([( )][( [[( )])([( (([ ][ ])) )]] )]) [ ( ( ][ ] ) ) ( [ [ ) ( ] [ )( ) ] ] ( [ ( ) ( ][ Ascension Problem [Magniez, Mathieu, Nayak 10] ) ] )
87 Reduction to Dyck
88 Reduction to Dyck Thm: A constant-pass, algorithm for DYCK2 that fail with probability at most 1/3 requires Ω( N) space.
89 Reduction to Dyck Thm: A constant-pass, algorithm for DYCK2 that fail with probability at most 1/3 requires Ω( N) space. Proof: i. Let A be a p-pass stream algorithm using s space.
90 Reduction to Dyck Thm: A constant-pass, algorithm for DYCK2 that fail with probability at most 1/3 requires Ω( N) space. Proof: i. Let A be a p-pass stream algorithm using s space. ii. Use A to construct a p-round protocol for MULTI-AI N, N where max message is s-bits: Each player simulates A on it s part of input using Magniez et al. reduction and forwards memory state to next player.
91 Reduction to Dyck Thm: A constant-pass, algorithm for DYCK2 that fail with probability at most 1/3 requires Ω( N) space. Proof: i. Let A be a p-pass stream algorithm using s space. ii. Use A to construct a p-round protocol for MULTI-AI N, N where max message is s-bits: Each player simulates A on it s part of input using Magniez et al. reduction and forwards memory state to next player. iii. Therefore s is Ω( N) as required.
92 Lower Bounds Summary
93 Lower Bounds Summary Thm: Any constant pass algorithm for recognizing PQ or DYCK2 requires a Ω( N) space.
94 Lower Bounds Summary Thm: Any constant pass algorithm for recognizing PQ or DYCK2 requires a Ω( N) space. Consequences: i. Multiple forward passes have no significant advantage for recognizing the languages considered. ii. One forward pass + one reverse pass is exponentially more powerful than two forward passes.
95 I. Memory Checking II. Lower Bounds III. Augmented Indexing
96 III. Augmented Indexing
97 Information Complexity [Chakrabarti, Shi, Wirth, Yao 01]
98 Information Complexity [Chakrabarti, Shi, Wirth, Yao 01] Entropy and Mutual Information: H(X ) = Σ Pr[X = x]lgpr[x = x] H(X Y ) = Σ Pr[X = x, Y = y]lgpr[x = x Y = y] I (X ; Y ) = H(X ) H(X Y ) = H(Y ) H(Y X ) I (X ; Y Z) = H(X Z) H(X Y, Z)
99 Information Complexity [Chakrabarti, Shi, Wirth, Yao 01] Entropy and Mutual Information: H(X ) = Σ Pr[X = x]lgpr[x = x] H(X Y ) = Σ Pr[X = x, Y = y]lgpr[x = x Y = y] I (X ; Y ) = H(X ) H(X Y ) = H(Y ) H(Y X ) I (X ; Y Z) = H(X Z) H(X Y, Z)
100 Information Complexity [Chakrabarti, Shi, Wirth, Yao 01] Entropy and Mutual Information: H(X ) = Σ Pr[X = x]lgpr[x = x] H(X Y ) = Σ Pr[X = x, Y = y]lgpr[x = x Y = y] I (X ; Y ) = H(X ) H(X Y ) = H(Y ) H(Y X ) I (X ; Y Z) = H(X Z) H(X Y, Z) Information cost method: Consider mutual information between random input for a communication problem and the communication transcript: I (transcript; input) length of transcript
101 Information Complexity [Chakrabarti, Shi, Wirth, Yao 01] Entropy and Mutual Information: H(X ) = Σ Pr[X = x]lgpr[x = x] H(X Y ) = Σ Pr[X = x, Y = y]lgpr[x = x Y = y] I (X ; Y ) = H(X ) H(X Y ) = H(Y ) H(Y X ) I (X ; Y Z) = H(X Z) H(X Y, Z) Information cost method: Consider mutual information between random input for a communication problem and the communication transcript: I (transcript; input) length of transcript
102 Information Complexity [Chakrabarti, Shi, Wirth, Yao 01] Entropy and Mutual Information: H(X ) = Σ Pr[X = x]lgpr[x = x] H(X Y ) = Σ Pr[X = x, Y = y]lgpr[x = x Y = y] I (X ; Y ) = H(X ) H(X Y ) = H(Y ) H(Y X ) I (X ; Y Z) = H(X Z) H(X Y, Z) Information cost method: Consider mutual information between random input for a communication problem and the communication transcript: I (transcript; input) length of transcript Can restrict to partial transcript and subsets of input: useful for proving direct-sum arguments.
103 Information Complexity of AIn
104 Information Complexity of AIn Defn: Let P be a protocol for AIn using public random string R. Let T be the transcript and (X, K, C)~ξ. Define icost A ξ (P) = I (T : X K, C, R) icost B ξ (P) = I (T : K, C X, R)
105 Information Complexity of AIn Defn: Let P be a protocol for AIn using public random string R. Let T be the transcript and (X, K, C)~ξ. Define icost A ξ (P) = I (T : X K, C, R) icost B ξ (P) = I (T : K, C X, R) Thm: Let P be a randomized protocol for AIn with error 1/3 under the uniform distribution μ. Then, icost A µ 0 (P) = Ω(n) or icost B µ 0 (P) = Ω(1) where μ0 is μ conditioned on XK=C.
106 MULTI-AIm,n versus AIn
107 MULTI-AIm,n versus AIn Defn: Let Q be a protocol for MULTI-AIm,n using public random string R. Let T be transcript and (X i,k i,c i )i [m]~ξ. icost ξ (Q) = I(T m :K 1,C 1,...,K m,c m X 1,...,X m,r) where Tm is the set of messages sent by Bm.
108 MULTI-AIm,n versus AIn Defn: Let Q be a protocol for MULTI-AIm,n using public random string R. Let T be transcript and (X i,k i,c i )i [m]~ξ. icost ξ (Q) = I(T m :K 1,C 1,...,K m,c m X 1,...,X m,r) where Tm is the set of messages sent by Bm. Thm (Direct Sum): If there exists a p-round, s-bit, ε-error protocol Q for MULTI-AIm,n then there exists a p-round, ε-error randomized protocol P for AIn where i. Alice sends at most ps bits ii. m icost B µ 0 (P) icost µ m 0 (Q)
109 Putting it all together...
110 Putting it all together... Thm: Any p-round, s-bit, 1/3-error protocol Q for MULTI- AIm,n requires ps=ω(min m,n).
111 Putting it all together... Thm: Any p-round, s-bit, 1/3-error protocol Q for MULTI- AIm,n requires ps=ω(min m,n). Proof: i. By direct sum theorem, there exists ε-error, p-pass protocol P for AIn such that: p s icost µ m(q) m icost B µ 0 0 (P) p s icost A µ 0 (P)
112 Putting it all together... Thm: Any p-round, s-bit, 1/3-error protocol Q for MULTI- AIm,n requires ps=ω(min m,n). Proof: i. By direct sum theorem, there exists ε-error, p-pass protocol P for AIn such that: p s icost µ m(q) m icost B µ 0 0 (P) p s icost A µ 0 (P) ii. By information complexity of AIn max(m icost B µ 0 (P), icost A µ 0 (P)) = Ω(min(m, n))
113 Summary Memory Checking: Sub-linear space recognition of various datastructure transcript languages is possible without annotation! Theory of Stream Computation: Forward + reverse pass can be much more useful than many forward passes! Further Work: Annotations, stream language recognition,... Thanks!
114
Proving Lower bounds using Information Theory
Proving Lower bounds using Information Theory Frédéric Magniez CNRS, Univ Paris Diderot Paris, July 2013 Data streams 2 Massive data sets - Examples: Network monitoring - Genome decoding Web databases
More informationJoshua Brody and Amit Chakrabarti
Lower Bounds for Gap-Hamming-Distance and Consequences for Data Stream Algorithms Joshua Brody and Amit Chakrabarti Dartmouth College 24th CCC, 2009, Paris Joshua Brody 1 Counting Distinct Elements in
More informationRobust Lower Bounds for Communication and Stream Computation
Robust Lower Bounds for Communication and Stream Computation! Amit Chakrabarti! Dartmouth College! Graham Cormode! AT&T Labs! Andrew McGregor! UC San Diego Communication Complexity Communication Complexity
More informationChecking and Spot-Checking the Correctness of Priority Queues
Checking and Spot-Checking the Correctness of Priority Queues Matthew Chu 1, Sampath Kannan 1, and Andrew McGregor 2 1 Dept. of Computer and Information Science, University of Pennsylvania {mdchu,kannan}@cis.upenn.edu
More informationSuperlinear Lower Bounds for Multipass Graph Processing
Krzysztof Onak Superlinear lower bounds for multipass graph processing p. 1/29 Superlinear Lower Bounds for Multipass Graph Processing Krzysztof Onak IBM T.J. Watson Research Center Joint work with Venkat
More informationHomomorphic Sketches Shrinking Big Data without Sacrificing Structure. Andrew McGregor University of Massachusetts
Homomorphic Sketches Shrinking Big Data without Sacrificing Structure Andrew McGregor University of Massachusetts 4Mv 2 2 32 3 2 3 2 3 4 M 5 3 5 = v 6 7 4 5 = 4Mv5 = 4Mv5 Sketches: Encode data as vector;
More informationOptimisation While Streaming
Optimisation While Streaming Amit Chakrabarti Dartmouth College Joint work with S. Kale, A. Wirth DIMACS Workshop on Big Data Through the Lens of Sublinear Algorithms, Aug 2015 Combinatorial Optimisation
More informationApproximation Algorithms for Clustering Uncertain Data
Approximation Algorithms for Clustering Uncertain Data Graham Cormode AT&T Labs - Research graham@research.att.com Andrew McGregor UCSD / MSR / UMass Amherst andrewm@ucsd.edu Introduction Many applications
More informationAnalyze the obvious algorithm, 5 points Here is the most obvious algorithm for this problem: (LastLargerElement[A[1..n]:
CSE 101 Homework 1 Background (Order and Recurrence Relations), correctness proofs, time analysis, and speeding up algorithms with restructuring, preprocessing and data structures. Due Thursday, April
More informationAnnotations For Sparse Data Streams
Annotations For Sparse Data Streams Justin Thaler, Simons Institute, UC Berkeley Joint Work with: Amit Chakrabarti, Dartmouth Graham Cormode, University of Warwick Navin Goyal, Microsoft Research India
More informationBinary Heaps in Dynamic Arrays
Yufei Tao ITEE University of Queensland We have already learned that the binary heap serves as an efficient implementation of a priority queue. Our previous discussion was based on pointers (for getting
More informationRank-Pairing Heaps. Bernard Haeupler Siddhartha Sen Robert E. Tarjan. SIAM JOURNAL ON COMPUTING Vol. 40, No. 6 (2011), pp.
Rank-Pairing Heaps Bernard Haeupler Siddhartha Sen Robert E. Tarjan Presentation by Alexander Pokluda Cheriton School of Computer Science, University of Waterloo, Canada SIAM JOURNAL ON COMPUTING Vol.
More informationCOMP Data Structures
COMP 2140 - Data Structures Shahin Kamali Topic 5 - Sorting University of Manitoba Based on notes by S. Durocher. COMP 2140 - Data Structures 1 / 55 Overview Review: Insertion Sort Merge Sort Quicksort
More informationCOMP Online Algorithms. Online Bin Packing. Shahin Kamali. Lecture 20 - Nov. 16th, 2017 University of Manitoba
COMP 7720 - Online Algorithms Online Bin Packing Shahin Kamali Lecture 20 - Nov. 16th, 2017 University of Manitoba COMP 7720 - Online Algorithms Online Bin Packing 1 / 24 Review & Plan COMP 7720 - Online
More informationSecure Message Transmission with Small Public Discussion. Juan Garay (AT&T Labs Research) Clint Givens (UCLA) Rafail Ostrovsky (UCLA)
Juan Garay (AT&T Labs Research) Clint Givens (UCLA) Rafail Ostrovsky (UCLA) SMT by Public Discussion (SMT-PD) [GO08] Sender S Receiver R message Problem: Transmit a message privately and reliably S and
More informationHashing Based Dictionaries in Different Memory Models. Zhewei Wei
Hashing Based Dictionaries in Different Memory Models Zhewei Wei Outline Introduction RAM model I/O model Cache-oblivious model Open questions Outline Introduction RAM model I/O model Cache-oblivious model
More informationCS369G: Algorithmic Techniques for Big Data Spring
CS369G: Algorithmic Techniques for Big Data Spring 2015-2016 Lecture 11: l 0 -Sampling and Introduction to Graph Streaming Prof. Moses Charikar Scribe: Austin Benson 1 Overview We present and analyze the
More informationRandomized Algorithms Part Four
Randomized Algorithms Part Four Announcements Problem Set Three due right now. Due Wednesday using a late day. Problem Set Four out, due next Monday, July 29. Play around with randomized algorithms! Approximate
More informationRandomized Algorithms Part Four
Randomized Algorithms Part Four Announcements Problem Set Three due right now. Due Wednesday using a late day. Problem Set Four out, due next Monday, July 29. Play around with randomized algorithms! Approximate
More informationMAXIMAL PLANAR SUBGRAPHS OF FIXED GIRTH IN RANDOM GRAPHS
MAXIMAL PLANAR SUBGRAPHS OF FIXED GIRTH IN RANDOM GRAPHS MANUEL FERNÁNDEZ, NICHOLAS SIEGER, AND MICHAEL TAIT Abstract. In 99, Bollobás and Frieze showed that the threshold for G n,p to contain a spanning
More information1 (15 points) LexicoSort
CS161 Homework 2 Due: 22 April 2016, 12 noon Submit on Gradescope Handed out: 15 April 2016 Instructions: Please answer the following questions to the best of your ability. If you are asked to show your
More informationOn the Cell Probe Complexity of Dynamic Membership or
On the Cell Probe Complexity of Dynamic Membership or Can We Batch Up Updates in External Memory? Ke Yi and Qin Zhang Hong Kong University of Science & Technology SODA 2010 Jan. 17, 2010 1-1 The power
More information6.856 Randomized Algorithms
6.856 Randomized Algorithms David Karger Handout #4, September 21, 2002 Homework 1 Solutions Problem 1 MR 1.8. (a) The min-cut algorithm given in class works because at each step it is very unlikely (probability
More informationOn communication complexity of classification
On communication complexity of classification Shay Moran (Princeton) Joint with Daniel Kane (UCSD), Roi Livni (TAU), and Amir Yehudayoff (Technion) Warmup (i): convex set disjointness Alice s input: n
More informationCSE 431/531: Algorithm Analysis and Design (Spring 2018) Greedy Algorithms. Lecturer: Shi Li
CSE 431/531: Algorithm Analysis and Design (Spring 2018) Greedy Algorithms Lecturer: Shi Li Department of Computer Science and Engineering University at Buffalo Main Goal of Algorithm Design Design fast
More informationSAMPLING AND THE MOMENT TECHNIQUE. By Sveta Oksen
SAMPLING AND THE MOMENT TECHNIQUE By Sveta Oksen Overview - Vertical decomposition - Construction - Running time analysis - The bounded moments theorem - General settings - The sampling model - The exponential
More informationCSE 431/531: Analysis of Algorithms. Greedy Algorithms. Lecturer: Shi Li. Department of Computer Science and Engineering University at Buffalo
CSE 431/531: Analysis of Algorithms Greedy Algorithms Lecturer: Shi Li Department of Computer Science and Engineering University at Buffalo Main Goal of Algorithm Design Design fast algorithms to solve
More informationCS154. Streaming Algorithms and Communication Complexity
CS154 Streaming Algorithms and Communication Complexity 1 Streaming Algorithms 2 Streaming Algorithms 01 42 3 L = {x x has more 1 s than 0 s} Initialize: C := 0 and B := 0 When the next symbol x is read,
More informationLecture Summary CSC 263H. August 5, 2016
Lecture Summary CSC 263H August 5, 2016 This document is a very brief overview of what we did in each lecture, it is by no means a replacement for attending lecture or doing the readings. 1. Week 1 2.
More informationMonotone Paths in Geometric Triangulations
Monotone Paths in Geometric Triangulations Adrian Dumitrescu Ritankar Mandal Csaba D. Tóth November 19, 2017 Abstract (I) We prove that the (maximum) number of monotone paths in a geometric triangulation
More informationLinear Programming in Small Dimensions
Linear Programming in Small Dimensions Lekcija 7 sergio.cabello@fmf.uni-lj.si FMF Univerza v Ljubljani Edited from slides by Antoine Vigneron Outline linear programming, motivation and definition one dimensional
More informationThe Streaming Complexity of Validating XML Documents
The Streaming Complexity of Validating XML Documents Christian Konrad christian.konrad@liafa.jussieu.fr and Frédéric Magniez frederic.magniez@liafa.jussieu.fr LIAFA University Paris Diderot - Paris 7 Paris
More informationApproximation Algorithms
Approximation Algorithms Given an NP-hard problem, what should be done? Theory says you're unlikely to find a poly-time algorithm. Must sacrifice one of three desired features. Solve problem to optimality.
More informationAlgorithms and Theory of Computation. Lecture 5: Minimum Spanning Tree
Algorithms and Theory of Computation Lecture 5: Minimum Spanning Tree Xiaohui Bei MAS 714 August 31, 2017 Nanyang Technological University MAS 714 August 31, 2017 1 / 30 Minimum Spanning Trees (MST) A
More informationRandomized algorithms have several advantages over deterministic ones. We discuss them here:
CS787: Advanced Algorithms Lecture 6: Randomized Algorithms In this lecture we introduce randomized algorithms. We will begin by motivating the use of randomized algorithms through a few examples. Then
More informationAlgorithms and Theory of Computation. Lecture 5: Minimum Spanning Tree
Algorithms and Theory of Computation Lecture 5: Minimum Spanning Tree Xiaohui Bei MAS 714 August 31, 2017 Nanyang Technological University MAS 714 August 31, 2017 1 / 30 Minimum Spanning Trees (MST) A
More informationimplementing the breadth-first search algorithm implementing the depth-first search algorithm
Graph Traversals 1 Graph Traversals representing graphs adjacency matrices and adjacency lists 2 Implementing the Breadth-First and Depth-First Search Algorithms implementing the breadth-first search algorithm
More informationRANGE-EFFICIENT COUNTING OF DISTINCT ELEMENTS IN A MASSIVE DATA STREAM
SIAM J. COMPUT. Vol. 37, No. 2, pp. 359 379 c 2007 Society for Industrial and Applied Mathematics RANGE-EFFICIENT COUNTING OF DISTINCT ELEMENTS IN A MASSIVE DATA STREAM A. PAVAN AND SRIKANTA TIRTHAPURA
More informationWhat is a minimal spanning tree (MST) and how to find one
What is a minimal spanning tree (MST) and how to find one A tree contains a root, the top node. Each node has: One parent Any number of children A spanning tree of a graph is a subgraph that contains all
More informationOnline Coloring Known Graphs
Online Coloring Known Graphs Magnús M. Halldórsson Science Institute University of Iceland IS-107 Reykjavik, Iceland mmh@hi.is, www.hi.is/ mmh. Submitted: September 13, 1999; Accepted: February 24, 2000.
More informationGroup Secret Key Generation Algorithms
Group Secret Key Generation Algorithms Chunxuan Ye and Alex Reznik InterDigital Communications Corporation King of Prussia, PA 9406 Email: {Chunxuan.Ye, Alex.Reznik}@interdigital.com arxiv:cs/07024v [cs.it]
More informationCSci 231 Final Review
CSci 231 Final Review Here is a list of topics for the final. Generally you are responsible for anything discussed in class (except topics that appear italicized), and anything appearing on the homeworks.
More informationPractice Midterm Exam Solutions
CSE 332: Data Abstractions Autumn 2015 Practice Midterm Exam Solutions Name: Sample Solutions ID #: 1234567 TA: The Best Section: A9 INSTRUCTIONS: You have 50 minutes to complete the exam. The exam is
More informationCS2223: Algorithms Sorting Algorithms, Heap Sort, Linear-time sort, Median and Order Statistics
CS2223: Algorithms Sorting Algorithms, Heap Sort, Linear-time sort, Median and Order Statistics 1 Sorting 1.1 Problem Statement You are given a sequence of n numbers < a 1, a 2,..., a n >. You need to
More informationAlgorithms Dr. Haim Levkowitz
91.503 Algorithms Dr. Haim Levkowitz Fall 2007 Lecture 4 Tuesday, 25 Sep 2007 Design Patterns for Optimization Problems Greedy Algorithms 1 Greedy Algorithms 2 What is Greedy Algorithm? Similar to dynamic
More informationSolution for Homework set 3
TTIC 300 and CMSC 37000 Algorithms Winter 07 Solution for Homework set 3 Question (0 points) We are given a directed graph G = (V, E), with two special vertices s and t, and non-negative integral capacities
More informationFaster and Dynamic Algorithms For Maximal End-Component Decomposition And Related Graph Problems In Probabilistic Verification
Faster and Dynamic Algorithms For Maximal End-Component Decomposition And Related Graph Problems In Probabilistic Verification Krishnendu Chatterjee Monika Henzinger Abstract We present faster and dynamic
More informationBetter Streaming Algorithms for the Maximum Coverage Problem
Noname manuscript No. (will be inserted by the editor) Better Streaming Algorithms for the Maximum Coverage Problem Andrew McGregor Hoa T. Vu Abstract We study the classic NP-Hard problem of finding the
More information11. APPROXIMATION ALGORITHMS
Coping with NP-completeness 11. APPROXIMATION ALGORITHMS load balancing center selection pricing method: weighted vertex cover LP rounding: weighted vertex cover generalized load balancing knapsack problem
More informationComputer Science 210 Data Structures Siena College Fall Topic Notes: Priority Queues and Heaps
Computer Science 0 Data Structures Siena College Fall 08 Topic Notes: Priority Queues and Heaps Heaps and Priority Queues From here, we will look at some ways that trees are used in other structures. First,
More informationby conservation of flow, hence the cancelation. Similarly, we have
Chapter 13: Network Flows and Applications Network: directed graph with source S and target T. Non-negative edge weights represent capacities. Assume no edges into S or out of T. (If necessary, we can
More informationBig-O-ology 1 CIS 675: Algorithms January 14, 2019
Big-O-ology 1 CIS 675: Algorithms January 14, 2019 1. The problem Consider a carpenter who is building you an addition to your house. You would not think much of this carpenter if she or he couldn t produce
More informationIntroduction to Randomized Algorithms
Introduction to Randomized Algorithms Gopinath Mishra Advanced Computing and Microelectronics Unit Indian Statistical Institute Kolkata 700108, India. Organization 1 Introduction 2 Some basic ideas from
More informationSecurity Models: Proofs, Protocols and Certification
Security Models: Proofs, Protocols and Certification Florent Autrau - Yassine Lakhnech - Jean-Louis Roch Master-2 Security, Cryptology and Coding of Information Systems ENSIMAG/Grenoble-INP UJF Grenoble
More informationInteger Algorithms and Data Structures
Integer Algorithms and Data Structures and why we should care about them Vladimír Čunát Department of Theoretical Computer Science and Mathematical Logic Doctoral Seminar 2010/11 Outline Introduction Motivation
More informationApproximation Algorithms for Wavelength Assignment
Approximation Algorithms for Wavelength Assignment Vijay Kumar Atri Rudra Abstract Winkler and Zhang introduced the FIBER MINIMIZATION problem in [3]. They showed that the problem is NP-complete but left
More informationDistributed Computing over Communication Networks: Leader Election
Distributed Computing over Communication Networks: Leader Election Motivation Reasons for electing a leader? Reasons for not electing a leader? Motivation Reasons for electing a leader? Once elected, coordination
More informationCSE 417 Network Flows (pt 4) Min Cost Flows
CSE 417 Network Flows (pt 4) Min Cost Flows Reminders > HW6 is due Monday Review of last three lectures > Defined the maximum flow problem find the feasible flow of maximum value flow is feasible if it
More informationFeature Selection for Image Retrieval and Object Recognition
Feature Selection for Image Retrieval and Object Recognition Nuno Vasconcelos et al. Statistical Visual Computing Lab ECE, UCSD Presented by Dashan Gao Scalable Discriminant Feature Selection for Image
More informationWe show that the composite function h, h(x) = g(f(x)) is a reduction h: A m C.
219 Lemma J For all languages A, B, C the following hold i. A m A, (reflexive) ii. if A m B and B m C, then A m C, (transitive) iii. if A m B and B is Turing-recognizable, then so is A, and iv. if A m
More informationarxiv: v2 [cs.ds] 2 May 2016
Towards Tight Bounds for the Streaming Set Cover Problem Sariel Har-Peled Piotr Indyk Sepideh Mahabadi Ali Vakilian arxiv:1509.00118v2 [cs.ds] 2 May 2016 Abstract We consider the classic Set Cover problem
More informationShannon capacity and related problems in Information Theory and Ramsey Theory
Shannon capacity and related problems in Information Theory and Ramsey Theory Eyal Lubetzky Based on Joint work with Noga Alon and Uri Stav May 2007 1 Outline of talk Shannon Capacity of of a graph: graph:
More informationCSE 3101: Introduction to the Design and Analysis of Algorithms. Office hours: Wed 4-6 pm (CSEB 3043), or by appointment.
CSE 3101: Introduction to the Design and Analysis of Algorithms Instructor: Suprakash Datta (datta[at]cse.yorku.ca) ext 77875 Lectures: Tues, BC 215, 7 10 PM Office hours: Wed 4-6 pm (CSEB 3043), or by
More informationIntroduction to Graph Theory
Introduction to Graph Theory Tandy Warnow January 20, 2017 Graphs Tandy Warnow Graphs A graph G = (V, E) is an object that contains a vertex set V and an edge set E. We also write V (G) to denote the vertex
More information10. EXTENDING TRACTABILITY
0. EXTENDING TRACTABILITY finding small vertex covers solving NP-hard problems on trees circular arc coverings vertex cover in bipartite graphs Lecture slides by Kevin Wayne Copyright 005 Pearson-Addison
More informationPrivacy and Communication Complexity
Privacy and Communication Complexity The Hardness of Being Private [ACC + 12] Lila (CSC 2429 lecture 10) 0 / 16 Communication complexity The model Matrix M f has entries M f [x, y] = f (x, y). A submatrix
More informationAlgorithm Theory, Winter Term 2015/16 Problem Set 5 - Sample Solution
Albert-Ludwigs-Universität, Inst. für Informatik Prof. Dr. Fabian Kuhn M. Ahmadi, O. Saukh, A. R. Molla November, 20 Algorithm Theory, Winter Term 20/6 Problem Set - Sample Solution Exercise : Amortized
More information1 Probability Review. CS 124 Section #8 Hashing, Skip Lists 3/20/17. Expectation (weighted average): the expectation of a random quantity X is:
CS 124 Section #8 Hashing, Skip Lists 3/20/17 1 Probability Review Expectation (weighted average): the expectation of a random quantity X is: x= x P (X = x) For each value x that X can take on, we look
More informationOptimal Parallel Randomized Renaming
Optimal Parallel Randomized Renaming Martin Farach S. Muthukrishnan September 11, 1995 Abstract We consider the Renaming Problem, a basic processing step in string algorithms, for which we give a simultaneously
More informationCSE 332 Winter 2015: Midterm Exam (closed book, closed notes, no calculators)
_ UWNetID: Lecture Section: A CSE 332 Winter 2015: Midterm Exam (closed book, closed notes, no calculators) Instructions: Read the directions for each question carefully before answering. We will give
More information/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Sorting lower bound and Linear-time sorting Date: 9/19/17
601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Sorting lower bound and Linear-time sorting Date: 9/19/17 5.1 Introduction You should all know a few ways of sorting in O(n log n)
More informationHow many leaves on the decision tree? There are n! leaves, because every permutation appears at least once.
Chapter 8. Sorting in Linear Time Types of Sort Algorithms The only operation that may be used to gain order information about a sequence is comparison of pairs of elements. Quick Sort -- comparison-based
More informationTest 1 Review Questions with Solutions
CS3510 Design & Analysis of Algorithms Section A Test 1 Review Questions with Solutions Instructor: Richard Peng Test 1 in class, Wednesday, Sep 13, 2017 Main Topics Asymptotic complexity: O, Ω, and Θ.
More informationMinimum-Cost Flow Network
Minimum-Cost Flow Network Smoothed flow network: G = (V,E) balance values: b : V Z costs: c : E R capacities: u : E N 2 1/2 3/1-1 1/3 3/2 3/1 1 3/1 1/2-2 cost/capacity 2/ 17 Smoothed 2 1 1/2 3/1 1 1 11/3
More informationCSE 373: Data Structures and Algorithms
CSE 373: Data Structures and Algorithms Lecture 6: Finishing Amortized Analysis; Dictionaries ADT; Introduction to Hash Tables Instructor: Lilian de Greef Quarter: Summer 2017 Today: Finish up Amortized
More informationToday s Outline. CSE 326: Data Structures Asymptotic Analysis. Analyzing Algorithms. Analyzing Algorithms: Why Bother? Hannah Takes a Break
Today s Outline CSE 326: Data Structures How s the project going? Finish up stacks, queues, lists, and bears, oh my! Math review and runtime analysis Pretty pictures Asymptotic analysis Hannah Tang and
More informationMCS-375: Algorithms: Analysis and Design Handout #G2 San Skulrattanakulchai Gustavus Adolphus College Oct 21, Huffman Codes
MCS-375: Algorithms: Analysis and Design Handout #G2 San Skulrattanakulchai Gustavus Adolphus College Oct 21, 2016 Huffman Codes CLRS: Ch 16.3 Ziv-Lempel is the most popular compression algorithm today.
More informationCPSC 311 Lecture Notes. Sorting and Order Statistics (Chapters 6-9)
CPSC 311 Lecture Notes Sorting and Order Statistics (Chapters 6-9) Acknowledgement: These notes are compiled by Nancy Amato at Texas A&M University. Parts of these course notes are based on notes from
More informationData Structures and Algorithms Key to Homework 1
Data Structures and Algorithms Key to Homework 1 January 31, 2005 15 Define an ADT for a set of integers (remember that a set may not contain duplicates) Your ADT should consist of the functions that can
More informationAlgorithms (III) Yu Yu. Shanghai Jiaotong University
Algorithms (III) Yu Yu Shanghai Jiaotong University Review of the Previous Lecture Factoring: Given a number N, express it as a product of its prime factors. Many security protocols are based on the assumed
More informationEfficiently decodable insertion/deletion codes for high-noise and high-rate regimes
Efficiently decodable insertion/deletion codes for high-noise and high-rate regimes Venkatesan Guruswami Carnegie Mellon University Pittsburgh, PA 53 Email: guruswami@cmu.edu Ray Li Carnegie Mellon University
More informationString quicksort solves this problem by processing the obtained information immediately after each symbol comparison.
Lcp-Comparisons General (non-string) comparison-based sorting algorithms are not optimal for sorting strings because of an imbalance between effort and result in a string comparison: it can take a lot
More informationAlgorithms (III) Yijia Chen Shanghai Jiaotong University
Algorithms (III) Yijia Chen Shanghai Jiaotong University Review of the Previous Lecture Factoring: Given a number N, express it as a product of its prime factors. Many security protocols are based on the
More information3 No-Wait Job Shops with Variable Processing Times
3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select
More informationTracking Frequent Items Dynamically: What s Hot and What s Not To appear in PODS 2003
Tracking Frequent Items Dynamically: What s Hot and What s Not To appear in PODS 2003 Graham Cormode graham@dimacs.rutgers.edu dimacs.rutgers.edu/~graham S. Muthukrishnan muthu@cs.rutgers.edu Everyday
More informationMulti-Objective Combinatorial Optimization: The Traveling Salesman Problem and Variants
Multi-Objective Combinatorial Optimization: The Traveling Salesman Problem and Variants C. Glaßer 1 C. Reitwießner 1 H. Schmitz 2 M. Witek 1 1 University of Würzburg, Germany 2 Trier University of Applied
More informationSEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION
CHAPTER 5 SEQUENCES, MATHEMATICAL INDUCTION, AND RECURSION Copyright Cengage Learning. All rights reserved. SECTION 5.5 Application: Correctness of Algorithms Copyright Cengage Learning. All rights reserved.
More informationCOMP3121/3821/9101/ s1 Assignment 1
Sample solutions to assignment 1 1. (a) Describe an O(n log n) algorithm (in the sense of the worst case performance) that, given an array S of n integers and another integer x, determines whether or not
More informationCHENNAI MATHEMATICAL INSTITUTE M.Sc. / Ph.D. Programme in Computer Science
CHENNAI MATHEMATICAL INSTITUTE M.Sc. / Ph.D. Programme in Computer Science Entrance Examination, 5 May 23 This question paper has 4 printed sides. Part A has questions of 3 marks each. Part B has 7 questions
More informationDynamic Indexability and Lower Bounds for Dynamic One-Dimensional Range Query Indexes
Dynamic Indexability and Lower Bounds for Dynamic One-Dimensional Range Query Indexes Ke Yi HKUST 1-1 First Annual SIGMOD Programming Contest (to be held at SIGMOD 2009) Student teams from degree granting
More informationMinimum-Spanning-Tree problem. Minimum Spanning Trees (Forests) Minimum-Spanning-Tree problem
Minimum Spanning Trees (Forests) Given an undirected graph G=(V,E) with each edge e having a weight w(e) : Find a subgraph T of G of minimum total weight s.t. every pair of vertices connected in G are
More informationarxiv: v1 [cs.ds] 1 May 2015
Strictly Implicit Priority Queues: On the Number of Moves and Worst-Case Time Gerth Stølting Brodal, Jesper Sindahl Nielsen, and Jakob Truelsen arxiv:1505.00147v1 [cs.ds] 1 May 2015 MADALGO, Department
More information/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18
601.433/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Approximation algorithms Date: 11/27/18 22.1 Introduction We spent the last two lectures proving that for certain problems, we can
More informationCHAPTER 8. Copyright Cengage Learning. All rights reserved.
CHAPTER 8 RELATIONS Copyright Cengage Learning. All rights reserved. SECTION 8.3 Equivalence Relations Copyright Cengage Learning. All rights reserved. The Relation Induced by a Partition 3 The Relation
More informationLecture 7: Primitive Recursion is Turing Computable. Michael Beeson
Lecture 7: Primitive Recursion is Turing Computable Michael Beeson Closure under composition Let f and g be Turing computable. Let h(x) = f(g(x)). Then h is Turing computable. Similarly if h(x) = f(g 1
More informationSketching Probabilistic Data Streams
Sketching Probabilistic Data Streams Graham Cormode AT&T Labs - Research graham@research.att.com Minos Garofalakis Yahoo! Research minos@acm.org Challenge of Uncertain Data Many applications generate data
More information8.1. Optimal Binary Search Trees:
DATA STRUCTERS WITH C 10CS35 UNIT 8 : EFFICIENT BINARY SEARCH TREES 8.1. Optimal Binary Search Trees: An optimal binary search tree is a binary search tree for which the nodes are arranged on levels such
More informationCS473-Algorithms I. Lecture 10. Dynamic Programming. Cevdet Aykanat - Bilkent University Computer Engineering Department
CS473-Algorithms I Lecture 1 Dynamic Programming 1 Introduction An algorithm design paradigm like divide-and-conquer Programming : A tabular method (not writing computer code) Divide-and-Conquer (DAC):
More informationCSE 421 Greedy: Huffman Codes
CSE 421 Greedy: Huffman Codes Yin Tat Lee 1 Compression Example 100k file, 6 letter alphabet: File Size: ASCII, 8 bits/char: 800kbits 2 3 > 6; 3 bits/char: 300kbits a 45% b 13% c 12% d 16% e 9% f 5% Why?
More information(67686) Mathematical Foundations of AI July 30, Lecture 11
(67686) Mathematical Foundations of AI July 30, 2008 Lecturer: Ariel D. Procaccia Lecture 11 Scribe: Michael Zuckerman and Na ama Zohary 1 Cooperative Games N = {1,...,n} is the set of players (agents).
More information