Lecture 10: Boolean Circuits (cont.)

Similar documents
Notes for Lecture 3... x 4

CSC 5170: Theory of Computational Complexity Lecture 9 The Chinese University of Hong Kong 15 March 2010

1 Circuit Complexity. CS 6743 Lecture 15 1 Fall Definitions

Lecture 3 (Notes) 1. The book Computational Complexity: A Modern Approach by Sanjeev Arora and Boaz Barak;

Umans Complexity Theory Lectures

The Cook-Levin Theorem

Complete problems for classes in PH, The Polynomial-Time Hierarchy (PH) oracle is like a subroutine, or function in

Notes on Computer Theory Last updated: November, Circuits

The Polynomial Hierarchy

Lecture 3: Circuits and Karp-Lipton. Scribe: Anonymous Student Prof. Dana Moshkovitz

CS154, Lecture 15: Cook-Levin Theorem SAT, 3SAT

Lecture 6: Oracle TMs, Diagonalization Limits, Space Complexity

Lecture 17: Cook-Levin Theorem, NP-Complete Problems

Lecture 3: Nondeterminism, NP, and NP-completeness

CSE200: Computability and complexity Space Complexity

Lecture Notes Each circuit agrees with M on inputs of length equal to its index, i.e. n, x {0, 1} n, C n (x) = M(x).

2 P vs. NP and Diagonalization

Lecture 7: The Polynomial-Time Hierarchy. 1 Nondeterministic Space is Closed under Complement

Lecture 22: PSPACE

1 PSPACE-Completeness

Computational Complexity: A Modern Approach. Draft of a book: Dated January 2007 Comments welcome!

CS154, Lecture 13: P vs NP

Circuits. Lecture 11 Uniform Circuit Complexity

Notes for Lecture 3... x 4

CS294: Pseudorandomness and Combinatorial Constructions September 13, Notes for Lecture 5

Notes on Complexity Theory Last updated: October, Lecture 6

Lecture 7: Polynomial time hierarchy

6.841/18.405J: Advanced Complexity Wednesday, February 12, Lecture Lecture 3

CS151 Complexity Theory

Lecture 9: Polynomial-Time Hierarchy, Time-Space Tradeoffs

Lecture 8. MINDNF = {(φ, k) φ is a CNF expression and DNF expression ψ s.t. ψ k and ψ is equivalent to φ}

Space is a computation resource. Unlike time it can be reused. Computational Complexity, by Fu Yuxi Space Complexity 1 / 44

A Note on the Karp-Lipton Collapse for the Exponential Hierarchy

1 From previous lectures

Complexity Theory. Jörg Kreiker. Summer term Chair for Theoretical Computer Science Prof. Esparza TU München

Polynomial Hierarchy

CS154, Lecture 13: P vs NP

Lecture 16: Time Complexity and P vs NP

Lecture 4. 1 Circuit Complexity. Notes on Complexity Theory: Fall 2005 Last updated: September, Jonathan Katz

Essential facts about NP-completeness:

Lecture 3: Reductions and Completeness

Umans Complexity Theory Lectures

Exponential time vs probabilistic polynomial time

Kernel-Size Lower Bounds. The Evidence from Complexity Theory

Lecture 18: PCP Theorem and Hardness of Approximation I

Polynomial time reduction and NP-completeness. Exploring some time complexity limits of polynomial time algorithmic solutions

Lecture 2. 1 More N P-Compete Languages. Notes on Complexity Theory: Fall 2005 Last updated: September, Jonathan Katz

NP Completeness. Richard Karp, 1972.

JASS 06 Report Summary. Circuit Complexity. Konstantin S. Ushakov. May 14, 2006

6.045: Automata, Computability, and Complexity (GITCS) Class 15 Nancy Lynch

SOLUTION: SOLUTION: SOLUTION:

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.

