How to not prove π β ππ A Brief Introduction to Natural Proofs & Data Complexity Shubhang Kulkarni and Ryan Davis
Part I : Introduction to Natural Proofs Shubhang Kulkarni βThe obstacle is, roughly, that a large class of approaches to circuit lower bounds must prove moreβ - R. Lipton
Why This Talk is Important Lowerbounds β‘ Computational Intractability of a problem Modern day e-commerce heavily relies on certain lower bounds being true. Its natural to ask what makes lower bound questions so difficult β’ π β ππ ? β’ π β ππππ΅π·πΉ ? β’ π β ππ· ?
Algorithms vs Complexity Theory Algorithms Theory β β’ When can we solve problems quickly? β’ Whatβs an efficient way to solve the problem? Complexity Theory β’ When can problems not be solved efficiently? β β’ How can we prove that a problem is not easy? The algorithm designers and the complexity theorists have opposing goals.
Complexity Barriers It turns out we have some formal understanding of why lower bounds are so tough to prove (at the moment) Any lower bound proof must overcome complexity barriers These barriers are βmeta-theoremsβ about proofs β’ Relativization β’ Natural Proofs Baker, Gill, Solovay β’ Algebrization β Oracles A, B such that π - = ππ - but π / β ππ /
Simple Notation β’ 0,1 3 βΆ n-bit binary strings (input x) Also denoted by πΆ 3 3 : function π: 0,1 3 β {0,1} β’ π β’ πΊ 3 βΆ set of all functions π 3 β’ π· 3 : combinatorial property of π 3
Combinatorial Properties I π· 3 can be thought of as a subset of πΊ 3 of the functions possessing the property β’ π 3 βsatisfiesβ π· 3 β π 3 β π· 3 β’ Also denoted as: π· 3 π 3 = 1 if π 3 βsatisfiesβ π· 3 , = 0 otherwise
Combinatorial Properties II Actually for any subset of π· 3 π· 3 is Natural if it satisfies (1) Constructivity There is a polynomial algorithm to determine whether π 3 β π· 3 (2) Largeness A random π 3 has a βnon-negligibleβ chance of satisfying π· 3 Formally, |π· 3 | β₯ 2 BC 3 β |πΊ 3 | Terminology A combinatorial property is useful against π /FGHI if the circuit sizes of all functions satisfying π· 3 are super-polynomial.
Natural Proof βA proof that some function does not have a polynomial size circuit is natural against π /FGHI if the proof contains the definition of natural combinatorial properties useful against π /FGHI .β Want to prove { π 3 } has no polynomial circuit β’ Identify property π· 3 such that β’ The proof shows that βπ 3 β π· 3 , π 3 is βhardβ for circuits to compute β’ π 3 β π· 3
The NaΓ―ve Approach to P β NP β’ Define mathematically the notion of βdiscrepancyβ or βscatterβ of boolean function values i.e. Define a π· 3 s.t. π· 3 is true for functions of βhigh discrepancyβ β’ Show (inductively) that poly circuits can only compute low discrepancy functions i.e. π· 3 is useful as π 3 β π· 3 cannot be computed by poly circuit β’ Show that SAT has high discrepancy i.e. SAT β π· 3 β’ π β π /FGHI implies π β ππ
The Breakthrough Results β’ βOur main theorem β¦ β¦ gives evidence that no proof strategy along these lines can ever succeedβ β Razborov, Rudich β 96 β’ βAny Large and Constructive π· 3 useful against π /FGHI provides a statistical test that can be used to break any polytime psuedo-random generator.β β’ Violates a widely held belief that psuedo-random generators of hardness 2 K (π > 0) exist.
Psuedo-Random Generators f(π¦ 3 ) πΎ(π π ) Ξ¦(π¦ R ) π, π π {0,1} π, π R π R π 3 β’ π π = 1 : Probability that π(x \ ) = 1 β’ π π ] = 1 : Probability that π Ξ¦ x ^ = 1 π π = 1 | π¦ 3 β Ξ¦(π R ) Ξ¦ is a M-hard psuedo-random generator if π π β π(π ] ) β€ π Bc i.e. π π β π π ]
The Entire Picture (so farβ¦) Integer One Way Discrete Log Empirical Evidence Factorization Functions Exist Hardness Hardness Psuedo-Random No Natural Proofs Generators Exist πΈ β πΆπΈ
Implications of no Natural Proofs Recall the definition of Natural Proofs Any property used by a non-natural lower bound proof must fall into one of: β’ Violates Largeness β’ Probability that a random function has the property is small β’ Property is shared by very few β’ Violates Constructability β’ Very complicated property
Takeaways Decoding the literature: Notation Description Size of Distribution Type 0,1 3 2 3 Input Set Set 2 f g Functions on 0,1 3 Set of Sets πΊ 3 2 f hg π· 3 Properties of πΊ Set of Sets of Sets 3 A random efficiently computable function is very hard to distinguish from a random function β’ Main Proof Idea [RR97] β’ The rubik's cube β’ 3 bit scramblersβ composition
End of Part I Shubhang Kulkarni βThe general problem of mathematically proving computational lower bounds is a mysteryβ - Ryan Williams, Thinking Algorithmically About Impossibility
Part II : Introduction to Data Complexity Ryan Davis β[We] will have to develop new methods to make a serious dent in major lower bound problems.β - Ryan Williams, Thinking Algorithmically About Impossibility
Why use Data Complexity? Closely related to program verification (testing) Carefully chosen input/output pairs to determine correctness When does it suffice to use a small number of test cases? What if we know something about the program, such as its size?
Defining Data Complexity Decision Problem Potential Solution Assume a known function π: {0,1} β β {0,1} Given a circuit π· of size π‘ , we wish to determine if π· computes π Data complexity (w.r.t. π‘ ) β minimum number of input/output examples to determine if π· computes π βGray-boxβ testing where π‘ is side information
Overarching Question The data complexity for size π‘ circuits is trivially 2 C(k) (Include all input/output examples up to length π‘ ) We are interested to know: For what functions π can the data complexity be much smaller?
Data Complexity and Circuit Complexity The data complexity of testing π is βsmallβ If and only if The circuit complexity of π is βlargeβ βThe theory of circuits becomes interesting when we restrict the complexities of the circuits; The theory of test suites becomes similarly interesting when restricting the amount of necessary data.β - Chapman, B., Williams, R.
The Circuit-Input Game β’ Circuit player has a set π· of all circuits of size π‘ β’ Size of π· is π· = 2 C(k lmn k) 2 C(k lmn k) β’ Input player has a set π½ of all inputs of length π β’ Size of π½ is |π½| = 2 3 β’ Payoff matrix π with 2 3 rows and 2 C(k lmn k) columns 2 3 π β’ π π, π¦ = 0 if π π¦ = π(π¦) β’ π π, π¦ = 1 if π π¦ β π(π¦) Payoff goes to the input player
Approximate Optimal Strategies Theorem 2.1 (roughly) Circuit player has a good strategy! π β₯ π u π 1. There exists a π -size distribution π (strategy) on π· such that for all π¦ β π½ , the circuit player has a good chance π β π will satisfy π π¦ = π π¦ β β₯ π u π‘ log π‘ 2. There exists a β -size distribution π (strategy) on π½ such that for all π β π· , the input player has a good chance π¦ β π will satisfy π π¦ β π π¦ Input player has a good strategy!
Data Complexity Consequence Theorem 2.2 (roughly) Let π + π β€ 1 β π π β₯ π u π 1. There exists a π -size set of circuits π β π· such that for all π¦ β π½ , π π¦ = π π¦ for more than a π -fraction of circuits π β π . β β₯ π u π‘ log π‘ 2. There exists a β -size set of inputs π β π½ such that for all π β π· , π π¦ β π π¦ for more than a π -fraction of inputs π¦ β π .
Data Complexity and Circuit Complexity The data complexity of testing π is βsmallβ If and only if The circuit complexity of π is βlargeβ
Data Complexity and Circuit Complexity Theorem 1.2: Let function π: {0,1} β β {0,1} and π(π) β₯ 2π for all π Hard to test! 1. If π is in SIZE ( π(π) ), the data complexity of testing size- π‘ circuits for π is at least 2 }(~ β’β¬ k ) Easy to test! 2. If π is not in SIZE ( π u π(π) ), the data complexity of testing size- π‘ circuits for π is at most π(2 ~ β’β¬ k + π Bc π‘ u π‘ f log π‘)
Proof Intuition Replace data complexity with time complexity When π has large circuit complexity, we can quickly test circuits for π Suppose π(π) is a lower bound on circuit complexity of π 3 Given a size- π‘ circuit, we may have to try all 2 3 < 2 ~ β’β¬ (k) inputs As circuit complexity π(π) increases, time complexity 2 ~ β’β¬ (k) decreases Time complexity with respect to circuit size π‘
Proof Idea Pt. 1 If f is in SIZE ( π(π) ), the data complexity of testing size- π‘ circuits for π is at least 2 }(~ β’β¬ k ) 1. Suppose a circuit π of size π(π) that computes π 2. Construct a circuit π Ζ of size πβ(π) = π(π) + π that agrees with π on all inputs except π¦ 3. Thus, for any π -input circuit of size πβ π we must include all inputs of length π β₯ π Bc π‘ in a test set for π
Recommend
More recommend