UmansComplexity Theory Lectures
Lecture 17: Natural Proofs
2
Approaches to open problems
• Almost all major open problems we have seen entail proving lower bounds – P ≠ NP - P = BPP *– L ≠ P - NP = AM *– P ≠ PSPACE– NC proper– BPP ≠ EXP– PH proper– EXP * P/poly
• we know circuit lower bounds imply derandomization
• more difficult (and recent): derandomization implies circuit lower bounds!
3
Approaches to open problems
• two natural approaches– simulation + diagonalization (uniform)
– circuit lower bounds (non-uniform)
• no success for either approach as applied to date
Why?
4
Approaches to open problems
in a precise, formal sense these approaches are
too powerful !
• if they could be used to resolve major open problems, a side effect would be:– proving something that is false, or– proving something that is believed to be false
5
Circuit lower bounds
• Relativizing techniques are out…
• but most circuit lower bound techniques do not relativize
• exponential circuit lower bounds known for weak models:– e.g. constant-depth poly-size circuits
• But, utter failure (so far) for more general models. Why?
6
Natural Proofs• Razborov and Rudich defined the following “natural” format
for circuit lower bounds:– identify property P of functions f:{0,1}* {0,1} – P = n Pn is a natural property if:
• (useful) n fn Pn implies f does not have poly-size circuits [i.e. fn Pn implies circuit size >> poly(n)]
• (constructive) can decide “fn Pn?” in poly time given the truth table of fn
• (large) at least (½)O(n) fraction of all 22n functions on n bits are in Pn
– show some function family g = {gn} is in Pn
All known circuit lower bound techniques are natural for a suitably parameterized version of the definition
7
Definition of a One-Way-Permutation
• A One-Way-Permutation 2n-OWF:– Is a function fk:{0,1}k → {0,1}k
that is computed by a polynomial size circuit family, but not invertible by any 2k size circuit family.
Example: factoring believed to be 2n-OWF
8
Natural ProofsNatural Proof Theorem (RR): if there is a 2n-OWF, then
there is no natural property P.- General version of Natural Proof Theorem also rules out natural
properties useful for proving many other separations, under similar cryptographic assumptions
Converse of Natural Proof Theorem (RR):
If there is a natural property P then there is no 2n-OWF.
9
Natural Proofs
• Proof:– Main Idea: A Natural Property Pn can
efficiently distinguish
pseudorandom functions
from
truly random functions– but cryptographic assumption implies
existence of pseudorandom functions for which this is impossible
10
Proof (continued)• Recall:
– Assuming there is a 2n-OWF: A One-Way-Permutation
fk:{0,1}k → {0,1}k
that is not invertible by 2k size circuits,
• Then we can construct a Pseudo Random Generator (PRG) G:{0,1}k → {0,1}2k
– no circuit C of size s = 2kfor which
|Prx[C(G(x)) = 1] – Prz[C(z) = 1]| > 1/s
(BMY construction with slightly modified parameters)
11
Proof (continued)
• Think of G as G:{0,1}k → {0,1}k X {0,1}k
G(x) = (y1, y2)
• Graphically:
G
x
y1 y2
12
Proof (continued)
• A function F:{0,1}k → {0,1}2n
(set n = k x
G G
G
G
G G
G
G G G G G G G G
height n-log k
Given x, i, can compute i-th output bit in time npoly(k)
Each x defines a poly-time
computable function fx
13
Proof (continued)
• Useful: fx in poly-time : for all x: fx Pn
• Constructive: exists (truth table) circuit T:{0,1}2n → {0,1} of size 2O(n) for which
|Prx[T(fx) = 1] – Prg[T(g) = 1]| ≥ (1/2)O(n)
• Large: Prg[g Pn] ≥ (1/2)O(n) for random fns g on n bits.
Use Natural Proof Properties:
(useful) n fn Pn f does not have poly-size circuits
(constructive) “fn Pn?” in poly time given truth table of fn
(large) at least (½)O(n) fraction of all 22n fns. on n-bits in Pn
14
Proof (continued)
• |Prx[T(f
x) = 1] – Prg[T(g) = 1]| ≥ (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Distribution D0: pick roots of red subtrees independently from {0,1}k
15
Proof (continued)
• |Prx[T(f
x) = 1] – Prg[T(g) = 1]| ≥ (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Distribution D1: pick roots of red subtrees independently from {0,1}k
16
Proof (continued)
• |Prx[T(f
x) = 1] – Prg[T(g) = 1]| ≥ (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Distribution D2: pick roots of red subtrees independently from {0,1}k
17
Proof (continued)
• |Prx[T(f
x) = 1] – Prg[T(g) = 1]| ≥ (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Distribution D3: pick roots of red subtrees independently from {0,1}k
18
Proof (continued)
• |Prx[T(f
x) = 1] – Prg[T(g) = 1]| ≥ (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Distribution D4: pick roots of red subtrees independently from {0,1}k
19
Proof (continued)
• |Prx[T(f
x) = 1] – Prg[T(g) = 1]| ≥ (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Distribution D5: pick roots of red subtrees independently from {0,1}k
20
Proof (continued)
• |Prx[T(f
x) = 1] – Prg[T(g) = 1]| ≥ (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Distribution D6: pick roots of red subtrees independently from {0,1}k
21
Proof (continued)
• |Prx[T(f
x) = 1] – Prg[T(g) = 1]| ≥ (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Distribution D7: pick roots of red subtrees independently from {0,1}k
22
Proof (continued)
• |Prx[T(f
x) = 1] – Prg[T(g) = 1]| ≥ (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Distribution D2n/k-1: pick roots of red subtrees independently from {0,1}k
23
Proof (continued)
– For some i: |Pr[T(Di) = 1] - Pr[T(Di-1) = 1]| ≥ (1/2)O(n)/2n = (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
24
Proof (continued)
– For some i: |Pr[T(Di) = 1] - Pr[T(Di-1) = 1]| ≥ (1/2)O(n)/2n = (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Fix values at roots of all other subtrees to preserve difference
25
Proof (continued)
– For some i: |Pr[T( Di’ ) = 1] - Pr[T( Di-1’ ) = 1]| ≥ (1/2)O(n)/2n = (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Di’: distribution Di after fixing
26
Proof (continued)
– For some i: |Pr[T( Di’ ) = 1] - Pr[T( Di-1’ ) = 1]| ≥ (1/2)O(n)/2n = (1/2)O(n)
x
G G
G
G
G G
G
G G G G G G G G
Di-1’: distribution Di-1 after fixing
27
Proof (continued)
|Pr[T( Di’ ) = 1] - Pr[T( Di-1’ ) = 1]| ≥ (1/2)O(n)/2n = (1/2)O(n)
– C(y1,y2)=T( )
|Prx[C(G(x)) = 1] - Pry1, y2[C(y1, y2) = 1]| ≥ (1/2)O(n)
y1 y2
T( Di’ ) T( Di-1’ )
G G
G
G
G G G G G G G G
28
Proof (continued)
– recall: no circuit C of size s = 2kfor which:
|Prx[C(G(x)) = 1] – Pry1, y2[C(y1, y2) = 1]| > 1/s
– we have C of size 2O(n) for which:|Prx[C(G(x)) = 1] - Pry1, y2
[C(y1, y2) = 1]| ≥ (1/2)O(n)
– with n = k, arbitrary constant– set such that 2O(n) < s– contradiction.
29
Natural ProofsConclusion:•To prove circuit lower bounds, we must either:
– Violate largeness: seize upon an incredibly specific feature of hard functions (one not possessed by a random function ! )
– Violate constructivity: identify a feature of hard functions that cannot be computed efficiently from the truth table
•no “non-natural property” known for all but the very weakest models…
30
“We do not conclude that researchers should give up on proving serious lower bounds…”Quite the contrary, by classifying a large number of techniques that are unable to do the job, we hope to focus research in a more fruitful direction. Pessimism will only be warranted if a long period of time passes without the discovery of a non-naturalizing lower bound proof.”
Rudich and Razborov
1994
31
“We do not conclude that researchers should give up on proving serious lower bounds. Quite the contrary, by classifying a large number of techniques that are unable to do the job, we hope to focus research in a more fruitful direction…” Pessimism will only be warranted if a long period of time passes without the discovery of a non-naturalizing lower bound proof.”
Rudich and Razborov
1994
32
“We do not conclude that researchers should give up on proving serious lower bounds. Quite the contrary, by classifying a large number of techniques that are unable to do the job, we hope to focus research in a more fruitful direction. Pessimism will only be warranted if a long period of time passes without the discovery of a non-naturalizing lower bound proof.”
Rudich and Razborov
1994
33
Moral
• To resolve central questions:– avoid relativizing arguments
• use PCP theorem and related results• focus on circuits, etc…
– avoid constructive arguments– avoid arguments that yield lower bounds for
random functions