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

Similar documents
1 Circuit Complexity. CS 6743 Lecture 15 1 Fall Definitions

Notes on Computer Theory Last updated: November, Circuits

Notes for Lecture 3... x 4

Notes for Lecture 3... x 4

1 From previous lectures

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

Complexity. Complexity Theory Lecture 3. Decidability and Complexity. Complexity Classes

Notes on Complexity Theory Last updated: November, Lecture 10

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

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

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

CS151 Complexity Theory. Lecture 14 May 17, 2017

Randomness and non-uniformity

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

Lecture 20: conp and Friends, Oracles in Complexity Theory

DRAFT. Algebraic computation models. Chapter 14

1 PSPACE-Completeness

2 Evidence that Graph Isomorphism is not NP-complete

NP-Complete problems

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

Umans Complexity Theory Lectures

Boolean circuits. Lecture Definitions

ITCS:CCT09 : Computational Complexity Theory Apr 8, Lecture 7

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

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

6.896 Quantum Complexity Theory November 11, Lecture 20

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

NP-Completeness. Until now we have been designing algorithms for specific problems

Umans Complexity Theory Lectures

Complexity Theory. Knowledge Representation and Reasoning. November 2, 2005

: On the P vs. BPP problem. 30/12/2016 Lecture 12

uring Reducibility Dept. of Computer Sc. & Engg., IIT Kharagpur 1 Turing Reducibility

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

2 P vs. NP and Diagonalization

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

UC Berkeley CS 170: Efficient Algorithms and Intractable Problems Handout 22 Lecturer: David Wagner April 24, Notes 22 for CS 170

NP Completeness. Richard Karp, 1972.

satisfiability (sat) Satisfiability unsatisfiability (unsat or sat complement) and validity Any Expression φ Can Be Converted into CNFs and DNFs

Lecture 11: Proofs, Games, and Alternation

6.896 Quantum Complexity Theory Oct. 28, Lecture 16

CS 151 Complexity Theory Spring Solution Set 5

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

CSE 200 Lecture Notes Turing machine vs. RAM machine vs. circuits

CS151 Complexity Theory

: On the P vs. BPP problem. 18/12/16 Lecture 10

Lecture 26: Arthur-Merlin Games

2 Natural Proofs: a barrier for proving circuit lower bounds

Lecture 10: Boolean Circuits (cont.)

Notes for Lecture Notes 2

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

Lecture 26. Daniel Apon

Circuits. Lecture 11 Uniform Circuit Complexity

Notes on Complexity Theory Last updated: December, Lecture 2

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

Lecture 7 Limits on inapproximability

From Secure MPC to Efficient Zero-Knowledge

CS151 Complexity Theory. Lecture 1 April 3, 2017

Principles of Knowledge Representation and Reasoning

The Tournament Divide and Conquer Technique. Daniel Rubery Georgiy Platonov Mohammad Rafayet Ali Xiong Zhang

NP-completeness. Chapter 34. Sergey Bereg

Essential facts about NP-completeness:

Lecture 21: Algebraic Computation Models

Nondeterministic Circuit Lower Bounds from Mildly Derandomizing Arthur-Merlin Games

CSC 5170: Theory of Computational Complexity Lecture 5 The Chinese University of Hong Kong 8 February 2010

CS151 Complexity Theory. Lecture 13 May 15, 2017

198:538 Complexity of Computation Lecture 16 Rutgers University, Spring March 2007

Week 3: Reductions and Completeness

Announcements. Friday Four Square! Problem Set 8 due right now. Problem Set 9 out, due next Friday at 2:15PM. Did you lose a phone in my office?

Computational Complexity

1 Computational Problems

Beyond NP [HMU06,Chp.11a] Tautology Problem NP-Hardness and co-np Historical Comments Optimization Problems More Complexity Classes

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.

Decision Problems with TM s. Lecture 31: Halting Problem. Universe of discourse. Semi-decidable. Look at following sets: CSCI 81 Spring, 2012

Easy Problems vs. Hard Problems. CSE 421 Introduction to Algorithms Winter Is P a good definition of efficient? The class P

IS VALIANT VAZIRANI S ISOLATION PROBABILITY IMPROVABLE? Holger Dell, Valentine Kabanets, Dieter van Melkebeek, and Osamu Watanabe December 31, 2012

: Computational Complexity Lecture 3 ITCS, Tsinghua Univesity, Fall October 2007

Lecture 19: Finish NP-Completeness, conp and Friends

P P P NP-Hard: L is NP-hard if for all L NP, L L. Thus, if we could solve L in polynomial. Cook's Theorem and Reductions

