Algorithms for Big Data (IX) Chihao Zhang Shanghai Jiao Tong - - PowerPoint PPT Presentation

algorithms for big data ix
SMART_READER_LITE
LIVE PREVIEW

Algorithms for Big Data (IX) Chihao Zhang Shanghai Jiao Tong - - PowerPoint PPT Presentation

Algorithms for Big Data (IX) Chihao Zhang Shanghai Jiao Tong University Nov. 15, 2019 Algorithms for Big Data (IX) 1/15 , the complexity is measured by bits communicated between them. We focus on the special one-way communication model.


slide-1
SLIDE 1

Algorithms for Big Data (IX)

Chihao Zhang

Shanghai Jiao Tong University

  • Nov. 15, 2019

Algorithms for Big Data (IX) 1/15

slide-2
SLIDE 2

Review

Last week, we saw the communication model. In this model, Alice and Bob collaborate to compute some function . Alice has and Bob , the complexity is measured by bits communicated between them. We focus on the special one-way communication model.

Algorithms for Big Data (IX) 2/15

slide-3
SLIDE 3

Review

Last week, we saw the communication model. In this model, Alice and Bob collaborate to compute some function . Alice has and Bob , the complexity is measured by bits communicated between them. We focus on the special one-way communication model.

Algorithms for Big Data (IX) 2/15

slide-4
SLIDE 4

Review

Last week, we saw the communication model. In this model, Alice and Bob collaborate to compute some function f(x, y). Alice has and Bob , the complexity is measured by bits communicated between them. We focus on the special one-way communication model.

Algorithms for Big Data (IX) 2/15

slide-5
SLIDE 5

Review

Last week, we saw the communication model. In this model, Alice and Bob collaborate to compute some function f(x, y). Alice has x and Bob y, the complexity is measured by bits communicated between them. We focus on the special one-way communication model.

Algorithms for Big Data (IX) 2/15

slide-6
SLIDE 6

Review

Last week, we saw the communication model. In this model, Alice and Bob collaborate to compute some function f(x, y). Alice has x and Bob y, the complexity is measured by bits communicated between them. We focus on the special one-way communication model.

Algorithms for Big Data (IX) 2/15

slide-7
SLIDE 7

Randomness

We allow randomness in our communication protocol. In this course, we consider protocols using public coins. In this model, we assume there exits some random source in the environment so that both Alice and Bob can see it. Our lower bound applies to protocols using public coins, and hence also applies to ones using private coins.

Algorithms for Big Data (IX) 3/15

slide-8
SLIDE 8

Randomness

We allow randomness in our communication protocol. In this course, we consider protocols using public coins. In this model, we assume there exits some random source in the environment so that both Alice and Bob can see it. Our lower bound applies to protocols using public coins, and hence also applies to ones using private coins.

Algorithms for Big Data (IX) 3/15

slide-9
SLIDE 9

Randomness

We allow randomness in our communication protocol. In this course, we consider protocols using public coins. In this model, we assume there exits some random source in the environment so that both Alice and Bob can see it. Our lower bound applies to protocols using public coins, and hence also applies to ones using private coins.

Algorithms for Big Data (IX) 3/15

slide-10
SLIDE 10

Randomness

We allow randomness in our communication protocol. In this course, we consider protocols using public coins. In this model, we assume there exits some random source in the environment so that both Alice and Bob can see it. Our lower bound applies to protocols using public coins, and hence also applies to ones using private coins.

Algorithms for Big Data (IX) 3/15

slide-11
SLIDE 11

Randomness

We allow randomness in our communication protocol. In this course, we consider protocols using public coins. In this model, we assume there exits some random source in the environment so that both Alice and Bob can see it. Our lower bound applies to protocols using public coins, and hence also applies to ones using private coins.

Algorithms for Big Data (IX) 3/15

slide-12
SLIDE 12

Problems

For x , sometimes we view it as the indicator vector of some subset of , . EQ x y 1 x y We showed by a counting argument that any deterministic protocol to compute EQ requires at needs bits of one-way communication. There exits a random protocol using log bits of communication. DISJ x y 1 . We showed that any randomized protocol requires log bits of communication.

Algorithms for Big Data (IX) 4/15

slide-13
SLIDE 13

Problems

For x ∈ {0, 1}n, sometimes we view it as the indicator vector of some subset of [n], S(x) = {i ∈ [n] : xi = 1}. EQ x y 1 x y We showed by a counting argument that any deterministic protocol to compute EQ requires at needs bits of one-way communication. There exits a random protocol using log bits of communication. DISJ x y 1 . We showed that any randomized protocol requires log bits of communication.

Algorithms for Big Data (IX) 4/15

slide-14
SLIDE 14