COMPLEXITY THEORY. PSPACE = SPACE(n k ) k N. NPSPACE = NSPACE(n k ) 10/30/2012. Space Complexity: Savitch's Theorem and PSPACE- Completeness

CSCI3390-Lecture 16: NP-completeness

U.C. Berkeley CS278: Computational Complexity Professor Luca Trevisan August 30, Notes for Lecture 1

Interactive Proofs 1

Intro to Theory of Computation

TIME COMPLEXITY AND POLYNOMIAL TIME; NON DETERMINISTIC TURING MACHINES AND NP. THURSDAY Mar 20

Welcome to... Problem Analysis and Complexity Theory , 3 VU

Boolean circuits. Lecture Definitions

CS 151 Complexity Theory Spring Solution Set 5

CSE 135: Introduction to Theory of Computation NP-completeness

NP and Computational Intractability

Arthur and Merlin as Oracles

Lecture 8: Alternatation. 1 Alternate Characterizations of the Polynomial Hierarchy

an efficient procedure for the decision problem. We illustrate this phenomenon for the Satisfiability problem.

CS21 Decidability and Tractability

Non-Deterministic Time

Lecture 2 (Notes) 1. The book Computational Complexity: A Modern Approach by Sanjeev Arora and Boaz Barak;

Lecture 1: Course Overview and Turing machine complexity

NP-Completeness. A language B is NP-complete iff B NP. This property means B is NP hard

Finish K-Complexity, Start Time Complexity

Non-Approximability Results (2 nd part) 1/19

CS21 Decidability and Tractability

Lecture 4 : Quest for Structure in Counting Problems

CSE 555 HW 5 SAMPLE SOLUTION. Question 1.

Lecture 12: Randomness Continued

Instance Compression for the Polynomial Hierarchy and Beyond

MTAT Complexity Theory October 20th-21st, Lecture 7

SAT, NP, NP-Completeness

Theory of Computation CS3102 Spring 2014 A tale of computers, math, problem solving, life, love and tragic death

CS154, Lecture 17: conp, Oracles again, Space Complexity

CS151 Complexity Theory. Lecture 1 April 3, 2017

Time-Space Tradeoffs for SAT

15.1 Proof of the Cook-Levin Theorem: SAT is NP-complete

CSC 2429 Approaches to the P vs. NP Question and Related Complexity Questions Lecture 2: Switching Lemma, AC 0 Circuit Lower Bounds

Algorithm Design and Analysis

1 Randomized Computation

Intro to Theory of Computation

Introduction to Complexity Theory. Bernhard Häupler. May 2, 2006

Lecture 21: Algebraic Computation Models

Stanford University CS254: Computational Complexity Handout 8 Luca Trevisan 4/21/2010

Lecture 25: Cook s Theorem (1997) Steven Skiena. skiena

-bit integers are all in ThC. Th The following problems are complete for PSPACE NPSPACE ATIME QSAT, GEOGRAPHY, SUCCINCT REACH.

CSE 4111/5111/6111 Computability Jeff Edmonds Assignment 6: NP & Reductions Due: One week after shown in slides

Definition: Alternating time and space Game Semantics: State of machine determines who

Randomness and non-uniformity

NP-completeness was introduced by Stephen Cook in 1971 in a foundational paper.

Space and Nondeterminism

Transcription:

