Preserving Randomness for Adaptive Algorithms
William M. Hoza Adam R. Klivans May 25, 2017 Caltech Theory of Computing Seminar
1 / 20
Preserving Randomness for Adaptive Algorithms Adam R. Klivans - - PowerPoint PPT Presentation
Preserving Randomness for Adaptive Algorithms Adam R. Klivans William M. Hoza May 25, 2017 Caltech Theory of Computing Seminar 1 / 20 Randomized estimation algorithms Algorithm Est( C ) estimates some value ( C ) R d 2 / 20
1 / 20
2 / 20
2 / 20
2 / 20
◮ C is a Boolean circuit 2 / 20
◮ C is a Boolean circuit ◮ µ(C)
def
2 / 20
◮ C is a Boolean circuit ◮ µ(C)
def
◮ Est(C) evaluates C at several randomly chosen points 2 / 20
3 / 20
3 / 20
3 / 20
3 / 20
3 / 20
3 / 20
◮ Slight increases in error, failure probability 3 / 20
4 / 20
4 / 20
4 / 20
4 / 20
4 / 20
4 / 20
4 / 20
5 / 20
5 / 20
5 / 20
5 / 20
5 / 20
5 / 20
5 / 20
5 / 20
5 / 20
6 / 20
6 / 20
6 / 20
7 / 20
7 / 20
7 / 20
7 / 20
7 / 20
7 / 20
7 / 20
7 / 20
8 / 20
◮ Querying fi corresponds to executing Est 8 / 20
◮ Querying fi corresponds to executing Est ◮ The owner does not see Xi 8 / 20
9 / 20
◮ Error ε′ ≤ O(ε)
9 / 20
◮ Error ε′ ≤ O(ε)
◮ Failure probability δ′ ≤ 2k · δ
9 / 20
◮ Error ε′ ≤ O(ε)
◮ Failure probability δ′ ≤ 2k · δ
◮ Randomness n
9 / 20
◮ Error ε′ ≤ O(ε)
◮ Failure probability δ′ ≤ 2k · δ
◮ Randomness n
9 / 20
◮ Error ε′ ≤ O(ε)
◮ Failure probability δ′ ≤ 2k · δ
◮ Randomness n
◮ Pick X ∈ {0, 1}n uniformly at random once 9 / 20
◮ Error ε′ ≤ O(ε)
◮ Failure probability δ′ ≤ 2k · δ
◮ Randomness n
◮ Pick X ∈ {0, 1}n uniformly at random once ◮ For i = 1 to k: Return fi(X), rounded to multiple of 2ε 9 / 20
10 / 20
10 / 20
10 / 20
10 / 20
10 / 20
10 / 20
10 / 20
10 / 20
10 / 20
10 / 20
10 / 20
11 / 20
◮ Error ε′ ≤ O(εd) 11 / 20
◮ Error ε′ ≤ O(εd) ◮ Failure probability δ′ ≤ kδ + γ 11 / 20
◮ Error ε′ ≤ O(εd) ◮ Failure probability δ′ ≤ kδ + γ ◮ # random bits n + O(k log(d + 1) + log k log(1/γ)) 11 / 20
12 / 20
12 / 20
◮ Obtain Wi = fi(Xi) 12 / 20
◮ Obtain Wi = fi(Xi) ◮ Shift and round Wi to determine output Yi 12 / 20
◮ Obtain Wi = fi(Xi) ◮ Shift and round Wi to determine output Yi
12 / 20
◮ Obtain Wi = fi(Xi) ◮ Shift and round Wi to determine output Yi
12 / 20
13 / 20
13 / 20
13 / 20
13 / 20
13 / 20
13 / 20
13 / 20
13 / 20
14 / 20
14 / 20
14 / 20
14 / 20
14 / 20
14 / 20
15 / 20
15 / 20
◮ A transcript (f1, Y1, f2, Y2, . . . , fk, Yk) 15 / 20
◮ A transcript (f1, Y1, f2, Y2, . . . , fk, Yk) ◮ A path P through tree 15 / 20
◮ A transcript (f1, Y1, f2, Y2, . . . , fk, Yk) ◮ A path P through tree
15 / 20
◮ A transcript (f1, Y1, f2, Y2, . . . , fk, Yk) ◮ A path P through tree
15 / 20
16 / 20
16 / 20
16 / 20
16 / 20
16 / 20
17 / 20
17 / 20
17 / 20
17 / 20
18 / 20
18 / 20
18 / 20
◮ Runtime poly(n, 1/θ, log(1/δ))
18 / 20
◮ Runtime poly(n, 1/θ, log(1/δ))
◮ O(n + log n log(1/δ)) random bits (independent of θ!) 18 / 20
◮ Runtime poly(n, 1/θ, log(1/δ))
◮ O(n + log n log(1/δ)) random bits (independent of θ!)
18 / 20
◮ Runtime poly(n, 1/θ, log(1/δ))
◮ O(n + log n log(1/δ)) random bits (independent of θ!)
18 / 20
◮ Runtime poly(n, 1/θ, log(1/δ))
◮ O(n + log n log(1/δ)) random bits (independent of θ!)
◮ Standard Goldreich-Levin algorithm 18 / 20
◮ Runtime poly(n, 1/θ, log(1/δ))
◮ O(n + log n log(1/δ)) random bits (independent of θ!)
◮ Standard Goldreich-Levin algorithm ◮ Our steward with d = poly(1/θ) 18 / 20
◮ Runtime poly(n, 1/θ, log(1/δ))
◮ O(n + log n log(1/δ)) random bits (independent of θ!)
◮ Standard Goldreich-Levin algorithm ◮ Our steward with d = poly(1/θ) ◮ Goldreich-Wigderson sampler 18 / 20
19 / 20
19 / 20
19 / 20
19 / 20
19 / 20
19 / 20
19 / 20
19 / 20
19 / 20
20 / 20
20 / 20
20 / 20