Problems

For x ∈ {0, 1}n, sometimes we view it as the indicator vector of some subset of [n], S(x) = {i ∈ [n] : xi = 1}. EQ(x, y) ≜ 1[x = y] We showed by a counting argument that any deterministic protocol to compute EQ requires at needs bits of one-way communication. There exits a random protocol using log bits of communication. DISJ x y 1 . We showed that any randomized protocol requires log bits of communication.

Algorithms for Big Data (IX) 4/15

slide-15
SLIDE 15

Problems

For x ∈ {0, 1}n, sometimes we view it as the indicator vector of some subset of [n], S(x) = {i ∈ [n] : xi = 1}. EQ(x, y) ≜ 1[x = y] ▶ We showed by a counting argument that any deterministic protocol to compute EQ requires at needs n bits of one-way communication. There exits a random protocol using log bits of communication. DISJ x y 1 . We showed that any randomized protocol requires log bits of communication.

Algorithms for Big Data (IX) 4/15

slide-16
SLIDE 16

Problems

For x ∈ {0, 1}n, sometimes we view it as the indicator vector of some subset of [n], S(x) = {i ∈ [n] : xi = 1}. EQ(x, y) ≜ 1[x = y] ▶ We showed by a counting argument that any deterministic protocol to compute EQ requires at needs n bits of one-way communication. ▶ There exits a random protocol using O(log n) bits of communication. DISJ x y 1 . We showed that any randomized protocol requires log bits of communication.

Algorithms for Big Data (IX) 4/15

slide-17
SLIDE 17

Problems

For x ∈ {0, 1}n, sometimes we view it as the indicator vector of some subset of [n], S(x) = {i ∈ [n] : xi = 1}. EQ(x, y) ≜ 1[x = y] ▶ We showed by a counting argument that any deterministic protocol to compute EQ requires at needs n bits of one-way communication. ▶ There exits a random protocol using O(log n) bits of communication. DISJ(x, y) ≜ 1[S(x) ∩ S(y) = ∅]. We showed that any randomized protocol requires log bits of communication.

Algorithms for Big Data (IX) 4/15

slide-18
SLIDE 18

Problems

For x ∈ {0, 1}n, sometimes we view it as the indicator vector of some subset of [n], S(x) = {i ∈ [n] : xi = 1}. EQ(x, y) ≜ 1[x = y] ▶ We showed by a counting argument that any deterministic protocol to compute EQ requires at needs n bits of one-way communication. ▶ There exits a random protocol using O(log n) bits of communication. DISJ(x, y) ≜ 1[S(x) ∩ S(y) = ∅]. ▶ We showed that any randomized protocol requires Ω(log n) bits of communication.

Algorithms for Big Data (IX) 4/15

slide-19
SLIDE 19

Yao’s Lemma

The main tool to prove lower bounds for randomized protocol is Yao’s lemma.

Lemma

If there exists some distribution

  • ver

such that any deterministic

  • ne-way communication protocol

with Pr is wrong on costs at least bits, then any randomized one-way protocol with error at most

  • n any

input also costs at least bits one-way communication. We remark that “costs at least bits” of a randomized protocol applies to the worst input with worst random bits.

Algorithms for Big Data (IX) 5/15

slide-20
SLIDE 20

Yao’s Lemma

The main tool to prove lower bounds for randomized protocol is Yao’s lemma.

Lemma

If there exists some distribution D over {0, 1}a × {0, 1}b such that any deterministic

  • ne-way communication protocol P with

Pr(x,y)∼D [P is wrong on (x, y)] ≤ ε costs at least k bits, then any randomized one-way protocol with error at most ε on any input also costs at least k bits one-way communication. We remark that “costs at least bits” of a randomized protocol applies to the worst input with worst random bits.

Algorithms for Big Data (IX) 5/15

slide-21
SLIDE 21

Yao’s Lemma

The main tool to prove lower bounds for randomized protocol is Yao’s lemma.

Lemma

If there exists some distribution D over {0, 1}a × {0, 1}b such that any deterministic

  • ne-way communication protocol P with

Pr(x,y)∼D [P is wrong on (x, y)] ≤ ε costs at least k bits, then any randomized one-way protocol with error at most ε on any input also costs at least k bits one-way communication. We remark that “costs at least k bits” of a randomized protocol applies to the worst input with worst random bits.

Algorithms for Big Data (IX) 5/15

slide-22
SLIDE 22

Proof of Yao’s Lemma

Let be a randomized protocol costs less than bits in the worst case. We can first toss all coins and then run the protocol based on the results. Therefore, we can view as a distribution over deterministic protocols . By the definition of the costs of a random protocol, each costs less than bits. Thus, by the assumption, there exists a distribution such that Pr is wrong on This is sufgicient to imply that for some , Pr is wrong on We remark that the converse of Yao’s lemma is also correct.

