Bounds rti - Princeton University Computer Sciencembraverm/pmwiki/... · ry The pplications •...
Transcript of Bounds rti - Princeton University Computer Sciencembraverm/pmwiki/... · ry The pplications •...
Information Complexity:
A Paradigm for Proving Lower Bounds
Amit ChakrabartiDartmouth College
Hanover, NH, USA
STOC 2013, Palo Alto
1
History
The applications came first; theory built in service of applications
2
History
The applications came first; theory built in service of applications
• Ablayev (Theor. Comp. Sci., 1996)
Proved lower bound for communication problem index
Used technique that we now recognize as “information complexity”
2-a
History
The applications came first; theory built in service of applications
• Ablayev (Theor. Comp. Sci., 1996)
Proved lower bound for communication problem index
Used technique that we now recognize as “information complexity”
• Chakrabarti, Shi, Wirth, Yao (FOCS, 2001)
Proved direct sum results for simultaneous message complexity
Formally defined “information cost” and “information complexity”
Introduced notations icost, IC
Anticipated wider applicability of paradigm
2-b
History
The applications came first; theory built in service of applications
• Ablayev (Theor. Comp. Sci., 1996)
Proved lower bound for communication problem index
Used technique that we now recognize as “information complexity”
• Chakrabarti, Shi, Wirth, Yao (FOCS, 2001)
Proved direct sum results for simultaneous message complexity
Formally defined “information cost” and “information complexity”
Introduced notations icost, IC
Anticipated wider applicability of paradigm
!
"
#
$
“We introduce a new notion of informational complexity which is
related to SM complexity and has nice direct sum properties. This
notion is used as a tool to prove the above results; it appears to be
quite powerful and may be of independent interest.”
2-c
History
The applications came first; theory built in service of applications
• Ablayev (Theor. Comp. Sci., 1996)
Proved lower bound for communication problem index
Used technique that we now recognize as “information complexity”
• Chakrabarti, Shi, Wirth, Yao (FOCS, 2001)
Proved direct sum results for simultaneous message complexity
Formally defined “information cost” and “information complexity”
Introduced notations icost, IC
Anticipated wider applicability of paradigm
2
History
The applications came first; theory built in service of applications
• Ablayev (Theor. Comp. Sci., 1996)
Proved lower bound for communication problem index
Used technique that we now recognize as “information complexity”
• Chakrabarti, Shi, Wirth, Yao (FOCS, 2001)
Proved direct sum results for simultaneous message complexity
Formally defined “information cost” and “information complexity”
Introduced notations icost, IC
Anticipated wider applicability of paradigm
• Bar-Yossef, Jayram, Kumar, Sivakumar (FOCS, 2002)
Gave extension to interactive communication
Cleverly handled non-product distributions: “conditional icost”
Improved some communication (hence data stream) lower bounds
2-a
This Talk
Goals:
• Tutorial style
• Diversity of results
• Extract common patterns in applying IC
Not goals:
• Be comprehensive
• Present latest results (but see Woodru!’s talk next)
3
(Generalized) Direct Sum Theorems
Situation:
• Task A : a simple computational task
• Task B: combines N independent copies of task A
Direct sum theorem:
Complexity(B) = !(N) · Complexity(A )
4
The Information Complexity Paradigm
Situation:
• Task A : a simple computational task
• Task B: combines N independent copies of task A
The paradigm:
1. Define information cost
2. Simulation Argument
3. Basic IC lower bound
5
The Information Complexity Paradigm
Situation:
• Task A : a simple computational task
• Task B: combines N independent copies of task A
The paradigm:
1. Define information cost, hence information complexity (IC)
Get Complexity(B) ! IC(B)
2. Simulation Argument
3. Basic IC lower bound
5-a
The Information Complexity Paradigm
Situation:
• Task A : a simple computational task
• Task B: combines N independent copies of task A
The paradigm:
1. Define information cost, hence information complexity (IC)
Get Complexity(B) ! IC(B)
2. Simulation Argument: solving B " solving each copy of A
Get IC(B) ! N · IC(A )
3. Basic IC lower bound
5-b
The Information Complexity Paradigm
Situation:
• Task A : a simple computational task
• Task B: combines N independent copies of task A
The paradigm:
1. Define information cost, hence information complexity (IC)
Get Complexity(B) ! IC(B)
2. Simulation Argument: solving B " solving each copy of A
Get IC(B) ! N · IC(A )
3. Basic IC lower bound: apply to simple task A
Get IC(A ) ! Complexity(A )
5-c
Part One:
No Interaction
6
The Problem
Definition:
Alice holds x # {0, 1}n, Bob holds i # [n]; find xi (error $ !)
iAlice
1 2 nx = x x ... xmsg( )x,R Bob
Correctness requirement:
%x, i Pr[output &= xi] $ !
7
The Problem
Definition:
Alice holds x # {0, 1}n, Bob holds i # [n]; find xi (error $ !)
iAlice
1 2 nx = x x ... xmsg( )x,R Bob
Correctness requirement:
%x, i Pr[output &= xi] $ !
Theorem: Alice needs to send !(n) bits. [Ablayev’96]
7-a
Information Complexity Paradigm Demo
The echo problem:
Alice holds b # {0, 1}, Bob to output b with error $ !
BobAliceb
msg( )b,R
8
Information Complexity Paradigm Demo
The echo problem:
Alice holds b # {0, 1}, Bob to output b with error $ !
BobAliceb
msg( )b,R
Simple task (A ): echo
Complex task (B): index
8-a
Information Complexity Paradigm Demo
The echo problem:
Alice holds b # {0, 1}, Bob to output b with error $ !
BobAliceb
msg( )b,R
Simple task (A ): echo
Complex task (B): index ' combines n independent copies of echo
8-b
Information Complexity Paradigm Demo
The echo problem:
Alice holds b # {0, 1}, Bob to output b with error $ !
BobAliceb
msg( )b,R
Simple task (A ): echo
Complex task (B): index ' combines n independent copies of echo
The paradigm
1. Define information cost
2. Simulation Argument
3. Basic IC lower bound (for echo)
8-c
Step 1: Define Information Cost
Generic notion, for a communication protocol ":
icost(") = amount of info about (part of) the input to "
revealed by (some of) the messages in "
(possibly conditioned on some prior knowledge)
9
Step 1: Define Information Cost
Generic notion, for a communication protocol ":
icost(") = amount of info about (part of) the input to "
revealed by (some of) the messages in "
(possibly conditioned on some prior knowledge)
In this case...
• Let "B be a protocol for task B (i.e., index)
• Let X = random input (distrib µ) for Alice
R = random coins of Alice
M = msg(X,R); then
icostµ("B) := I(X : M)
• Notice:
icostµ("B) $ H(M) $ length(M) = cost("B)
9-a
Step 2: Simulation Argument
Take X = X1 . . .Xn ( µ1) · · ·)µn =: µ; then X1, . . . , Xn independent
cost("B) ! icostµ("B)
= I(X1X2 . . .Xn : M)
! I(X1 : M) + I(X2 : M) + · · ·+ I(Xn : M) [superadditivity]
10
Step 2: Simulation Argument
Take X = X1 . . .Xn ( µ1) · · ·)µn =: µ; then X1, . . . , Xn independent
cost("B) ! icostµ("B)
= I(X1X2 . . .Xn : M)
! I(X1 : M) + I(X2 : M) + · · ·+ I(Xn : M) [superadditivity]
= icostµ1("A,1) + icostµ2("A,2) + · · ·+ icostµn("A,n)
To make this work, want protocols "A,j s.t.
M * Alice’s message in "A,j on input Xj ( µj
10-a
Step 2: Simulation Argument
Take X = X1 . . .Xn ( µ1) · · ·)µn =: µ; then X1, . . . , Xn independent
cost("B) ! icostµ("B)
= I(X1X2 . . .Xn : M)
! I(X1 : M) + I(X2 : M) + · · ·+ I(Xn : M) [superadditivity]
= icostµ1("A,1) + icostµ2("A,2) + · · ·+ icostµn("A,n)
To make this work, want protocols "A,j s.t.
M * Alice’s message in "A,j on input Xj ( µj
xAlice inWB Bob inx,Rmsg( ) BW
i
Notice: each "A,j solves echo
10-b
Step 2: Simulation Argument
Take X = X1 . . .Xn ( µ1) · · ·)µn =: µ; then X1, . . . , Xn independent
cost("B) ! icostµ("B)
= I(X1X2 . . .Xn : M)
! I(X1 : M) + I(X2 : M) + · · ·+ I(Xn : M) [superadditivity]
= icostµ1("A,1) + icostµ2("A,2) + · · ·+ icostµn("A,n)
To make this work, want protocols "A,j s.t.
M * Alice’s message in "A,j on input Xj ( µj
Alice inWB Bob inx,Rmsg( ) BWi
W
i = 2b
Bob in
rand+x = b
Alice in A,2W,2A
10
Step 2: Simulation Argument
Take X = X1 . . .Xn ( µ1) · · ·)µn =: µ; then X1, . . . , Xn independent
cost("B) ! icostµ("B)
= I(X1X2 . . .Xn : M)
! I(X1 : M) + I(X2 : M) + · · ·+ I(Xn : M) [superadditivity]
= icostµ1("A,1) + icostµ2("A,2) + · · ·+ icostµn("A,n)
To make this work, want protocols "A,j s.t.
M * Alice’s message in "A,j on input Xj ( µj
Alice inWB Bob inx,Rmsg( ) BWi
W
i = 2b
Bob in
rand+x = b
Alice in A,2W,2A
Notice: each "A,j solves echo
10-a
Step 3: Basic IC Lower Bound
Comm complexity: R!! (B) = min {cost(") : " solves B with error !}
Info complexity: ICµ,!! (B) = inf {icostµ(") : " solves B with error !}
Pick µ = uniform distrib, "; so far
R!! (B) ! IC",!
! (B)
IC",!! (B) ! n · IC",!(A )
11
Step 3: Basic IC Lower Bound
Comm complexity: R!! (B) = min {cost(") : " solves B with error !}
Info complexity: ICµ,!! (B) = inf {icostµ(") : " solves B with error !}
Pick µ = uniform distrib, "; so far
R!! (B) ! IC",!
! (B)
IC",!! (B) ! n · IC",!(A )
Intuitively clear that ICµ,!! (A ) &= 0
Implication: R!! (B) = !(n). QED
11-a
Step 3: Basic IC Lower Bound
Comm complexity: R!! (B) = min {cost(") : " solves B with error !}
Info complexity: ICµ,!! (B) = inf {icostµ(") : " solves B with error !}
Pick µ = uniform distrib, "; so far
R!! (B) ! IC",!
! (B)
IC",!! (B) ! n · IC",!(A )
Intuitively clear that ICµ,!! (A ) &= 0
Implication: R!! (B) = !(n). QED
In fact we can work out the constant precisely...
11-b
Step 3: Basic IC Lower Bound: Details
• Let "A be a protocol for task A (i.e., echo)
• Let Z = random input (uniform distrib ") for Alice
M = msg(Z,R)
M (z) = msg(z, R) for z # {0, 1}
• Basic information theory:
icost"("A) = I(Z : M)= 12 (DKL(M (0)+M) + DKL(M (1)+M))
12
Step 3: Basic IC Lower Bound: Details
• Let "A be a protocol for task A (i.e., echo)
• Let Z = random input (uniform distrib ") for Alice
M = msg(Z,R)
M (z) = msg(z, R) for z # {0, 1}
• Basic information theory:
icost"("A) = I(Z : M)= 12 (DKL(M (0)+M) + DKL(M (1)+M))
DTV(P,Q) : total variation distance
DKL(P+Q) : Kullback-Leibler divergence
DJS(P,Q) : Jensen-Shannon divergence
Hb(x) : binary entropy function
= ,x log x, (1, x) log(1, x)
12-a
Step 3: Basic IC Lower Bound: Details
• Let "A be a protocol for task A (i.e., echo)
• Let Z = random input (uniform distrib ") for Alice
M = msg(Z,R)
M (z) = msg(z, R) for z # {0, 1}
icost"("A) = I(Z : M)
12
Step 3: Basic IC Lower Bound: Details
• Let "A be a protocol for task A (i.e., echo)
• Let Z = random input (uniform distrib ") for Alice
M = msg(Z,R)
M (z) = msg(z, R) for z # {0, 1}
• Basic information theory:
icost"("A) = I(Z : M) = 12 (DKL(M (0)+M) + DKL(M (1)+M))
12-a
Step 3: Basic IC Lower Bound: Details
• Let "A be a protocol for task A (i.e., echo)
• Let Z = random input (uniform distrib ") for Alice
M = msg(Z,R)
M (z) = msg(z, R) for z # {0, 1}
• Basic information theory:
icost"("A) = I(Z : M) = 12 (DKL(M (0)+M) + DKL(M (1)+M))
= DJS(M(0),M (1))
! 1, Hb
!1,DTV(M (0),M (1))
2
"
12-b
Step 3: Basic IC Lower Bound: Details
• Let "A be a protocol for task A (i.e., echo)
• Let Z = random input (uniform distrib ") for Alice
M = msg(Z,R)
M (z) = msg(z, R) for z # {0, 1}
• Basic information theory:
icost"("A) = I(Z : M) = 12 (DKL(M (0)+M) + DKL(M (1)+M))
= DJS(M(0),M (1))
! 1, Hb
!1,DTV(M (0),M (1))
2
"
• Error $ ! implies DTV(M (0),M (1)) ! 1, 2!
12-c
Step 3: Basic IC Lower Bound: Details
• Let "A be a protocol for task A (i.e., echo)
• Let Z = random input (uniform distrib ") for Alice
M = msg(Z,R)
M (z) = msg(z, R) for z # {0, 1}
• Basic information theory:
icost"("A) = I(Z : M) = 12 (DKL(M (0)+M) + DKL(M (1)+M))
= DJS(M(0),M (1))
! 1, Hb
!1,DTV(M (0),M (1))
2
"
• Error $ ! implies DTV(M (0),M (1)) ! 1, 2!
• Thus icost"("A) ! 1,Hb(!)
and so R!! (index) ! (1,Hb(!))n ... a tight bound!
12-d
The Problem: Applications
A humble lower bound, but with many applications!
• Complexity of sampling procedures
• Lower bounds for succinct data structures
• Space lower bounds for (one-pass) data stream algorithms
– Median of n numbers: !(n)
– Mode of n numbers: !(n)
– Connectivity of n-vertex graph, given edges: !(n)
– Triangle-freeness of n-vertex graph: !(n2)...
13
The Problem: Applications
A humble lower bound, but with many applications!
• Complexity of sampling procedures
• Lower bounds for succinct data structures
• Space lower bounds for (one-pass) data stream algorithms
– Median of n numbers: !(n)
– Mode of n numbers: !(n)
– Connectivity of n-vertex graph, given edges: !(n)
– Triangle-freeness of n-vertex graph: !(n2)...
– Diameter of n-vertex graph, k-approx: !(n1+1/k)
A very sophisticated reduction [Feigenbaum-K-M-S-Z’05]
13-a
The Problem: Extensions
• Generalize to augmented-index
kï11x ... x
x = x x ... x21 n
W
k
xkBobAlice
• Still !(n); replace superadditivity step with chain rule:
I(X1X2 . . .Xn : M) =#n
i=1 I(Xi : M | X1 . . .Xi"1)
14
The Problem: Extensions
• Generalize to augmented-index
kï11x ... x
x = x x ... x21 n
W
k
xkBobAlice
• Still !(n); replace superadditivity step with chain rule:
I(X1X2 . . .Xn : M) =#n
i=1 I(Xi : M | X1 . . .Xi"1)
• Generalize to interactive communication
– Communication complexity drops to O(log n)
– Seek tradeo!s [Magniez-Mathieu-Nayak’10], [C.-Kondapally’11]
14-a
Simultaneous Message Communication
= f(x,y) w.h.p.
Refereesketch(x) sketch(y)
Alice Bobx y
Lower bound method: R#(f) := R#1/3(f) = !(
$D#(f)) [Babai-Kimmel’97]
15
Simultaneous Message Communication
= f(x,y) w.h.p.
Refereesketch(x) sketch(y)
Alice Bobx y
Lower bound method: R#(f) := R#1/3(f) = !(
$D#(f)) [Babai-Kimmel’97]
Equality function eqn(x, y) = 1 -" x = y ... x, y # {0, 1}n
A neat result: R#(eqn) = #(.n) [Ambainis’96]
15-a
Simultaneous Message Communication
= f(x,y) w.h.p.
Refereesketch(x) sketch(y)
Alice Bobx y
Lower bound method: R#(f) := R#1/3(f) = !(
$D#(f)) [Babai-Kimmel’97]
Equality function eqn(x, y) = 1 -" x = y ... x, y # {0, 1}n
A neat result: R#(eqn) = #(.n) [Ambainis’96]
Direct sum: oreqn,m(x1 . . . xm, y1 . . . ym) =%m
i=1 eqn(xi, yi)
What is R#(oreqn,m)? Above method only shows !(.mn)
15-b
Simultaneous Message Communication
= f(x,y) w.h.p.
Refereesketch(x) sketch(y)
Alice Bobx y
Lower bound method: R#(f) := R#1/3(f) = !(
$D#(f)) [Babai-Kimmel’97]
Equality function eqn(x, y) = 1 -" x = y ... x, y # {0, 1}n
A neat result: R#(eqn) = #(.n) [Ambainis’96]
Direct sum: oreqn,m(x1 . . . xm, y1 . . . ym) =%m
i=1 eqn(xi, yi)
What is R#(oreqn,m)? Above method only shows !(.mn)
Theorem: (via IC) R#(oreqn,m) = !(m.n) [C.-Shi-Wirth-Yao’01]
15-c
IC Paradigm: Second Demo
Alice: input X ( ", message U ; Bob: input Y ( ", message V
1. Define information cost
2. Simulation Argument
3. Basic IC lower bound
16
IC Paradigm: Second Demo
Alice: input X ( ", message U ; Bob: input Y ( ", message V
1. Define information cost
icost"(") = I(X : U) + I(Y : V )
2. Simulation Argument
To solve eqn by simulating protocol for oreqn,m
Alice, Bob plug input into ith position, fill rest at random ( "
May change answer from 0 to 1 w.p. $ m/2n = o(1)
3. Basic IC lower bound
16-a
IC Paradigm: Second Demo
Alice: input X ( ", message U ; Bob: input Y ( ", message V
1. Define information cost
icost"(") = I(X : U) + I(Y : V )
2. Simulation Argument
To solve eqn by simulating protocol for oreqn,m
Alice, Bob plug input into ith position, fill rest at random ( "
May change answer from 0 to 1 w.p. $ m/2n = o(1)
3. Basic IC lower bound (for eq)
So far: R#(oreqn,m) ! IC",#(oreqn,m) ! m · IC",#(eqn)
Must show IC",#(eqn) ! R#(eqn)
16-b
IC Paradigm: Second Demo
Alice: input X ( ", message U ; Bob: input Y ( ", message V
1. Define information cost
icost"(") = I(X : U) + I(Y : V )
2. Simulation Argument
To solve eqn by simulating protocol for oreqn,m
Alice, Bob plug input into ith position, fill rest at random ( "
May change answer from 0 to 1 w.p. $ m/2n = o(1)
3. Basic IC lower bound (for eq)
So far: R#(oreqn,m) ! IC",#(oreqn,m) ! m · IC",#(eqn)
Must show IC",#(eqn) ! R#(eqn)
For last step: compress Alice’s/Bob’s messages down to their info content
Main idea: Whittle down message space via rejection sampling [CSWY’01]
16-c
IC Paradigm: Second Demo
Alice: input X ( ", message U ; Bob: input Y ( ", message V
1. Define information cost
icost"(") = I(X : U) + I(Y : V )
2. Simulation Argument
To solve eqn by simulating protocol for oreqn,m
Alice, Bob plug input into ith position, fill rest at random ( "
May change answer from 0 to 1 w.p. $ m/2n = o(1)
3. Basic IC lower bound (for eq)
So far: R#(oreqn,m) ! IC",#(oreqn,m) ! m · IC",#(eqn)
Must show IC",#(eqn) ! R#(eqn)
For last step: compress Alice’s/Bob’s messages down to their info content
Main idea: Whittle down message space via rejection sampling [CSWY’01]
Deeper version of idea: comm complexity of correlation [Harsha-J-M-R’07]
16-d
Part Two:
Interaction, But Not Really
17
Lower Bounds for Data Structures
Preprocess data Y / data structure T = T (Y ) ... low storage space
Query x / algorithm A(x, T ) / output z ... low query time
Satisfying some relation R(x, Y, z).
Examples: take x # {0, 1}d, Y 0 {0, 1}d with |Y | = n
• Predecessor Search
Treat data as d-bit integers
R(x, Y, z) i! z # Y is the predecessor of x in Y .
18
Lower Bounds for Data Structures
Preprocess data Y / data structure T = T (Y ) ... low storage space
Query x / algorithm A(x, T ) / output z ... low query time
Satisfying some relation R(x, Y, z).
Examples: take x # {0, 1}d, Y 0 {0, 1}d with |Y | = n
• Predecessor Search
Treat data as d-bit integers
R(x, Y, z) i! z # Y is the predecessor of x in Y .
• Approx Nearest Neighbor (ANN) Search
Treat data as points in Hamming cube
R(x, Y, z) i! z # Y is a #-ANN of x w.r.t. Y .
18-a
Cell-Probe Model
AlgorithmQuery
Preprocessed DatabaseQuery xT= Table
11110001000011001011001000
poly(d)bits per cell
cellspoly(n)
[Yao’81]
19
Cell-Probe Model
Index i1
1T[i ]
AlgorithmQuery
Preprocessed DatabaseQuery xT= Table
11110001000011001011001000
poly(d)bits per cell
cellspoly(n)
[Yao’81]
19
Cell-Probe Model
i2
2T[i ]
Index i1
1T[i ]
AlgorithmQuery
Preprocessed DatabaseQuery xT= Table
11110001000011001011001000
poly(d)bits per cell
cellspoly(n)
[Yao’81]
19
Cell-Probe Model
probest
i2
2T[i ]
Index i1
1T[i ]
AlgorithmQuery
Preprocessed DatabaseQuery xT= Table
11110001000011001011001000
poly(d)bits per cell
cellspoly(n)
[Yao’81]
19
Cell-Probe Model
probest
i2
2T[i ]
Index i1
1T[i ]
AlgorithmQuery
Preprocessed DatabaseQuery xT= Table
11110001000011001011001000
poly(d)bits per cell
cellspoly(n)
[Yao’81]
19
Cell-Probe Model
probest
i2
2T[i ]
Index i1
1T[i ]
AlgorithmQuery
Preprocessed DatabaseQuery xT= Table
11110001000011001011001000
poly(d)bits per cell
cellspoly(n)
ALIC
E
BOB
rounds2t
Alice: O(log n)-bit messages; Bob: poly(d)-bit messages
19
Round Elimination: Predecessor Search
Repeatedly remove first round, shrink instance size
[Miltersen-Nisan-Safra-Wigderson’95], [Sen’03]
ALICE
d bits
d bits
npo
ints
BOB
Eventually: zero communication protocol for instance size (d/kt, n/$t)
Implying... Theorem: Query time t = !
!log d
log log d
"
20
Round Elimination: Predecessor Search
Repeatedly remove first round, shrink instance size
[Miltersen-Nisan-Safra-Wigderson’95], [Sen’03]
ALICE
d/k
bitsd/k
npo
ints
BOB
bits
Eventually: zero communication protocol for instance size (d/kt, n/$t)
Implying... Theorem: Query time t = !
!log d
log log d
"
20
Round Elimination: Predecessor Search
Repeatedly remove first round, shrink instance size
[Miltersen-Nisan-Safra-Wigderson’95], [Sen’03]
ALICE
d/k
bitsd/k
poin
tsn/
l
BOB
bits
Eventually: zero communication protocol for instance size (d/kt, n/$t)
Implying... Theorem: Query time t = !
!log d
log log d
"
20
Round Elimination: Predecessor Search
Repeatedly remove first round, shrink instance size
[Miltersen-Nisan-Safra-Wigderson’95], [Sen’03]
ALICE
d/k
bitsd/k
poin
tsn/
l
BOB
bits
Eventually: zero communication protocol for instance size (d/kt, n/$t)
Implying... Theorem: Query time t = !
!log d
log log d
"
20
Predecessor Search: Embeddability Property
Input (x, Y ) solvable using input (% 1 x 1 rand, % 1 Y 1 rand).
x
ALICE BOB
yy
y
3
n
1
2
y
Simple task (A ): instance size (n/k, d), using 2t rounds
Complex task (B): instance size (n, d), using 2t rounds ' k times A
21
Predecessor Search: Embeddability Property
Input (x, Y ) solvable using input (% 1 x 1 rand, % 1 Y 1 rand).
x
ALICE BOB
yy
y
3
n
1
2
y
m
m
m
m
m
m
m
21
Predecessor Search: Embeddability Property
Input (x, Y ) solvable using input (% 1 x 1 rand, % 1 Y 1 rand).
x
ALICE BOB
yy
y
3
n
1
2
y
m
m
m
m
m
m
m
Simple task (A ): instance size (n/k, d), using 2t rounds
Complex task (B): instance size (n, d), using 2t rounds ' k times A
21-a
IC Paradigm For Round Elimination
1. Define information cost
icostµ1 (") = I(X : M1) Alice’s input X ( µ, M1 = msg1(X,R)
2. Simulation Argument
3. Compression Argument
22
IC Paradigm For Round Elimination
1. Define information cost
icostµ1 (") = I(X : M1) Alice’s input X ( µ, M1 = msg1(X,R)
2. Simulation Argument
Put X = X1X2 . . .Xk, each Xi: a (d/k)-bit chunk
Protocol "A,#: pad instance using prefix % of length (i, 1)d/k
O(log n) ! icostµ!k
1 (!B) = I(X1X2 . . . Xk : M1)
=!k
i=1 I(Xi : M1 | X1 . . . Xi!1)
=k"
i=1
E![I(Xi : M1 | X1 . . .Xi!1 = !)] =k"
i=1
E![icostµ1 (!A,!)]
3. Compression Argument
22-a
IC Paradigm For Round Elimination
1. Define information cost
icostµ1 (") = I(X : M1) Alice’s input X ( µ, M1 = msg1(X,R)
2. Simulation Argument
Put X = X1X2 . . .Xk, each Xi: a (d/k)-bit chunk
Protocol "A,#: pad instance using prefix % of length (i, 1)d/k
O(log n) ! icostµ!k
1 (!B) = I(X1X2 . . . Xk : M1)
=!k
i=1 I(Xi : M1 | X1 . . . Xi!1)
=k"
i=1
E![I(Xi : M1 | X1 . . .Xi!1 = !)] =k"
i=1
E![icostµ1 (!A,!)]
3. Compression Argument
So far: exists "A,# with icostµ1 ("A,#) $ O((log n)/k) = o(1)
Pretend msg1(X$, R) sent as first message, X $ * X but indep.
22-b
IC Paradigm For Round Elimination
1. Define information cost
icostµ1 (") = I(X : M1) Alice’s input X ( µ, M1 = msg1(X,R)
2. Simulation Argument
Put X = X1X2 . . .Xk, each Xi: a (d/k)-bit chunk
Protocol "A,#: pad instance using prefix % of length (i, 1)d/k
O(log n) ! icostµ!k
1 (!B) = I(X1X2 . . . Xk : M1)
=!k
i=1 I(Xi : M1 | X1 . . . Xi!1)
=k"
i=1
E![I(Xi : M1 | X1 . . .Xi!1 = !)] =k"
i=1
E![icostµ1 (!A,!)]
3. Compression Argument
So far: exists "A,# with icostµ1 ("A,#) $ O((log n)/k) = o(1)
Pretend msg1(X$, R) sent as first message, X $ * X but indep.
Error += O(&icostµ1 ("A,#)) = o(1) [Pinsker’s inequality]
22-c
Round Elimination: ANN Search
1. Define information cost
As before, icost1(") = I(X : M1)
2. Simulation Argument
ANN does not have embeddability property
3. Compression Argument
23
Round Elimination: ANN Search
1. Define information cost
As before, icost1(") = I(X : M1)
2. Simulation Argument
ANN does not have embeddability property
Reduce from Longest Prefix Match (LPM), which does
Get icostµ1 ("A,#) $ O((log n)/k) but this bound = &(1)
3. Compression Argument
23-a
Round Elimination: ANN Search
1. Define information cost
As before, icost1(") = I(X : M1)
2. Simulation Argument
ANN does not have embeddability property
Reduce from Longest Prefix Match (LPM), which does
Get icostµ1 ("A,#) $ O((log n)/k) but this bound = &(1)
3. Compression Argument
Use comm complexity of correlation [Harsha-J-M-R’07]
Compress first message down to its info content
Now it’s short enough: easy (combinatorial) round eliminiation
Eventually... Theorem: Query time t = !
!log log d
log log log d
"[C.-Regev’10]
23-b
Pointer Jumping Problems
Input: One pointer per level in layered graph; plus one bit per leaf
Task: output bit at leaf reached by following pointers from root
Multilayer Ptr Jumping, n,p
Full layered DAG, n nodes/layer
Number-on-Forehead (NOF)
Speaking order P1, . . . , Pp
0
1
0
1
1
0
1P1 P2 P3 P4 P5
Tree Pointer Jumping, n,p+1
Complete (p+ 1)-level n-ary tree
Number-In-Hand (NIH)
Use p rounds, going up tree: """
1 0 0 1 1 1 00 1
Level
Level
2
3
Level 1
Theorems: R!(mpjn,p) = !(n/p)! Rp(tpjn,p+1) = !(n/p2)
24
The Importance of a Careful Definition
For the NOF problem mpjn,p [Chakrabarti’07]
Input value
Random value
Fixed value
XXX X321 4
Protocol P , input (X1, . . . , Xp) ( µ, M1 = message of player P1:
icostµ(") := I(M1 : X2 | X3, . . . , Xk)
Simulation argument works only under one of these protocol restrictions:
• Myopic: each player sees only one layer ahead ... !(n/p)
• Conservative: don’t see behind except know current node ... !(n/p2)
25
Pointer Jumping: Applications
• Layered DAG version, NOF
– Strong NOF lower bounds imply circuit lower bounds [Yao’90]
– If myopic/conservative restriction removed, ACC0 &= LOGSPACE
26
Pointer Jumping: Applications
• Layered DAG version, NOF
– Strong NOF lower bounds imply circuit lower bounds [Yao’90]
– If myopic/conservative restriction removed, ACC0 &= LOGSPACE
• Tree version, NIH
– Multi-pass data stream lower bounds
– Classic example: median of n numbers, p passes: !(n1/p) space
– Modern: median, randomly-ordered, p passes: !(n2"p
) space
A sophisticated reduction [C.-Cormode-McGregor’08]
26-a
Part Three:
Full Interaction
27
The problem
• Input: 22 n Boolean matrix
• Task: distinguish between the following two cases
– Case 0: Every column has weight $ 1
0 1 0 0 0 1 1 0
1 0 1 1 0 0 0 0
– Case 1: One column has weight 2, rest have weight $ 1
(i.e., the subsets of [n] represented by the rows intersect)
0 1 1 0 0 1 1 0
1 0 1 1 0 0 0 0
28
The problem
• Input: 22 n Boolean matrix
• Task: distinguish between the following two cases
– Case 0: Every column has weight $ 1
0 1 0 0 0 1 1 0
1 0 1 1 0 0 0 0
3,Alice
3,Bob
– Case 1: One column has weight 2, rest have weight $ 1
(i.e., the subsets of [n] represented by the rows intersect)
0 1 1 0 0 1 1 0
1 0 1 1 0 0 0 0
3,Alice
3,Bob
• This problem is called disjn,2
• Later: t-player generalization disjn,t
28-a
New Twist in Applying IC Paradigm
Problem and2:
• Alice holds a # {0, 1}, Bob holds b # {0, 1}
• Bob to output a 4 b
Simple task (A ): and2
Complex task (B): disjn,2 ' combines n copies of and2
29
New Twist in Applying IC Paradigm
Problem and2:
• Alice holds a # {0, 1}, Bob holds b # {0, 1}
• Bob to output a 4 b
Simple task (A ): and2
Complex task (B): disjn,2 ' combines n copies of and2
The key twist:
• Step 2 (Simulation): pad and2 instance to get disjn,2 instance
• Careless random padding will drown out the answer!
• Must ensure “padding” columns j have and2(Xj , Yj) = 0
• Need shared coins to do this ... so must condition on these coins
29-a
IC Paradigm Applied to (1/3)
Inputs: 'X = X1 . . .Xn, 'Y = Y1 . . . Yn; Auxiliary coins: D1 . . .Dn
Each (Xi, Yi, Di) ( µ; M = transcript!(X,Y,Rpub, Rpriv)
µ =
XY ! 00 01 10 11
D = 0 1/2 0 1/2 0
D = 1 1/2 1/2 0 0
1. Define information cost
icostµ(") = I( 'X 'Y : M | 'D,Rpub) (Note: external icost)
2. Simulation Argument
3. Basic IC lower bound (for and2)
30
IC Paradigm Applied to (1/3)
Inputs: 'X = X1 . . .Xn, 'Y = Y1 . . . Yn; Auxiliary coins: D1 . . .Dn
Each (Xi, Yi, Di) ( µ; M = transcript!(X,Y,Rpub, Rpriv)
µ =
XY ! 00 01 10 11
D = 0 1/2 0 1/2 0
D = 1 1/2 1/2 0 0
1. Define information cost
icostµ(") = I( 'X 'Y : M | 'D,Rpub) (Note: external icost)
2. Simulation Argument
Protocols "A,i for and2(X,Y ) simulating "B for disjn,2
Public coins for 'D, private for 'X, 'Y s.t. each (Xj , Yj , Dj) ( µ
3. Basic IC lower bound (for and2)
30-a
IC Paradigm Applied to (1/3)
Inputs: 'X = X1 . . .Xn, 'Y = Y1 . . . Yn; Auxiliary coins: D1 . . .Dn
Each (Xi, Yi, Di) ( µ; M = transcript!(X,Y,Rpub, Rpriv)
µ =
XY ! 00 01 10 11
D = 0 1/2 0 1/2 0
D = 1 1/2 1/2 0 0
1. Define information cost
icostµ(") = I( 'X 'Y : M | 'D,Rpub) (Note: external icost)
2. Simulation Argument
Protocols "A,i for and2(X,Y ) simulating "B for disjn,2
Public coins for 'D, private for 'X, 'Y s.t. each (Xj , Yj , Dj) ( µ
Crucial property: Dj factorizes (Xj , Yj)
Plug in Xi 3 X and Yi 3 Y
3. Basic IC lower bound (for and2)
30-b
IC Paradigm Applied to (2/3)
Each (Xi, Yi, Di) ( µ; M = transcript!(X,Y,Rpub, Rpriv)
µ =
XY ! 00 01 10 11
D = 0 1/2 0 1/2 0
D = 1 1/2 1/2 0 0
2. Simulation Argument
Protocols "A,i for and2(X,Y ) simulating "B for disjn,2
icostµ!n
("B) = I( 'X 'Y : M | 'D) !#n
i=1 I(XiYi : M | 'D)
=#n
i=1 I(XiYi : M | Di, 'D"i) =#n
i=1 icostµ("A,i)
3. Basic IC lower bound (for and2)
31
IC Paradigm Applied to (2/3)
Each (Xi, Yi, Di) ( µ; M = transcript!(X,Y,Rpub, Rpriv)
µ =
XY ! 00 01 10 11
D = 0 1/2 0 1/2 0
D = 1 1/2 1/2 0 0
2. Simulation Argument
Protocols "A,i for and2(X,Y ) simulating "B for disjn,2
icostµ!n
("B) = I( 'X 'Y : M | 'D) !#n
i=1 I(XiYi : M | 'D)
=#n
i=1 I(XiYi : M | Di, 'D"i) =#n
i=1 icostµ("A,i)
3. Basic IC lower bound (for and2)
To prove: % "A solving and2, have icostµ("A) = !(1)
Twist: distrib µ not hard for and2: E(X,Y )%µ[and2(X,Y )] = 0
31-b
IC Paradigm Applied to (3/3)
• Protocol "A for and2; (X,Y,D) ( µ; M = trans!(X,Y,Rpriv)
• Let M (wz) = transcript!(w, z,Rpriv) for w, z # {0, 1}; then
icostµ("A) = I(XY : M | D) = 12 (I(X : M | D = 0) + I(Y : M | D = 1))
= 12 (DJS(M (00),M (10)) + DJS(M (00),M (01)))
! 12 (h
2(M (00),M (10)) + h2(M (00),M (01)))
! 14h
2(M (10),M (01))
32
IC Paradigm Applied to (3/3)
• Protocol "A for and2; (X,Y,D) ( µ; M = trans!(X,Y,Rpriv)
• Let M (wz) = transcript!(w, z,Rpriv) for w, z # {0, 1}; then
icostµ("A) = I(XY : M | D) = 12 (I(X : M | D = 0) + I(Y : M | D = 1))
= 12 (DJS(M (00),M (10)) + DJS(M (00),M (01)))
! 12 (h
2(M (00),M (10)) + h2(M (00),M (01)))
! 14h
2(M (10),M (01)) = 14h
2(M (00),M (11))
by cut-and-paste property, conseq of rectangle property for protocols
• Error $ ! implies
DTV(M(00),M (11)) ! 1, 2! =" h2(M (00),M (11)) ! 1, 2
.!
• Overall: R!(disjn,2) ! 14 (1, 2
.!)n [BarYossef-J-K-S’04]
32-a
Digression: Cut-And-Paste
• Protocol "; inputs w, z
• Let M (wz) = transcript!(w, z,Rpriv) for w, z # {0, 1}
• Rectangle property:
Can “factorize” distrib of M (wz) as f (w) 5 g(z)
This means % a : Pr[M (wz) = a] = f (w)(a)g(z)(a)
• Hellinger distance: h2((, P ), Q) = 1,#
a
&P (a)Q(a)
• Put these together:
h2(M (bc),M (wz)) = h2(M (bz),M (cw))
33
IC Paradigm Applied to (3/3)
• Protocol "A for and2; (X,Y,D) ( µ; M = trans!(X,Y,Rpriv)
• Let M (wz) = transcript!(w, z,Rpriv) for w, z # {0, 1}; then
icostµ("A) = I(XY : M | D) = 12 (I(X : M | D = 0) + I(Y : M | D = 1))
= 12 (DJS(M (00),M (10)) + DJS(M (00),M (01)))
! 12 (h
2(M (00),M (10)) + h2(M (00),M (01)))
! 14h
2(M (10),M (01)) = 14h
2(M (00),M (11))
by cut-and-paste property, conseq of rectangle property for protocols
34
IC Paradigm Applied to (3/3)
• Protocol "A for and2; (X,Y,D) ( µ; M = trans!(X,Y,Rpriv)
• Let M (wz) = transcript!(w, z,Rpriv) for w, z # {0, 1}; then
icostµ("A) = I(XY : M | D) = 12 (I(X : M | D = 0) + I(Y : M | D = 1))
= 12 (DJS(M (00),M (10)) + DJS(M (00),M (01)))
! 12 (h
2(M (00),M (10)) + h2(M (00),M (01)))
! 14h
2(M (10),M (01)) = 14h
2(M (00),M (11))
by cut-and-paste property, conseq of rectangle property for protocols
• Error $ ! implies
DTV(M(00),M (11)) ! 1, 2! =" h2(M (00),M (11)) ! 1, 2
.!
• Overall: R!(disjn,2) ! 14 (1, 2
.!)n [BarYossef-J-K-S’04]
34-b
Applications of
Multi-pass lower bounds for many data stream problems
• Connectivity of n-vertex graphs: !(n) space
Generalization (t players, NIH)
Theorem: R(disjn,t) = !(n/t) [C.-Khot-Sun’03], [Gronemeier’09]
t
Pad
Input to DISJInput to AND n,t
35
Applications of
Multi-pass lower bounds for many data stream problems
• Connectivity of n-vertex graphs: !(n) space
Generalization (t players, NIH)
Theorem: R(disjn,t) = !(n/t) [C.-Khot-Sun’03], [Gronemeier’09]
t
Pad
Input to DISJInput to AND n,t
• Classic data stream problem: frequency moments Fk =#
j fkj
where fj := number of occurrences of ‘j’ in stream
• Approximating Fk: space '#(n1"2/k)
lower bound via disjn,t [Alon-Matias-Szegedy’96]
35-a
Yet More Applications of IC
Sadly, left on cutting room floor ...
• Separation of nondet and randomized CC [Jayram-Kumar-Sivakumar’03]
• CC of read-once-formula problems [Saks-Leonardos’09]
[Jayram-Kopparty-Raghavendra’09]
• Det vs rand decision trees [Jayram-Kumar-Sivakumar’03]
• Increasingly complex data stream lower bounds
[Jayram-Woodru!’09], [Magniez-Mathieu-Nayak’10]
[C.-Cormode-Kondapally-McGregor’10], [Magniez’13]
• Data structure query/update time lower bounds [Patrascu’10]
• Quantum communication... [Jain-Radhakrishnan-Sen]
36
probest
i2
2T[i ]
Index i1
1T[i ]
AlgorithmQuery
Preprocessed DatabaseQuery xT= Table
11110001000011001011001000
poly(d)bits per cell
cellspoly(n)
ALIC
E
BOB
rounds2t
kï11x ... x
x = x x ... x21 n
W
k
xkBobAlice 1 0 0 1 1 1 00 1
Level
Level
2
3
Level 1
x
ALICE BOB
yy
y
3
n
1
2
y
m
m
m
m
m
m
m THANKS!ALICE
d bits
d bits
np
oin
ts
BOB
Input value
Random value
Fixed value
XXX X321 4
Alice inWB Bob inx,Rmsg( ) BWi
W
i = 2b
Bob in
rand+x = b
Alice in A,2W,2A
= f(x,y) w.h.p.
Refereesketch(x) sketch(y)
Alice Bobx y
37