Reductions to Graph Isomorphism

Design and Analysis of Algorithms

P is the class of problems for which there are algorithms that solve the problem in time O(n k ) for some constant k.

Finish K-Complexity, Start Time Complexity

Real Interactive Proofs for VPSPACE

Probabilistically Checkable Proofs. 1 Introduction to Probabilistically Checkable Proofs

Theory of Computation Chapter 9

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

Introduction to Complexity Theory

Advanced topic: Space complexity

conp, Oracles, Space Complexity

Lecture 4 : Quest for Structure in Counting Problems

6.895 Randomness and Computation March 19, Lecture Last Lecture: Boosting Weak Learners Into Strong Learners

1 Randomized Computation

Some Results on Circuit Lower Bounds and Derandomization of Arthur-Merlin Problems

NP-Completeness. Algorithmique Fall semester 2011/12

A.Antonopoulos 18/1/2010

Answers to the CSCE 551 Final Exam, April 30, 2008

Arthur and Merlin as Oracles

Lecture 4: NP and computational intractability

Automata Theory CS Complexity Theory I: Polynomial Time

Transcription:

JASS 06 Report Summary Circuit Complexity Konstantin S. Ushakov May 14, 2006 Abstract Computer science deals with many computational models. In real life we have normal computers that are constructed using, so called, silicon chips. Boolean circuits model may be considered a formalization of the silicon chip. That s the reason why it is very interesting to determine a set of problems which can be solved by boolean circuits. 1

Contents 1 Introduction 3 2 Polynomial Circuit Families 5 3 Circuit families of size O(n k ) 8 4 Circuit Complexity of PP 9 2

1 Introduction Boolean circuits model is a formalization of the silicon chip - the basic block of computers in their todays state. Boolean circuit with n inputs is a directed acyclic graph with n leaves (input wires). Each inner node(gate) of the graph is labeled with logical operation (,, ). The and nodes have indegree of 2, and nodes have indegree of 1. There is at least one output node. The input n bits are fed to the input gates. The circuit works as follows: each internal gate applies the operation it is labeled with on it s incoming edges and produces a single bit. As the graph is acyclic there are no feedback effects, so, a single output bit emerges in the output node (see Figure 1). Hence, the circuit with one output gate implements a boolean function from {0, 1} n {0, 1}. The size of the circuit S(C n ) is the number of edges in it. The depth of the circuit is the length of the longest path from input to output excluding NOT gates. Figure 1: Circuit Work Example Boolean functions OR, AND and NOT form a universal basis, that means every boolean function of n-bit inputs can be implemented by a boolean circuit we have introduced. Since in general we don t know the length of the input, we introduce a circuit family concept. Definition 1.1 Circuit family {W n } n 1 is a sequence of circuits, where W n has n inputs. Definition 1.2 We say {W n } is a circuit family of size O(f(n)), if for every n size of circuit W n is O(f(n)). Definition 1.3 A circuit family decides a language L if for every input x, x L W x (x) = 1. It is pretty obvious, that any language can be decided by a circuit family of size O(n2 n ) (simply encoding decision result for any possible input in the circuit). This means that even algorithmically undecidable languages can be decided by boolean circuits. This leads us to the question of circuit families construction. There are two possible approaches. 1. A circuit family must be generated by a computer, such circuits are called uniform. Uniform circuits can be used in real life, and so this approach seems to be logical. However, in this case the following theorem holds: Theorem 1 A language L {0, 1} has uniform polynomial circuits iff L lies in P. 3

2. Circuits can be defined in abstract way, such circuits are called non-uniform. This extends the number of problems which can be solved by circuits, but makes this approach unrealistic. The positive thing is that in real life we don t need the whole circuit family. If, for instance, we create a circuit of a small size that solves SAT for input of size 1024, created circuit will solve lots of vital problems and help us to break some of todays cryptography systems. Another important fact is that we need to perform the construction of the circuit only once and then it could be placed in the hardware and it could be reused. 4