Algorithms for Big Data (IX) 6/15

slide-23
SLIDE 23

Proof of Yao’s Lemma

Let Q be a randomized protocol costs less than k bits in the worst case. We can first toss all coins and then run the protocol based on the results. Therefore, we can view as a distribution over deterministic protocols . By the definition of the costs of a random protocol, each costs less than bits. Thus, by the assumption, there exists a distribution such that Pr is wrong on This is sufgicient to imply that for some , Pr is wrong on We remark that the converse of Yao’s lemma is also correct.

Algorithms for Big Data (IX) 6/15

slide-24
SLIDE 24

Proof of Yao’s Lemma

Let Q be a randomized protocol costs less than k bits in the worst case. We can first toss all coins and then run the protocol based on the results. Therefore, we can view Q as a distribution over t deterministic protocols P1, . . . , Pt. By the definition of the costs of a random protocol, each costs less than bits. Thus, by the assumption, there exists a distribution such that Pr is wrong on This is sufgicient to imply that for some , Pr is wrong on We remark that the converse of Yao’s lemma is also correct.

Algorithms for Big Data (IX) 6/15

slide-25
SLIDE 25

Proof of Yao’s Lemma

Let Q be a randomized protocol costs less than k bits in the worst case. We can first toss all coins and then run the protocol based on the results. Therefore, we can view Q as a distribution over t deterministic protocols P1, . . . , Pt. By the definition of the costs of a random protocol, each Pi costs less than k bits. Thus, by the assumption, there exists a distribution such that Pr is wrong on This is sufgicient to imply that for some , Pr is wrong on We remark that the converse of Yao’s lemma is also correct.

Algorithms for Big Data (IX) 6/15

slide-26
SLIDE 26

Proof of Yao’s Lemma

Let Q be a randomized protocol costs less than k bits in the worst case. We can first toss all coins and then run the protocol based on the results. Therefore, we can view Q as a distribution over t deterministic protocols P1, . . . , Pt. By the definition of the costs of a random protocol, each Pi costs less than k bits. Thus, by the assumption, there exists a distribution D such that ∀i ∈ [t], Pr(x,y)∼D [Pi is wrong on (x, y)] > ε. This is sufgicient to imply that for some , Pr is wrong on We remark that the converse of Yao’s lemma is also correct.

Algorithms for Big Data (IX) 6/15

slide-27
SLIDE 27

Proof of Yao’s Lemma

Let Q be a randomized protocol costs less than k bits in the worst case. We can first toss all coins and then run the protocol based on the results. Therefore, we can view Q as a distribution over t deterministic protocols P1, . . . , Pt. By the definition of the costs of a random protocol, each Pi costs less than k bits. Thus, by the assumption, there exists a distribution D such that ∀i ∈ [t], Pr(x,y)∼D [Pi is wrong on (x, y)] > ε. This is sufgicient to imply that for some (x, y), Pr [Q is wrong on(x, y)] > ε. We remark that the converse of Yao’s lemma is also correct.

Algorithms for Big Data (IX) 6/15

slide-28
SLIDE 28

Proof of Yao’s Lemma

Let Q be a randomized protocol costs less than k bits in the worst case. We can first toss all coins and then run the protocol based on the results. Therefore, we can view Q as a distribution over t deterministic protocols P1, . . . , Pt. By the definition of the costs of a random protocol, each Pi costs less than k bits. Thus, by the assumption, there exists a distribution D such that ∀i ∈ [t], Pr(x,y)∼D [Pi is wrong on (x, y)] > ε. This is sufgicient to imply that for some (x, y), Pr [Q is wrong on(x, y)] > ε. We remark that the converse of Yao’s lemma is also correct.

Algorithms for Big Data (IX) 6/15

slide-29
SLIDE 29

Reduction

We prove lower bounds for streaming problem from communication complexity via reductions. The argument looks like: suppose we have an efgicient streaming algorithm for problem , then we can design an efgicient protocol to solve communication problem . For example, we can View the input x (and y) as a stream of elements in (and ). Alice solves the streaming problem on and send the snapshot of the current memory to Bob. Bob continues to solve the streaming problem on . We successfully prove a lower bound for computing using above strategy, via the complexity of DISJ.

Algorithms for Big Data (IX) 7/15

slide-30
SLIDE 30

Reduction