CSE 200 Computability and Complexity Wednesday, May, 203 Lecture 0: Boolean Circuits (cont.) Instructor: Professor Shachar Lovett Scribe: Dongcai Shen Recap Definition (Boolean circuit) A Boolean circuit on n inputs, is a DAG with n source nodes and one target (sink) node, m internal nodes perform simple computation (AND, OR, NOT). Definition 2 (P/poly) P/poly def = languages L s.t. n, L 0, } n can be computed by a circuit of size n O().}. Theorem 3 P P/poly. 2 Turing Machines with Advice We can give another equivalent definition of P/poly by introducing the TM that takes advice. advice }} Definition 4 (TIME(T (n))/a(n)) A language L TIME(T (n))/ a(n) if M TIME(T (n)) and a sequence α n } n N with α n 0, } a(n) s.t. x L M(x, α x ) = for any x 0, }. Claim 5 P/poly = c,d TIME(n c )/(n d ). Proof ( ) For any language L P/poly. n N, there exists a circuit C n of size n d. We treat C n as an advice to the corresponding TM M. M evaluates input x on C n given as an advice (extra input). The advice def sequence α n } n N = C n } n N is bounded by a(n) def = n d. ( ) Fix a language L TIME(n c )/(n d ). n N, there exists a circuit C n of size n k for some constant k s.t. x L C n (x, α x ) = where x = n. The advice α n is hard-wired to the circuit. This is illustrated in Figure. C n x α x Figure : P/poly c,d TIME(n c )/(n d ) 0-

Remark. Claim 5 explains the reason for naming P/poly: deterministic poly-time taking poly-size advice. Similarly, we can define P/ log, P/c where c stands for constant-sized advice, etc. A natural question arises: Question 6 What can we get from just bit of advice? P/ = c TIME(n c )/. Question 7 Is NP P/poly? This is an open question. We believe the answer is no. 3 The Karp-Lipton Theorem Theorem 8 (Karp-Lipton Theorem []) If NP P/poly then PH = Σ 2. Remark. Note that PH collapses to Σ 2 -complete instead of NP-complete. The theorem is of the style that one thing unlikely implies another thing unlikely. Finally we see that many unlikely things are equivalent. In some sense it s similar to the NP-complete problems. It has a sister-theorem, the Meyer s Theorem, also proved in early 980 s. Theorem 9 (Meyer s Theorem []) If EXP P/poly then EXP = Σ 2. Proof of Theorem 8: Suppose 3-SAT P/poly. So n N, there exists a circuit C n : If φ satisfiable C n (φ) = 0 Otherwise where φ is a 3-CNF on n variables. Also, C n = poly(n). Algorithm: Input 3-CNF φ on n bits, C n s.t. φ(c n (φ)) =. We want to show Σ 2 = PH. It suffices to show Π 2 Σ 2. Let L be a complete language for Π 2. We choose take L = Π 2 SAT def = φ is a 3-CNF : y zφ(y, z)}. The first step is to transform a circuit which merely checks if a circuit is satisfiable, to a circuit that proves this by supplying a satisfying assignment. Claim 0 (Self-reducibility) If n N there exists a circuit C n s.t. φ 3-SAT iff C n (φ) = then there exists a circuit C n s.t. φ 3-SAT iff φ(c n(φ)) = and SIZE(C n) SIZE(C n ) O(). Proof Assume circuit C s.t. C(φ) = iff φ is satisfiable. If φ is satisfiable, discover a satisfying assignment bit-by-bit: 0 C(φ(0, x 2,, x n )) = a = 0 C(φ(a, 0, x 3,, x n )) = a 2 = In general, a i = 0 C(φ(a,, a i, 0, x i+,, x n )) = At the end, φ(a,, a n ) =. The construction of the multi-output circuit C from the single-output circuit C is illustrated in Figure 2. Recall that L Σ 2 means x L y zm(y, z) = where M P; L Π 2 means x L y zm(y, z) = where M P. Once we have Π 2 Σ 2, namely =, we can simplify the QBF in the language definition by switching the positions of and. For example, Π 4 M( ) = M ( ) = M ( ) = M ( ) = M ( ) Σ 2. 0-2

