Theorem Proof Proof Continued Proof Continued

Total Page:16

File Type:pdf, Size:1020Kb

Theorem Proof Proof Continued Proof Continued Theorem There exists an L in EXPSPACE without polynomial circuits Lecture 18: Proof L ∃ ∈ EXPSPACE without polynomial circuits Show: ¬ ∃p ∀n ∃C p(n)-size-bounded for L ∩ {0, 1}n continued NP vs. Circuits ∀p ∃n ∀C p(n)-size-bounded n A circuit size lower bound ⇒ C not good for L ∩ {0, 1} Construction of L ∈ EXPSPACE: ∀p ∃n and circuit family C(n) with 1) C(n) ⊇ p(n)-size-bounded Cs with input length n 2) no circuit in C(n) is correct for L ∩ {0, 1}n Lecture 18 : Overview 1 / 14 Lecture 18 : L without polynomial circuits 2 / 14 Proof continued Proof continued For i := 0 to 2n − 1 do: log n C(n) := set of circuits for input length n with code length 6 n Check all C(n) circuits whether they work correctly for n n ⇒ 1) for a suitable n w1 ... wi total := # Remark: |C(n)| 2nlog n+1 6 n Check whether the correct ones also work correctly on wi+1 ad 2) accept := # n n n Let w1 ,..., w2n be a list of all words of length n wi+1 ∈ An,i+1 ⇔ accept 6 total/2 n Form sets ∅ = An,0 ⊆ An,1 ⊆ ... ⊆ An,2n = L ∩ {0, 1} , where This algorithm defines L n either An,i+1 = An,i or An,i+1 = An,i ∪ {wi+1} In each step the number of correct circuits in C(n) is halved n nlog n+1 2n In each step the # of correct circuits in C(n) is halved After 2 steps: #correct circuits 6 2 /2 < 1 for large n ⇒ No correct circuit left Lecture 18 : L without polynomial circuits 3 / 14 Lecture 18 : L without polynomial circuits 4 / 14 NP vs. Circuits Proof continued Remains to be proven: L ∈ EXPSPACE Open: SAT ∈ P/poly or SAT ∈ P/log The following DTM algorithm decides whether w ∈ L, |w| = n: Theorem Generate An,0,..., An,2n and check whether w occurs SAT ∈ P/log ⇒ SAT ∈ P(⇒ P = NP) Space requirements: Proof n 1) current wi+1: n Premise: n ∃L ∈ P, f : → {0, 1}∗ with |f(n)| c · log n and 2) list of An,i elements: 6 n · 2 0 N0 6 3) current circuit: nlog n β ∈ SAT ⇔ <β, f(|β|)> ∈ L0 W.l.o.g.: 4) circuit computation: nlog n β is a 0-1-word ⇒ total space required: 2O(n) 2 Length of β(xi/0) and β(xi/1) equal to n Lecture 18 : L without polynomial circuits 5 / 14 Lecture 18 : NP vs. Circuits 6 / 14 Proof continued Polynomial time algorithm for SAT: Proof continued Input: β, |β| = n If β ∈ SAT then ∃w (= f(n)) such that u eventually For all w with |w| 6 c · log n (all possible values of f(n)) evaluates to 1 u := β If β 6∈ SAT then the algorithm cannot accept while ∃ variable in u (say x) if <u(x/0), w> ∈ L0 then u := u(x/0) Run time: else if <u(x/1), w> ∈ L0 then u := u(x/1) inner loop: polynomial else break outer loop: 2c·log n – also polynomial end-while 2 if u evaluates to 1 then accept end-for; reject Lecture 18 : NP vs. Circuits 7 / 14 Lecture 18 : NP vs. Circuits 8 / 14 A Circuit Size Lower Bound Definition For any fixed function g : N → N, Hg(n) denotes the number of functions f : {0, 1}n → {0, 1} We have seen a recursive function which does not have polynomial circuits with c(f) 6 g(n). What about the average case? # of Boolean functions with n variables is 22n Here we will see that most Boolean functions have n Fraction of Boolean functions with minimal circuit size circuit complexity close to 2 /n bound g(n): 2n Fg(n) := Hg(n)/2 Lecture 18 : A Circuit Size Lower Bound 9 / 14 Lecture 18 : A Circuit Size Lower Bound 10 / 14 Proof continued Lemma Count number of distinct unlabeled graphs Gg(n) corresponding to circuits with n inputs and g(n) gates g(n) If g(n) > n + 1, then Hg(n) 6 (12 · e · g(n)) Those graphs have n + 2 input nodes: {x ,..., x , c , c } Proof 1 n 0 1 g(n) internal nodes: {1, 2, . , g(n)} Hg(n) 6 Each internal node is connected to at most two other nodes #Boolean functions computed by 6 g(n) gates = 2 ; 6 (g(n) + n + 1) possibilities to connect a gate #Boolean functions computed by exactly g(n) gates 2 6 (2 · g(n)) (g(n) > n + 1) (add dummy gates until # g(n) is reached) (counted each graph g(n)! times) 2·g(n) ⇒ Gg(n) 6 (2 · g(n)) /g(n)! Lecture 18 : A Circuit Size Lower Bound 11 / 14 Lecture 18 : A Circuit Size Lower Bound 12 / 14 Proof continued Theorem n Transform these graphs into actual circuits: For every 0 < ε < 1, if g(n) = b(1 − ε) · 2 /nc, then Three choices per node: (¬, ∧, ∨) lim Fg(n) = 0 g(n) 2·g(n) n→ ⇒ Hg(n) 6 3 · (2 · g(n)) /g(n)! g(n) 2·g(n) = 12 · g(n) /g(n)! Proof ∞ Stirling’s formula: Using the Lemma (g(n) > n + 1 for large enough n): n √ n n (1−ε)·2 /n n 1 1 −3 Hg(n) 6 [12 · e · (1 − ε) · 2 /n] n! = 2πn ( ) (1 + + + O(n )), as n → n n e 12n 288n2 = [12 · e · (1 − ε)/n](1−ε)·2 /n · 2(1−ε)·2 n n ∞ 2 Weak version: n! > (n/e) ⇒ Fg(n) = Hg(n)/2 (1−ε)·2n/n −ε·2n g(n) 2·g(n) g(n) g(n) g(n) 6 [12 · e · (1 − ε)/n] · 2 ⇒ Hg(n) 6 12 ·g(n) ·e /g(n) = (12·e·g(n)) 2 →0, n→ →0, n→ 2 Lecture 18 : A Circuit Size Lower Bound 13 / 14 Lecture 18 : A| Circuit Size Lower Bound {z ∞ } | {z }∞ 14 / 14.
Recommended publications
  • Computational Complexity: a Modern Approach
    i Computational Complexity: A Modern Approach Draft of a book: Dated January 2007 Comments welcome! Sanjeev Arora and Boaz Barak Princeton University [email protected] Not to be reproduced or distributed without the authors’ permission This is an Internet draft. Some chapters are more finished than others. References and attributions are very preliminary and we apologize in advance for any omissions (but hope you will nevertheless point them out to us). Please send us bugs, typos, missing references or general comments to [email protected] — Thank You!! DRAFT ii DRAFT Chapter 9 Complexity of counting “It is an empirical fact that for many combinatorial problems the detection of the existence of a solution is easy, yet no computationally efficient method is known for counting their number.... for a variety of problems this phenomenon can be explained.” L. Valiant 1979 The class NP captures the difficulty of finding certificates. However, in many contexts, one is interested not just in a single certificate, but actually counting the number of certificates. This chapter studies #P, (pronounced “sharp p”), a complexity class that captures this notion. Counting problems arise in diverse fields, often in situations having to do with estimations of probability. Examples include statistical estimation, statistical physics, network design, and more. Counting problems are also studied in a field of mathematics called enumerative combinatorics, which tries to obtain closed-form mathematical expressions for counting problems. To give an example, in the 19th century Kirchoff showed how to count the number of spanning trees in a graph using a simple determinant computation. Results in this chapter will show that for many natural counting problems, such efficiently computable expressions are unlikely to exist.
    [Show full text]
  • Lecture 9 1 Interactive Proof Systems/Protocols
    CS 282A/MATH 209A: Foundations of Cryptography Prof. Rafail Ostrovsky Lecture 9 Lecture date: March 7-9, 2005 Scribe: S. Bhattacharyya, R. Deak, P. Mirzadeh 1 Interactive Proof Systems/Protocols 1.1 Introduction The traditional mathematical notion of a proof is a simple passive protocol in which a prover P outputs a complete proof to a verifier V who decides on its validity. The interaction in this traditional sense is minimal and one-way, prover → verifier. The observation has been made that allowing the verifier to interact with the prover can have advantages, for example proving the assertion faster or proving more expressive languages. This extension allows for the idea of interactive proof systems (protocols). The general framework of the interactive proof system (protocol) involves a prover P with an exponential amount of time (computationally unbounded) and a verifier V with a polyno- mial amount of time. Both P and V exchange multiple messages (challenges and responses), usually dependent upon outcomes of fair coin tosses which they may or may not share. It is easy to see that since V is a poly-time machine (PPT), only a polynomial number of messages may be exchanged between the two. P ’s objective is to convince (prove to) the verifier the truth of an assertion, e.g., claimed knowledge of a proof that x ∈ L. V either accepts or rejects the interaction with the P . 1.2 Definition of Interactive Proof Systems An interactive proof system for a language L is a protocol PV for communication between a computationally unbounded (exponential time) machine P and a probabilistic poly-time (PPT) machine V such that the protocol satisfies the properties of completeness and sound- ness.
    [Show full text]
  • Lecture 10: Space Complexity III
    Space Complexity Classes: NL and L Reductions NL-completeness The Relation between NL and coNL A Relation Among the Complexity Classes Lecture 10: Space Complexity III Arijit Bishnu 27.03.2010 Space Complexity Classes: NL and L Reductions NL-completeness The Relation between NL and coNL A Relation Among the Complexity Classes Outline 1 Space Complexity Classes: NL and L 2 Reductions 3 NL-completeness 4 The Relation between NL and coNL 5 A Relation Among the Complexity Classes Space Complexity Classes: NL and L Reductions NL-completeness The Relation between NL and coNL A Relation Among the Complexity Classes Outline 1 Space Complexity Classes: NL and L 2 Reductions 3 NL-completeness 4 The Relation between NL and coNL 5 A Relation Among the Complexity Classes Definition for Recapitulation S c NPSPACE = c>0 NSPACE(n ). The class NPSPACE is an analog of the class NP. Definition L = SPACE(log n). Definition NL = NSPACE(log n). Space Complexity Classes: NL and L Reductions NL-completeness The Relation between NL and coNL A Relation Among the Complexity Classes Space Complexity Classes Definition for Recapitulation S c PSPACE = c>0 SPACE(n ). The class PSPACE is an analog of the class P. Definition L = SPACE(log n). Definition NL = NSPACE(log n). Space Complexity Classes: NL and L Reductions NL-completeness The Relation between NL and coNL A Relation Among the Complexity Classes Space Complexity Classes Definition for Recapitulation S c PSPACE = c>0 SPACE(n ). The class PSPACE is an analog of the class P. Definition for Recapitulation S c NPSPACE = c>0 NSPACE(n ).
    [Show full text]
  • Limits to Parallel Computation: P-Completeness Theory
    Limits to Parallel Computation: P-Completeness Theory RAYMOND GREENLAW University of New Hampshire H. JAMES HOOVER University of Alberta WALTER L. RUZZO University of Washington New York Oxford OXFORD UNIVERSITY PRESS 1995 This book is dedicated to our families, who already know that life is inherently sequential. Preface This book is an introduction to the rapidly growing theory of P- completeness — the branch of complexity theory that focuses on identifying the “hardest” problems in the class P of problems solv- able in polynomial time. P-complete problems are of interest because they all appear to lack highly parallel solutions. That is, algorithm designers have failed to find NC algorithms, feasible highly parallel solutions that take time polynomial in the logarithm of the problem size while using only a polynomial number of processors, for them. Consequently, the promise of parallel computation, namely that ap- plying more processors to a problem can greatly speed its solution, appears to be broken by the entire class of P-complete problems. This state of affairs is succinctly expressed as the following question: Does P equal NC ? Organization of the Material The book is organized into two parts: an introduction to P- completeness theory, and a catalog of P-complete and open prob- lems. The first part of the book is a thorough introduction to the theory of P-completeness. We begin with an informal introduction. Then we discuss the major parallel models of computation, describe the classes NC and P, and present the notions of reducibility and com- pleteness. We subsequently introduce some fundamental P-complete problems, followed by evidence suggesting why NC does not equal P.
    [Show full text]
  • The P Versus Np Problem
    THE P VERSUS NP PROBLEM STEPHEN COOK 1. Statement of the Problem The P versus NP problem is to determine whether every language accepted by some nondeterministic algorithm in polynomial time is also accepted by some (deterministic) algorithm in polynomial time. To define the problem precisely it is necessary to give a formal model of a computer. The standard computer model in computability theory is the Turing machine, introduced by Alan Turing in 1936 [37]. Although the model was introduced before physical computers were built, it nevertheless continues to be accepted as the proper computer model for the purpose of defining the notion of computable function. Informally the class P is the class of decision problems solvable by some algorithm within a number of steps bounded by some fixed polynomial in the length of the input. Turing was not concerned with the efficiency of his machines, rather his concern was whether they can simulate arbitrary algorithms given sufficient time. It turns out, however, Turing machines can generally simulate more efficient computer models (for example, machines equipped with many tapes or an unbounded random access memory) by at most squaring or cubing the computation time. Thus P is a robust class and has equivalent definitions over a large class of computer models. Here we follow standard practice and define the class P in terms of Turing machines. Formally the elements of the class P are languages. Let Σ be a finite alphabet (that is, a finite nonempty set) with at least two elements, and let Σ∗ be the set of finite strings over Σ.
    [Show full text]
  • NP-Completeness
    CMSC 451: Reductions & NP-completeness Slides By: Carl Kingsford Department of Computer Science University of Maryland, College Park Based on Section 8.1 of Algorithm Design by Kleinberg & Tardos. Reductions as tool for hardness We want prove some problems are computationally difficult. As a first step, we settle for relative judgements: Problem X is at least as hard as problem Y To prove such a statement, we reduce problem Y to problem X : If you had a black box that can solve instances of problem X , how can you solve any instance of Y using polynomial number of steps, plus a polynomial number of calls to the black box that solves X ? Polynomial Reductions • If problem Y can be reduced to problem X , we denote this by Y ≤P X . • This means \Y is polynomal-time reducible to X ." • It also means that X is at least as hard as Y because if you can solve X , you can solve Y . • Note: We reduce to the problem we want to show is the harder problem. Call X Because polynomials Call X compose. Polynomial Problems Suppose: • Y ≤P X , and • there is an polynomial time algorithm for X . Then, there is a polynomial time algorithm for Y . Why? Call X Call X Polynomial Problems Suppose: • Y ≤P X , and • there is an polynomial time algorithm for X . Then, there is a polynomial time algorithm for Y . Why? Because polynomials compose. We’ve Seen Reductions Before Examples of Reductions: • Max Bipartite Matching ≤P Max Network Flow. • Image Segmentation ≤P Min-Cut. • Survey Design ≤P Max Network Flow.
    [Show full text]
  • Computational Complexity
    Computational Complexity The Harvard community has made this article openly available. Please share how this access benefits you. Your story matters Citation Vadhan, Salil P. 2011. Computational complexity. In Encyclopedia of Cryptography and Security, second edition, ed. Henk C.A. van Tilborg and Sushil Jajodia. New York: Springer. Published Version http://refworks.springer.com/mrw/index.php?id=2703 Citable link http://nrs.harvard.edu/urn-3:HUL.InstRepos:33907951 Terms of Use This article was downloaded from Harvard University’s DASH repository, and is made available under the terms and conditions applicable to Open Access Policy Articles, as set forth at http:// nrs.harvard.edu/urn-3:HUL.InstRepos:dash.current.terms-of- use#OAP Computational Complexity Salil Vadhan School of Engineering & Applied Sciences Harvard University Synonyms Complexity theory Related concepts and keywords Exponential time; O-notation; One-way function; Polynomial time; Security (Computational, Unconditional); Sub-exponential time; Definition Computational complexity theory is the study of the minimal resources needed to solve computational problems. In particular, it aims to distinguish be- tween those problems that possess efficient algorithms (the \easy" problems) and those that are inherently intractable (the \hard" problems). Thus com- putational complexity provides a foundation for most of modern cryptogra- phy, where the aim is to design cryptosystems that are \easy to use" but \hard to break". (See security (computational, unconditional).) Theory Running Time. The most basic resource studied in computational com- plexity is running time | the number of basic \steps" taken by an algorithm. (Other resources, such as space (i.e., memory usage), are also studied, but they will not be discussed them here.) To make this precise, one needs to fix a model of computation (such as the Turing machine), but here it suffices to informally think of it as the number of \bit operations" when the input is given as a string of 0's and 1's.
    [Show full text]
  • Complexity Theory
    Complexity Theory IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar Outline z Goals z Computation of Problems { Concepts and Definitions z Complexity { Classes and Problems z Polynomial Time Reductions { Examples and Proofs z Summary University at Buffalo Department of Industrial Engineering 2 Goals of Complexity Theory z To provide a method of quantifying problem difficulty in an absolute sense. z To provide a method comparing the relative difficulty of two different problems. z To be able to rigorously define the meaning of efficient algorithm. (e.g. Time complexity analysis of an algorithm). University at Buffalo Department of Industrial Engineering 3 Computation of Problems Concepts and Definitions Problems and Instances A problem or model is an infinite family of instances whose objective function and constraints have a specific structure. An instance is obtained by specifying values for the various problem parameters. Measurement of Difficulty Instance z Running time (Measure the total number of elementary operations). Problem z Best case (No guarantee about the difficulty of a given instance). z Average case (Specifies a probability distribution on the instances). z Worst case (Addresses these problems and is usually easier to analyze). University at Buffalo Department of Industrial Engineering 5 Time Complexity Θ-notation (asymptotic tight bound) fn( ) : there exist positive constants cc12, , and n 0 such that Θ=(())gn 0≤≤≤cg12 ( n ) f ( n ) cg ( n ) for all n ≥ n 0 O-notation (asymptotic upper bound) fn( ) : there
    [Show full text]
  • An Introduction to Computational Complexity Theory Fall 2015 Problem Set #2 V
    15-855: An Introduction to Computational Complexity Theory Fall 2015 Problem Set #2 V. Guruswami & M. Wootters Due on October 8, 2015 (in class, or by email to [email protected]). Instructions: Same as for problem set 1. Pick any 6 problems to solve out of the 8 problems. If you turn in solutions to more than 6 problems, we will take your top 6 scoring problems. 1. \Karp-Lipton variant." If EXP ⊆ P=poly, then EXP = Σ2. Hint: For any L 2 EXP with an exponential time TM M deciding L, using the hypothesis, guess a circuit that computes any cell of the computation tableau of M on input x, and use it to decide whether x 2 L in Σ2. 2. \Circuit lower bounds." S nc (a) Define EXPSPACE = c≥1 SPACE(2 ). Prove that EXPSPACE 6⊆ P=poly, i.e., exponen- tial space does not admit polynomial-sized circuits. (b) Prove that for every fixed integer k ≥ 1, PH 6⊆ SIZE(nk). P P k (c) Strengthen the above result to Σ2 \ Π2 6⊆ SIZE(n ) for any k ≥ 1. (Hint: Karp-Lipton Theorem.) 3. \PH big ) PH small.": Show that PH = PSPACE ) PH = Σk for some finite k 2 N. 4. \Easy decision, hard counting." A Boolean formula is \monotone" if it uses only ANDs and ORs: no negations. Show that #MONOTONE-SAT (counting the number of satisfying assignments to a given monotone formula) is #P-complete. 5. \Toda's theorem for NP via linear codes" Let K = 2n and N = 2n2 , and let us say that a K × NG(n) with 0-1 entries is nice if (n) O(1) • Given i; j, the entry Gi;j can be computed in n time.
    [Show full text]
  • AC0[P] Lower Bounds Against MCSP Via the Coin Problem
    Electronic Colloquium on Computational Complexity, Report No. 18 (2019) AC0[p] Lower Bounds against MCSP via the Coin Problem Alexander Golovnev∗ Rahul Ilangoy Russell Impagliazzoz Harvard University Rutgers University University of California, San Diego Valentine Kabanetsx Antonina Kolokolova{ Avishay Talk Simon Fraser University Memorial University of Newfoundland Stanford University February 18, 2019 Abstract Minimum Circuit Size Problem (MCSP) asks to decide if a given truth table of an n-variate boolean function has circuit complexity less than a given parameter s. We prove that MCSP is hard for constant-depth circuits with mod p gates, for any prime p ≥ 2 (the circuit class AC0[p]). Namely, we show that MCSP requires d-depth AC0[p] circuits of size at least exp(N 0:49=d), where N = 2n is the size of an input truth table of an n-variate boolean function. Our circuit lower bound proof shows that MCSP can solve the coin problem: distinguish uniformly random N- bit strings from those generated using independent samples from a biased random coin which is 1 with probability 1=2 + N −0:49, and 0 otherwise. Solving the coin problem with such parameters is known to require exponentially large AC0[p] circuits. Moreover, this also implies that MAJORITY is computable by a non-uniform AC0 circuit of polynomial size that also has MCSP-oracle gates. The latter has a few other consequences for the complexity of MCSP, e.g., we get that any boolean function in NC1 (i.e., computable by a polynomial-size formula) can also be computed by a non-uniform polynomial-size AC0 circuit with MCSP-oracle gates.
    [Show full text]
  • 18.405J S16 Lecture 3: Circuits and Karp-Lipton
    18.405J/6.841J: Advanced Complexity Theory Spring 2016 Lecture 3: Circuits and Karp-Lipton Scribe: Anonymous Student Prof. Dana Moshkovitz Scribe Date: Fall 2012 1 Overview In the last lecture we examined relativization. We found that a common method (diagonalization) for proving non-inclusions between classes of problems was, alone, insufficient to settle the P versus NP problem. This was due to the existence of two orcales: one for which P = NP and another for which P =6 NP . Therefore, in our search for a solution, we must look into the inner workings of computation. In this lecture we will examine the role of Boolean Circuits in complexity theory. We will define the class P=poly based on the circuit model of computation. We will go on to give a weak circuit lower bound and prove the Karp-Lipton Theorem. 2 Boolean Circuits Turing Machines are, strange as it may sound, a relatively high level programming language. Because we found that diagonalization alone is not sufficient to settle the P versus NP problem, we want to look at a lower level model of computation. It may, for example, be easier to work at the bit level. To this end, we examine boolean circuits. Note that any function f : f0; 1gn ! f0; 1g is expressible as a boolean circuit. 2.1 Definitions Definition 1. Let T : N ! N.A T -size circuit family is a sequence fCng such that for all n, Cn is a boolean circuit of size (in, say, gates) at most T (n). SIZE(T ) is the class of languages with T -size circuits.
    [Show full text]
  • The Complexity of Equivalent Classes Frank Vega
    The complexity of equivalent classes Frank Vega To cite this version: Frank Vega. The complexity of equivalent classes. 2016. hal-01302609v2 HAL Id: hal-01302609 https://hal.archives-ouvertes.fr/hal-01302609v2 Preprint submitted on 16 Apr 2016 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. THE COMPLEXITY OF EQUIVALENT CLASSES FRANK VEGA Abstract. We consider two new complexity classes that are called equivalent- P and equivalent-UP which have a close relation to the P versus NP problem. The class equivalent-P contains those languages that are ordered-pairs of in- stances of two specific problems in P, such that the elements of each ordered- pair have the same solution, which means, the same certificate. The class equivalent-UP has almost the same definition, but in each case we define the pair of languages explicitly in UP. In addition, we define the class double-NP as the set of languages that contain each instance of another language in NP, but in a double way, that is, in form of a pair with two identical instances. We demonstrate that double-NP is a subset of equivalent-P.
    [Show full text]