We prove lower bounds for streaming problem from communication complexity via reductions. The argument looks like: suppose we have an efgicient streaming algorithm for problem , then we can design an efgicient protocol to solve communication problem . For example, we can View the input x (and y) as a stream of elements in (and ). Alice solves the streaming problem on and send the snapshot of the current memory to Bob. Bob continues to solve the streaming problem on . We successfully prove a lower bound for computing using above strategy, via the complexity of DISJ.

Algorithms for Big Data (IX) 7/15

slide-31
SLIDE 31

Reduction

We prove lower bounds for streaming problem from communication complexity via reductions. The argument looks like: suppose we have an efgicient streaming algorithm for problem A, then we can design an efgicient protocol to solve communication problem B. For example, we can View the input x (and y) as a stream of elements in (and ). Alice solves the streaming problem on and send the snapshot of the current memory to Bob. Bob continues to solve the streaming problem on . We successfully prove a lower bound for computing using above strategy, via the complexity of DISJ.

Algorithms for Big Data (IX) 7/15

slide-32
SLIDE 32

Reduction

We prove lower bounds for streaming problem from communication complexity via reductions. The argument looks like: suppose we have an efgicient streaming algorithm for problem A, then we can design an efgicient protocol to solve communication problem B. For example, we can ▶ View the input x (and y) as a stream of elements in S(x) (and S(y)). ▶ Alice solves the streaming problem on S(x) and send the snapshot of the current memory to Bob. ▶ Bob continues to solve the streaming problem on S(x) ⊕ S(y). We successfully prove a lower bound for computing using above strategy, via the complexity of DISJ.

Algorithms for Big Data (IX) 7/15

slide-33
SLIDE 33

Reduction

We prove lower bounds for streaming problem from communication complexity via reductions. The argument looks like: suppose we have an efgicient streaming algorithm for problem A, then we can design an efgicient protocol to solve communication problem B. For example, we can ▶ View the input x (and y) as a stream of elements in S(x) (and S(y)). ▶ Alice solves the streaming problem on S(x) and send the snapshot of the current memory to Bob. ▶ Bob continues to solve the streaming problem on S(x) ⊕ S(y). We successfully prove a lower bound for computing F∞ using above strategy, via the complexity of DISJ.

Algorithms for Big Data (IX) 7/15

slide-34
SLIDE 34

Lower Bounds for st-connectivity

We are given a graph where . Determine whether and are connected. We now prove that and deterministic algorithm requires bits of communication. Given an instance

  • f DISJ, Alice forms her edge stream

and Bob forms his edge stream . Alice first sends and to Bob. If these two bits already determines DISJ , then

  • utput so.

Otherwise DISJ x y ifg and are not connected.

Algorithms for Big Data (IX) 8/15

slide-35
SLIDE 35

Lower Bounds for st-connectivity

We are given a graph G = (V, E) where V = {v1, . . . , vn}. Determine whether and are connected. We now prove that and deterministic algorithm requires bits of communication. Given an instance

  • f DISJ, Alice forms her edge stream

and Bob forms his edge stream . Alice first sends and to Bob. If these two bits already determines DISJ , then

  • utput so.

Otherwise DISJ x y ifg and are not connected.

Algorithms for Big Data (IX) 8/15

slide-36
SLIDE 36

Lower Bounds for st-connectivity

We are given a graph G = (V, E) where V = {v1, . . . , vn}. Determine whether s = v1 and t = v2 are connected. We now prove that and deterministic algorithm requires bits of communication. Given an instance

  • f DISJ, Alice forms her edge stream

and Bob forms his edge stream . Alice first sends and to Bob. If these two bits already determines DISJ , then

  • utput so.

Otherwise DISJ x y ifg and are not connected.

Algorithms for Big Data (IX) 8/15

slide-37
SLIDE 37

Lower Bounds for st-connectivity

We are given a graph G = (V, E) where V = {v1, . . . , vn}. Determine whether s = v1 and t = v2 are connected. We now prove that and deterministic algorithm requires Ω(n) bits of communication. Given an instance

  • f DISJ, Alice forms her edge stream

and Bob forms his edge stream . Alice first sends and to Bob. If these two bits already determines DISJ , then

  • utput so.

Otherwise DISJ x y ifg and are not connected.

Algorithms for Big Data (IX) 8/15

slide-38
SLIDE 38

Lower Bounds for st-connectivity

We are given a graph G = (V, E) where V = {v1, . . . , vn}. Determine whether s = v1 and t = v2 are connected. We now prove that and deterministic algorithm requires Ω(n) bits of communication. Given an instance (x, y) of DISJ, Alice forms her edge stream {{s, vi} : xi = 1 ∧ i > 2} and Bob forms his edge stream {{t, vj} : yj = 1 ∧ j > 2}. Alice first sends and to Bob. If these two bits already determines DISJ , then

  • utput so.

Otherwise DISJ x y ifg and are not connected.