2 Polynomial Circuit Families In real life we try to archive polynomial work time. For a circuit polynomial time of work means polynomial size of the circuit. There are two equivalent definitions of polynomial size circuits. Definition 2.1 L P/poly iff there exists {C i } i N and polynomial p that i C i p(i) x L C x (x) = 1 ({C i } i N correctly decides L) Definition 2.2 L P/poly iff there exists a polynomial time computable relation R, that {y i } i N x ( x L R(x, y x ) = 1 ), the advice string for the Turing machine does not depend on the input x but only on the length of the input. Now, as we introduced a new complexity class, we are interested in it s relations with other known classes. It is obvious that P P/poly and that P is not equal to P/poly, because P/poly contains algorithmically undecidable languages. The interesting question is if NP P/poly. This problem is still open, but it is not independent. Theorem 2 (Karp-Lipton) If SAT has polynomial circuits then the polynomial hierarchy collapses to the second level. Lemma 2.3 The following language is Σ 3 P-complete L = {x y z (x, y, z) R}, where R is a polynomially balanced relation decidable in NP. Proof[Lemma] We know that is language L Σ k+1 P polynomially balanced relation R Π k P, that x (x L yr (x, y)). Therefore, L Σ 3 P iff there exists such relation R 1 from Π 2 P, that x (x L yr 1 (x, y)). As Π 2 P = co Σ 2 P, applying the rule one more time we get where R 2 Σ 1 P = NP. L = {x y z (x, y, z) R 2 }, Proof[Theorem] To prove that polynomial hierarchy collapses to the second level we prove that Σ 2 P = Σ 3 P. From this we immediately get the hierarchy collapse: Σ 4 P = NP Σ 3P = NP Σ 2P = Σ 3. To prove this equality we consider a Σ 3 P -complete language L = {x y z (x, y, z) R}, where R is a polynomially balanced relation decidable in NP. Now we should show that L lies in Σ 2 P. For this we need to replace somehow relation R with another relation Q, which is polynomially balanced and decidable in P. The main idea is to hide the NP under the circuits, which can be computed in polynomial time. 5

1. If R lies in NP it can be reduced to SAT, because SAT is NP-complete problem, let F be the reduction. That means that (x, y, z) R F (x,y,z) is satisfiable. 2. Let s denote C = {C 0,...} the polynomial circuit family that solves SAT and C n = {C 0,..., C n } the initial segment of this family. We say that C n is a correct initial segment iff C n correctly decides SAT for formulas of size m. 3. We know that SAT is self-reducible, this means that for every formula G G = G[x := true] G[x := false], where G[x := true] is formula G, where all occurrences of x are substituted with true value. 4. Therefore, family of circuits {C i } n i=1 it works correctly for formula ω of length n, if for every variable x contained in ω C ω (ω) = C ω[x:=true] (ω[x := true]) C ω[x:=false] (ω[x := false]) if ω contains no variables, then it is true or false, hence the circuit should work correctly on constants: C true (true) = true and C false (false) = false 5. The initial segment C n is a correct initial segment if and only if it works correctly ω ( ω n). Now we can replace functionality of the relation R in the definition of language L by polynomial circuits. These circuits will check the formula, corresponding to our triple (x, y, z). x L C m y z(all of length at most m) C m is a correct initial segment of length m C m (F (x,y,z) ) = true The question is: what m should we choose? In other words, how can we bind the length of formula F (x,y,z) depending on length of x. We need m to be polynomially bound, as the relation Q should be polynomially balanced. Let us suppose that on input x the largest expression F (x,y,z) that could be constructed is of length at most p( x ). Since R is polynomially balanced and F is polynomial-time, p(n) is polynomial and we can take m = p( x ). Now the final version of the definition of language L is as follows: x L C p( x ) y z(all of length at most p( x )) C p( x ) is a correct initial segment of length p( x ) C p( x ) (F (x,y,z) ) = true This representation of language L is correct. x L y zr (x, y, z) y zf (x,y,z) SAT {C i } m i=1 correct initial segment {C i } m i=1 correct initial segment F (x,y,z) SAT y zr (x, y, z) x L So, finally, we rewrote the definition of language L in the form L = {x y z (x, y, z) R}, where Q is polynomially balanced and polynomial-time decidable, and then the language L lies in Σ 2 P. 6

Corollary 1 If NP has polynomial circuits, then PH = Σ 2 P Π 2 P. Proof This corollary is obvious as PH is closed under complement. So, if PH Σ 2 P, then co PH = PH Π 2 P. Corollary 2 If NP P/poly iff there exists a sparce NP-hard language in terms of Cook reduction. Proof Out of the coverage of this paper. 7