φ SAT a a 2 a n C C(φ) x,, x n C(φ) C(φ) C(φ) a a a 2 a a 2 x 2,, x n x 3 x n a n Figure 2: Self-reducibility: construct C using C as a building block This property is called self-reducibility. Algorithm: Input 3-CNF φ on n bits, check if y z φ(y, z) }} iff C n (φ(y, )) = NP P/poly }} Hence, we have iff φ(y, C n (φ(y, ))) = φ Π 2 SAT iff C n yφ(y, C n(φ(y, ))) = }} in Σ 2 =. Next we prove Theorem 9. The intuitive idea is: EXP P/poly means any exponential-time computation can be done by a specific poly-size circuit C n where n is the input size. Then, our goal is to prove that this computation also fits in Σ 2 = x : y : y x c z : z x d M(x, y, z) = } where M P. Recall Cook-Levin Theorem s proof. An exponential-size computation is hard to check from the outset. But we can make use of the for all quantifier in Σ 2. Quantifier comes in handy to check all local places in the exponential-size computation. Meanwhile, the quantifier helps us by guessing the circuit C n. C n is guaranteed to exist when L EXP P/poly. Proof of Theorem 9: Fix a language L EXP. We need to show L Σ 2. Suppose L is computable by a -tape TM M TIME(2 nc ). W.l.o.g., M s alphabet Σ = 0, }. Let L M def = (x, i, j) : running M on input x L in time step i has a configuration whose j-th bit is.} where in the tuple (x, i, j), x 0, } n, i 2 nc denotes M s steps, and j 2 nc is the index of M s i-th configuration. Note that we can describe (x, i, j) using poly(n) bits. Clearly, L M EXP P/poly. So, there is a poly-size circuit C s.t. (x, i, j) L M iff C(x, i, j) = Lets come back to L. For any x L, what do we have from M s computation? We need to show M(x) at time N = 2 nc entered the accepting state. Namely, M(x) =. x L iff C s.t. C(x, i, j) = i, j [2 nc ]. as shown in Figure 3. Note that x, i, and j can be represented in poly-size. However, how can we trust the circuit C? The answer is that, similar to the Cook-Levin theorem, computation is local and can be verified by a collection of local tests (e.g. a CNF). In our case the CNF size is exponential, however we can specify in a uniform way the various tests. These amount basically to 0-3

2 nc cells written 2 nc steps Row #: x x 2 x n 0 0 0 0 0 0 Row #2: x x 2 x n 0 0 0 0 0 0. Row #2 nc : x......... 0 0 0 0 0 0 0 0 Accept Figure 3: M s computation verifying the correct transition between any two time steps. The verifier of the computation simply is AND of 2 nc clauses of constant size. i, j [2 nc ], C(x, i, j), C(y, i, ) : head in location j, j, j + content in location j}, VERIFY C(x, i, ) : state in step i}, C(x, i, ) : state in step i } Finally, we renders x L iff M(x) = where M EXP to x L iff C i, j VERIFY(C, x, i, j) VERIFY P because C is of poly-size. Therefore, L Σ 2. This completes the proof. The Karp-Lipton Theorem s proof is by guessing the assignment. The Meyer s Theorem s proof is by verifying the computation in a succinct way. 4 Circuit Lower Bounds Definition (Size of a circuit) The size of a circuit C is the number of edges of the circuit C. Theorem 2 Most functions on n bits require size Ω( 2n n ). Proof By a counting argument. How many circuits of size S are there? we need to specify S wires (which requires O(S log S) bits) and the gate computed by each gate (which takes an additional O(S) bits). Hence the number of functions computed in SIZE(S) is at most S O(S). On the other hand, the number of boolean functions on n bits is 2 2n. Setting S = O( 2n n ), we get that most functions require size > S. Corollary 3 SIZE( S log S ) SIZE(S log S). Proof 2 k k. Let S = 2 k, k < n. Most functions on k bits have size > 2k k. All functions on k bits have CNF size 0-4

References [] Richard M. Karp and Richard J. Lipton. Some connections between nonuniform and uniform complexity classes. In Proceedings of the twelfth annual ACM symposium on Theory of computing, STOC 80, pages 302 309, New York, NY, USA, 980. ACM. 0-5