Algorithms for Big Data (IX) 8/15

slide-39
SLIDE 39

Lower Bounds for st-connectivity

We are given a graph G = (V, E) where V = {v1, . . . , vn}. Determine whether s = v1 and t = v2 are connected. We now prove that and deterministic algorithm requires Ω(n) bits of communication. Given an instance (x, y) of DISJ, Alice forms her edge stream {{s, vi} : xi = 1 ∧ i > 2} and Bob forms his edge stream {{t, vj} : yj = 1 ∧ j > 2}. Alice first sends x1 and x2 to Bob. If these two bits already determines DISJ(x, y), then

  • utput so.

Otherwise DISJ x y ifg and are not connected.

Algorithms for Big Data (IX) 8/15

slide-40
SLIDE 40

Lower Bounds for st-connectivity

We are given a graph G = (V, E) where V = {v1, . . . , vn}. Determine whether s = v1 and t = v2 are connected. We now prove that and deterministic algorithm requires Ω(n) bits of communication. Given an instance (x, y) of DISJ, Alice forms her edge stream {{s, vi} : xi = 1 ∧ i > 2} and Bob forms his edge stream {{t, vj} : yj = 1 ∧ j > 2}. Alice first sends x1 and x2 to Bob. If these two bits already determines DISJ(x, y), then

  • utput so.

Otherwise DISJ(x, y) = 1 ifg s and t are not connected.

Algorithms for Big Data (IX) 8/15

slide-41
SLIDE 41

Lower Bounds for F0

Recall that in BJKST algorithm, we can estimate within using log bits

  • f memory.

We now show that the dependency of , , is tight. We will show in class that when , the protocol to approximate within requires at least bits. Can we prove this using the strategy we demonstrated in the previous example via a reduction from DISJ?

Algorithms for Big Data (IX) 9/15

slide-42
SLIDE 42

Lower Bounds for F0

Recall that in BJKST algorithm, we can estimate F0 within (1 ± ε) using O( 1

ε2 log n) bits

  • f memory.

We now show that the dependency of , , is tight. We will show in class that when , the protocol to approximate within requires at least bits. Can we prove this using the strategy we demonstrated in the previous example via a reduction from DISJ?

Algorithms for Big Data (IX) 9/15

slide-43
SLIDE 43

Lower Bounds for F0

Recall that in BJKST algorithm, we can estimate F0 within (1 ± ε) using O( 1

ε2 log n) bits

  • f memory.

We now show that the dependency of ε, 1

ε2 , is tight.

We will show in class that when , the protocol to approximate within requires at least bits. Can we prove this using the strategy we demonstrated in the previous example via a reduction from DISJ?

Algorithms for Big Data (IX) 9/15

slide-44
SLIDE 44

Lower Bounds for F0

Recall that in BJKST algorithm, we can estimate F0 within (1 ± ε) using O( 1

ε2 log n) bits

  • f memory.

We now show that the dependency of ε, 1

ε2 , is tight.

We will show in class that when ε =

1 √n, the protocol to approximate F0 within (1 ± ε)

requires at least Ω(n) bits. Can we prove this using the strategy we demonstrated in the previous example via a reduction from DISJ?

Algorithms for Big Data (IX) 9/15

slide-45
SLIDE 45

Lower Bounds for F0

Recall that in BJKST algorithm, we can estimate F0 within (1 ± ε) using O( 1

ε2 log n) bits

  • f memory.

We now show that the dependency of ε, 1

ε2 , is tight.

We will show in class that when ε =

1 √n, the protocol to approximate F0 within (1 ± ε)

requires at least Ω(n) bits. Can we prove this using the strategy we demonstrated in the previous example via a reduction from DISJ?

Algorithms for Big Data (IX) 9/15

slide-46
SLIDE 46

We shall reduce from the problem of computing the Hamming distance between two strings. Alice and Bob want to compute x y , which is exactly x y y x . Since

  • f

x y is x y , we have x y y y x y This implies that x y x y . A multiplicative error of to provides at most additive error of x y . We only need to prove that additive error of x y is hard.

Algorithms for Big Data (IX) 10/15

slide-47
SLIDE 47

We shall reduce from the problem of computing the Hamming distance between two strings. Alice and Bob want to compute dH(x, y), which is exactly |S(x) \ S(y)| + |S(y) \ S(x)|. Since

  • f

x y is x y , we have x y y y x y This implies that x y x y . A multiplicative error of to provides at most additive error of x y . We only need to prove that additive error of x y is hard.

Algorithms for Big Data (IX) 10/15

slide-48
SLIDE 48