3 Circuit families of size O(n k ) Definition 3.1 Size[f(n)] is a class of languages accepted by boolean circuit families of size O(f(n)). Definition 3.2 Size[n k ] is a class of languages accepted by boolean circuit families of size O(n k ). Theorem 3 Σ 2 P Π 2 P Size[n k ] for any k. Lemma 3.3 Σ 4 P Size[n k ] for any k. Proof[Lemma] Let s consider all functions f that depend only on the first c k log(n) bits. It is obvious that such functions could be encoded in polynomial number of bits (for exapmle by truth table). Number of possible functions f is 2 2c k log(n) = 2 nc k. Number of possible boolean circuits of size n k is at most 2 k 2 +n, which is less than number of possible functions f. Consider { ( M = f c circuit of size n k) } x (input of length n) : f(x) c(x). The set M is obviously not empty, since not all functions f can be encoded by a boolean circuit of size n k. Impose some fast computable order on set M, for instance lexicographical. Let F be one of the smallest functions in M. Take L = {x F (x) = 1}. Now we will describe language L in the form R, where R is polynomially balanced and polynomial-time decidable. F (y) = 1 y L c x : F (x) c(x) F : ( c xf (x) c(x)) F F Rewriting this in one line: y L F c F x c x : F (x) c(x) (( F F ) F (x ) = c (x ) ) F (y) = 1. So, we have constructed the language L from Σ 4 P which can t be accepted by a circuit of size n k. The proof is not completed. We proved that L can t be accepted by a circuit of size n k, but we need to prove that it can t be accepted by a circuit of size O(n k ). It is obvious how to complete the proof, because n k grows faster than c n k 1 and, hence, L can t be accepted by circuits of size O(n k 1 ). Proof[Theorem] Assume that for some k Σ 2 P Π 2 P Size[n k ]. Then there exist a polynomial circuits that decide NP. This leads us to collapse of the polynomial hierarchy to Σ 2 P Π 2 P. But then PH = Σ 2 P Π 2 P Size[n k ]?! We have a contradiction, and so our assumption was wrong. Corollary 3 PH Size[n k ] for every k. 8

4 Circuit Complexity of PP First of all let s remind what Merlin-Arthur protocols are. L MA iff Figure 2: Merlin Arthur Protocol x L Merlin can think of a proof that Arthur will accept with high probability x / L every proof created by Merlin will be rejected by Arthur with high probability As usual, Merlin is very clever and has infinite computational power, and Arthur is honest, but has polynomial computational power. Writing strictly L MA if there exist polynomials p and q and Turing machine M, working polynomial time on all inputs, that for every x: x L y {0, 1} p( x ) : x / L y {0, 1} p( x ) : Additional knowledge that we will need. Theorem 4 (Toda) PH P PP. Pr z {0,1} q( x ) {M (x, y, z) = 1} > 3 4 Pr z {0,1} q( x ) {M (x, y, z) = 1} < 1 4 Lemma 4.1 (Part of the proof of the Toda theorem) P PP = P #P. Theorem 5 P #P has interactive protocol with prover from P #P. We won t proof both theorems and lemma. Now we come to the main theorem of this section: Theorem 6 PP Size[n k ] for every k. Lemma 4.2 If PP P/poly we have P PP MA. Proof[Lemma] We know that P #P = P PP. And by Theorem 5 we know that there exists an interactive protocol for P #P with oracle from the same class. The problem is that during the communications between the prover and the verifier the verifier may ask questions to the prover more than once. And this conflicts with the definition of MA protocols. The main idea is that if the prover can encode itself in polynomial length and send to the verifier, this reduces required number of communication rounds to one. Speaking strictly, P #P = P PP P/poly, where the advice string for P/poly are polynomial circuits, which calculate the answers of the oracle from the class PP on inputs of length poly(n). Let s take an interactive prover for P #P from Theorem 5. We modify the interaction protocol in the following way (see Figure 3): 9

Figure 3: Initial and Modified protocol the prover does not remember the communication history the verifier remembers the communication history and sends it with every request to the prover (the communication history has polynimial size). The modified prover acts as a simple P #P machine. So, as P #P P/poly, there exist polynomial circuits for P #P. Now Arthur and Merlin appear, Arthur simulates verifier and in the first request to Merlin (prover) he asks to send him the polynomial circuits that encode the prover. As all requests to the prover had length poly(n), the circuits are valid replacement for the prover. So, we constructed a Merlin-Arthur protocol for P PP. Lemma 4.3 (without proof) MA PP. Proof[Theorem] Assume, that there exists k, that PP Size[n k ] PP P/poly. PH P PP (by T heorem 4) MA (by Lemma 4.2) PP (by Lemma 4.3). (1) Since by Lemma 3 we know that PH is not a subset of Size[n k ], PP Size[n k ]. References [1] Aurora. Computational Complexity: A Modern Approach, chapter 6. 2006. [2] Hirsh. Introduction to complexity theory. 2002. [3] Papadimitriou. Computational Complexity, chapter 17. Addison-Weseley Publishing Company, 1994. 10