We shall reduce from the problem of computing the Hamming distance between two strings. Alice and Bob want to compute dH(x, y), which is exactly |S(x) \ S(y)| + |S(y) \ S(x)|. Since F0 of S(x) ⊕ S(y) is |S(x) ∪ S(y)|, we have |S(x) \ S(y)| = F0 − |S(y)| , |S(y) \ S(x)| = F0 − |S(y)| . This implies that x y x y . A multiplicative error of to provides at most additive error of x y . We only need to prove that additive error of x y is hard.

Algorithms for Big Data (IX) 10/15

slide-49
SLIDE 49

We shall reduce from the problem of computing the Hamming distance between two strings. Alice and Bob want to compute dH(x, y), which is exactly |S(x) \ S(y)| + |S(y) \ S(x)|. Since F0 of S(x) ⊕ S(y) is |S(x) ∪ S(y)|, we have |S(x) \ S(y)| = F0 − |S(y)| , |S(y) \ S(x)| = F0 − |S(y)| . This implies that dH(x, y) = 2F0 − |S(x)| − |S(y)|. A multiplicative error of to provides at most additive error of x y . We only need to prove that additive error of x y is hard.

Algorithms for Big Data (IX) 10/15

slide-50
SLIDE 50

We shall reduce from the problem of computing the Hamming distance between two strings. Alice and Bob want to compute dH(x, y), which is exactly |S(x) \ S(y)| + |S(y) \ S(x)|. Since F0 of S(x) ⊕ S(y) is |S(x) ∪ S(y)|, we have |S(x) \ S(y)| = F0 − |S(y)| , |S(y) \ S(x)| = F0 − |S(y)| . This implies that dH(x, y) = 2F0 − |S(x)| − |S(y)|. A multiplicative error of (1 ±

1 √n) to F0 provides at most O(√n) additive error of

dH(x, y). We only need to prove that additive error of x y is hard.

Algorithms for Big Data (IX) 10/15

slide-51
SLIDE 51

We shall reduce from the problem of computing the Hamming distance between two strings. Alice and Bob want to compute dH(x, y), which is exactly |S(x) \ S(y)| + |S(y) \ S(x)|. Since F0 of S(x) ⊕ S(y) is |S(x) ∪ S(y)|, we have |S(x) \ S(y)| = F0 − |S(y)| , |S(y) \ S(x)| = F0 − |S(y)| . This implies that dH(x, y) = 2F0 − |S(x)| − |S(y)|. A multiplicative error of (1 ±

1 √n) to F0 provides at most O(√n) additive error of

dH(x, y). We only need to prove that O(√n) additive error of dH(x, y) is hard.

Algorithms for Big Data (IX) 10/15

slide-52
SLIDE 52

Gap-Hamming

We call the problem Gap-Hamming. Gap-Ham if if undefined

  • therwise

We will show that solving Gap-Hamming needs bits of one-way communication even if randomness is permitued.

Algorithms for Big Data (IX) 11/15

slide-53
SLIDE 53

Gap-Hamming

We call the problem Gap-Hamming. Gap-Ham if if undefined

  • therwise

We will show that solving Gap-Hamming needs bits of one-way communication even if randomness is permitued.

Algorithms for Big Data (IX) 11/15

slide-54
SLIDE 54

Gap-Hamming

We call the problem Gap-Hamming. Gap-Hamc(x, y) =      1 if dH(x, y) ≤ n

2 − c√n

if dH(x, y) ≥ n

2 + c√n

undefined

  • therwise.

We will show that solving Gap-Hamming needs bits of one-way communication even if randomness is permitued.

Algorithms for Big Data (IX) 11/15

slide-55
SLIDE 55

Gap-Hamming

We call the problem Gap-Hamming. Gap-Hamc(x, y) =      1 if dH(x, y) ≤ n

2 − c√n

if dH(x, y) ≥ n

2 + c√n

undefined

  • therwise.

We will show that solving Gap-Hamming needs Ω(n) bits of one-way communication even if randomness is permitued.

Algorithms for Big Data (IX) 11/15

slide-56
SLIDE 56

We will reduce from INDEX. Recall that we assume Alice holds a string x ∈ {0, 1}n and Bob holds an index i ∈ [n]. I x Alice and Bob generate an instance x y

  • f Gap-Hamming without any

communication, and then try to deduce the value of from it… This seems to be impossible… Let us see the power of randomness. We generate x y bit by bit.

Algorithms for Big Data (IX) 12/15

slide-57
SLIDE 57

We will reduce from INDEX. Recall that we assume Alice holds a string x ∈ {0, 1}n and Bob holds an index i ∈ [n]. INDEX(x, i) = xi. Alice and Bob generate an instance x y

  • f Gap-Hamming without any

communication, and then try to deduce the value of from it… This seems to be impossible… Let us see the power of randomness. We generate x y bit by bit.

Algorithms for Big Data (IX) 12/15

slide-58
SLIDE 58

We will reduce from INDEX. Recall that we assume Alice holds a string x ∈ {0, 1}n and Bob holds an index i ∈ [n]. INDEX(x, i) = xi. Alice and Bob generate an instance (x′, y′) of Gap-Hamming without any communication, and then try to deduce the value of xi from it… This seems to be impossible… Let us see the power of randomness. We generate x y bit by bit.

Algorithms for Big Data (IX) 12/15

slide-59
SLIDE 59

We will reduce from INDEX. Recall that we assume Alice holds a string x ∈ {0, 1}n and Bob holds an index i ∈ [n]. INDEX(x, i) = xi. Alice and Bob generate an instance (x′, y′) of Gap-Hamming without any communication, and then try to deduce the value of xi from it… This seems to be impossible… Let us see the power of randomness. We generate x y bit by bit.

Algorithms for Big Data (IX) 12/15

slide-60
SLIDE 60

We will reduce from INDEX. Recall that we assume Alice holds a string x ∈ {0, 1}n and Bob holds an index i ∈ [n]. INDEX(x, i) = xi. Alice and Bob generate an instance (x′, y′) of Gap-Hamming without any communication, and then try to deduce the value of xi from it… This seems to be impossible… Let us see the power of randomness. We generate x y bit by bit.

Algorithms for Big Data (IX) 12/15

slide-61
SLIDE 61

We will reduce from INDEX. Recall that we assume Alice holds a string x ∈ {0, 1}n and Bob holds an index i ∈ [n]. INDEX(x, i) = xi. Alice and Bob generate an instance (x′, y′) of Gap-Hamming without any communication, and then try to deduce the value of xi from it… This seems to be impossible… Let us see the power of randomness. We generate (x′, y′) bit by bit.

Algorithms for Big Data (IX) 12/15

slide-62
SLIDE 62

The idea is that, for each j, we want to generate x′

j, y′ j in a way such that the event

x′

j = y′ j is correlated to the value of xi.

Assume the public random string is r (of length ), which can be seen by both Alice and Bob. Recall that is the index that Bob holds. He always generate as the current bit of y (denoted by ). Alice generates if x r , generates if x r (denoted by ). The key observation is that: if , then is more likely to happen; if , then is more likely to happen.

Algorithms for Big Data (IX) 13/15

slide-63
SLIDE 63

The idea is that, for each j, we want to generate x′

j, y′ j in a way such that the event

x′

j = y′ j is correlated to the value of xi.

Assume the public random string is r (of length n), which can be seen by both Alice and Bob. Recall that is the index that Bob holds. He always generate as the current bit of y (denoted by ). Alice generates if x r , generates if x r (denoted by ). The key observation is that: if , then is more likely to happen; if , then is more likely to happen.

Algorithms for Big Data (IX) 13/15

slide-64
SLIDE 64

The idea is that, for each j, we want to generate x′

j, y′ j in a way such that the event

x′

j = y′ j is correlated to the value of xi.

Assume the public random string is r (of length n), which can be seen by both Alice and Bob. Recall that i is the index that Bob holds. He always generate ri as the current bit of y′ (denoted by b). Alice generates if x r , generates if x r (denoted by ). The key observation is that: if , then is more likely to happen; if , then is more likely to happen.

Algorithms for Big Data (IX) 13/15

slide-65
SLIDE 65

The idea is that, for each j, we want to generate x′

j, y′ j in a way such that the event

x′

j = y′ j is correlated to the value of xi.

Assume the public random string is r (of length n), which can be seen by both Alice and Bob. Recall that i is the index that Bob holds. He always generate ri as the current bit of y′ (denoted by b). Alice generates 1 if dH(x, r) < n

2 , generates 0 if dH(x, r) > n 2 (denoted by a).

The key observation is that: if , then is more likely to happen; if , then is more likely to happen.

Algorithms for Big Data (IX) 13/15

slide-66
SLIDE 66

The idea is that, for each j, we want to generate x′

j, y′ j in a way such that the event

x′

j = y′ j is correlated to the value of xi.

Assume the public random string is r (of length n), which can be seen by both Alice and Bob. Recall that i is the index that Bob holds. He always generate ri as the current bit of y′ (denoted by b). Alice generates 1 if dH(x, r) < n

2 , generates 0 if dH(x, r) > n 2 (denoted by a).

The key observation is that: ▶ if xi = 1, then a = b is more likely to happen; ▶ if xi = 0, then a ̸= b is more likely to happen.

Algorithms for Big Data (IX) 13/15

slide-67
SLIDE 67

We assume n is odd. Assuming Alice generates and Bob generates . Conditional on the random bits r , we define two events and . Event : the value of has already been determined by r , then Pr . Event : x r , so the value of is determined by whether . Conditional on , if , then ; if , then . Pr Pr Pr Pr Pr Pr if Pr if

Algorithms for Big Data (IX) 14/15

slide-68
SLIDE 68

We assume n is odd. Assuming Alice generates a and Bob generates b. Conditional on the random bits r , we define two events and . Event : the value of has already been determined by r , then Pr . Event : x r , so the value of is determined by whether . Conditional on , if , then ; if , then . Pr Pr Pr Pr Pr Pr if Pr if

Algorithms for Big Data (IX) 14/15

slide-69
SLIDE 69

We assume n is odd. Assuming Alice generates a and Bob generates b. Conditional on the random bits ri, we define two events E1 and E2. Event : the value of has already been determined by r , then Pr . Event : x r , so the value of is determined by whether . Conditional on , if , then ; if , then . Pr Pr Pr Pr Pr Pr if Pr if

Algorithms for Big Data (IX) 14/15

slide-70
SLIDE 70

We assume n is odd. Assuming Alice generates a and Bob generates b. Conditional on the random bits ri, we define two events E1 and E2. Event E1: the value of a has already been determined by r−i, then Pr [a = b | E1] = 1

2.

Event : x r , so the value of is determined by whether . Conditional on , if , then ; if , then . Pr Pr Pr Pr Pr Pr if Pr if

Algorithms for Big Data (IX) 14/15

slide-71
SLIDE 71

We assume n is odd. Assuming Alice generates a and Bob generates b. Conditional on the random bits ri, we define two events E1 and E2. Event E1: the value of a has already been determined by r−i, then Pr [a = b | E1] = 1

2.

Event E2: dH(x−i, r−i) = n

2 , so the value of a is determined by whether ri = xi.

Conditional on , if , then ; if , then . Pr Pr Pr Pr Pr Pr if Pr if

Algorithms for Big Data (IX) 14/15

slide-72
SLIDE 72

We assume n is odd. Assuming Alice generates a and Bob generates b. Conditional on the random bits ri, we define two events E1 and E2. Event E1: the value of a has already been determined by r−i, then Pr [a = b | E1] = 1

2.

Event E2: dH(x−i, r−i) = n

2 , so the value of a is determined by whether ri = xi.

Conditional on E2, if xi = 1, then a = b; if xi = 0, then a ̸= b. Pr Pr Pr Pr Pr Pr if Pr if

Algorithms for Big Data (IX) 14/15

slide-73
SLIDE 73

We assume n is odd. Assuming Alice generates a and Bob generates b. Conditional on the random bits ri, we define two events E1 and E2. Event E1: the value of a has already been determined by r−i, then Pr [a = b | E1] = 1

2.

Event E2: dH(x−i, r−i) = n

2 , so the value of a is determined by whether ri = xi.

Conditional on E2, if xi = 1, then a = b; if xi = 0, then a ̸= b. Pr [a = b] = Pr [E1]·Pr [a = b | E1]+Pr [E2]·Pr [a = b | E2] = {

1 2 + Pr [E2]

if xi = 1

1 2 − Pr [E2]

if xi = 0

Algorithms for Big Data (IX) 14/15

slide-74
SLIDE 74

The probability of E2 is (

n−1 (n−1)/2

) 21−n =

c √n for some constant c by the Stirling formula

(n! ∼ √ 2πn ( n

e

)n). Therefore, we have Pr if if Using the Chernofg bound, we can generate bits and use a protocol for Gap-Hamming to solve INDEX.

Algorithms for Big Data (IX) 15/15

slide-75
SLIDE 75

The probability of E2 is (

n−1 (n−1)/2

) 21−n =

c √n for some constant c by the Stirling formula

(n! ∼ √ 2πn ( n

e

)n). Therefore, we have Pr [a = b] = {1

2 + c √n

if xi = 1

1 2 − c √n

if xi = 0 Using the Chernofg bound, we can generate bits and use a protocol for Gap-Hamming to solve INDEX.

Algorithms for Big Data (IX) 15/15

slide-76
SLIDE 76

The probability of E2 is (

n−1 (n−1)/2

) 21−n =

c √n for some constant c by the Stirling formula

(n! ∼ √ 2πn ( n

e

)n). Therefore, we have Pr [a = b] = {1

2 + c √n

if xi = 1

1 2 − c √n

if xi = 0 Using the Chernofg bound, we can generate Θ(n) bits and use a protocol for Gap-Hamming to solve INDEX.

Algorithms for Big Data (IX) 15/15