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

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

INAPPROX APPROX PTAS. FPTAS Knapsack P

Lecture 9: PSPACE. PSPACE = DSPACE[n O(1) ] = NSPACE[n O(1) ] = ATIME[n O(1) ]

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

1 Circuit Complexity. CS 6743 Lecture 15 1 Fall Definitions

Circuits. Lecture 11 Uniform Circuit Complexity

Lecture 5: The Landscape of Complexity Classes

Lecture 11: Proofs, Games, and Alternation

CS601 DTIME and DSPACE Lecture 5. Time and Space functions: t,s : N N +

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

1 PSPACE-Completeness

Complexity: Some examples

Essential facts about NP-completeness:

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

Foundations of Query Languages

Notes on Computer Theory Last updated: November, Circuits

Parallelism and Machine Models

CSC 5170: Theory of Computational Complexity Lecture 4 The Chinese University of Hong Kong 1 February 2010

Models of Computation

DRAFT. Algebraic computation models. Chapter 14

Umans Complexity Theory Lectures

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

A Complexity Theory for Parallel Computation

Ταουσάκος Θανάσης Αλγόριθμοι και Πολυπλοκότητα II 7 Φεβρουαρίου 2013

CSCI 1590 Intro to Computational Complexity

Time Complexity. Definition. Let t : n n be a function. NTIME(t(n)) = {L L is a language decidable by a O(t(n)) deterministic TM}

Lecture 21: Algebraic Computation Models

CS 301. Lecture 18 Decidable languages. Stephen Checkoway. April 2, 2018

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

Notes for Lecture 3... x 4

Space and Nondeterminism

CS151 Complexity Theory. Lecture 1 April 3, 2017

The space complexity of a standard Turing machine. The space complexity of a nondeterministic Turing machine

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

conp, Oracles, 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).

Algorithms & Complexity II Avarikioti Zeta

16.1 Countability. CS125 Lecture 16 Fall 2014

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

Computational Complexity

Polynomial Time Computation. Topics in Logic and Complexity Handout 2. Nondeterministic Polynomial Time. Succinct Certificates.

PRAM lower bounds. 1 Overview. 2 Definitions. 3 Monotone Circuit Value Problem

Notes for Lecture 3... x 4

Lecture 22: PSPACE

Finish K-Complexity, Start Time Complexity

Lecture 3: Reductions and Completeness

The Polynomial Hierarchy

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

More Complexity. Klaus Sutner Carnegie Mellon University. Fall 2017

Lecture 6: Oracle TMs, Diagonalization Limits, Space Complexity

Logarithmic space. Evgenij Thorstensen V18. Evgenij Thorstensen Logarithmic space V18 1 / 18

Lecture 4 : Quest for Structure in Counting Problems

Definition: conp = { L L NP } What does a conp computation look like?

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

Database Theory VU , SS Complexity of Query Evaluation. Reinhard Pichler

Lecture 21: Space Complexity (The Final Exam Frontier?)

Properties That Characterize

CS Lecture 29 P, NP, and NP-Completeness. k ) for all k. Fall The class P. The class NP

MACHINE COMPUTING. the limitations

Lecture 17. In this lecture, we will continue our discussion on randomization.

Lecture 20: conp and Friends, Oracles in Complexity Theory

Undecidability and Rice s Theorem. Lecture 26, December 3 CS 374, Fall 2015

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

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

P = k T IME(n k ) Now, do all decidable languages belong to P? Let s consider a couple of languages:

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

Umans Complexity Theory Lectures

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

Turing Machine Recap

P versus NP: Approaches, Rebuttals, and Does It Matter?

Week 2: Defining Computation

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

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

Computability and Complexity Theory: An Introduction

COMPUTATIONAL COMPLEXITY

CMPT 710/407 - Complexity Theory Lecture 4: Complexity Classes, Completeness, Linear Speedup, and Hierarchy Theorems

Advanced topic: Space complexity

Automata Theory. Lecture on Discussion Course of CS120. Runzhe SJTU ACM CLASS

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

CSCI3390-Lecture 14: The class NP

Resource-Bounded Computation

Complexity and NP-completeness

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

Notes on Complexity Theory Last updated: November, Lecture 10

Computability and Complexity CISC462, Fall 2018, Space complexity 1

Descriptive Complexity

Reductions to Graph Isomorphism

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: NP-Completeness I Date: 11/13/18

Lecture 8: Complete Problems for Other Complexity Classes

1 Deterministic Turing Machines

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

Notes on Complexity Theory Last updated: October, Lecture 6

Complexity of domain-independent planning. José Luis Ambite

R ij = 2. Using all of these facts together, you can solve problem number 9.

Boolean circuits. Lecture Definitions

About the relationship between formal logic and complexity classes

CSCI 1590 Intro to Computational Complexity

1 Acceptance, Rejection, and I/O for Turing Machines

Lecture 12: Randomness Continued

Transcription:

CMPSCI 601: Recall From Last Time Lecture Definition: Alternating time and space Game Semantics: State of machine determines who controls, White wants it to accept, Black wants it to reject. White wins the -game on input. Examples: 1. MCVP ASPACE. QSAT ATIME Theorem: NSPACE For, ATIME! DSPACE "! ASPACE DTIME$#&%(')"'+*-,.,/ Corollary: ASPACE 0 1 P ATIME %('34, PSPACE ASPACE %('34, EXPTIME 1

CMPSCI 601: Parallel Computation Lecture The Turing machine and the abstract RAM are sequential machines, in that they perform only one operation at a time. Real computers are largely sequential as well, but: Modern computer networks allow us to apply many processors to the same problem (e.g, SETI@home), Modern programming languages allow for parallel execution threads, Modern processors are slightly parallel, with the capacity to do a few things at the same time, There have been some experimental massively parallel computers such as the Connection Machine, and The circuit elements inside a given chip operate in parallel.

Can we solve any problem a million times faster by applying a million parallel processors to it? Probably not, but as with the P vs. NP question we don t have any theorems confirming our intuition. Parallel complexity theory studies the resources needed to solve problems in parallel. To begin such a study we need a formal model of parallel computation, analogous to the Turing machine or RAM. As it turns out, just as the TM and RAM have similar behavior with respect to time and space, various different parallel models have similar behavior with respect to parallel time and amount of hardware. 3

Parallel Random Access Machines CRAM CRCW-PRAM-TIME[ ]-HARD[ % '34, ] synchronous, concurrent read and write, uniform, % '34, processors and memory P r P 1 Global P Memory P 3 P 4 P 5 priority write: lowest number processor wins conflict common write: no conflicts allowed 4

The alternating Turing machine is another parallel model of sorts, since the acceptance behavior depends on the entire set of configurations. The parallel time measure turns out to be the number of alternations between existential and universal states: Theorem.1 For %('34,, CRAM is equal to the class of languages of ATM s with space 1 and " alternations. We won t prove this here (I might put it on HW#8), but we ll show that ATM s are closely related to another parallel computing model, that of boolean circuits. 5

CS601/CM730-A: LH and PH Lecture An important special case of ATM computation is when the number of alternations is bound by a constant. We use the same names for constant-alternation classes that we defined for the Arithmetic Hierarchy in HW#5. For example, P consists of the languages of poly-time ATM s that always stay in existential states, that is, NP. P is the same for only universal states, that is, co-np. P consists of the languages of poly-time ATM s that have a phase of existential configurations followed by a phase of universals. P is the complement of P, and so on. PH is defined to be the union of P and P for all constant, or languages of poly-time ATM s with - alternations. Theorem. PH SO. The proof is a simple generalization of Fagin s Theorem, NP SO. 6

The Logtime Hierarchy On HW #7 we re looking at ATM s that operate in time, making key use of their random-access input tape. You re asked to prove that such an ATM can decide: any language in FO, and also the PARITY language, of strings with an odd number of 1 s PARITY is not in FO, though we won t be able to prove such a lower bound in this course. The complexity class LH, the log-time hierarchy, is the set of languages decidable in ATIME with - alternations. Your HW solution will most likely show that FO LH. It turns out that with the right definition of FO, FO LH. 7

* CMPSCI 601: Circuit Complexity Lecture Real computers are built from many copies of small and simple components. Circuit complexity uses circuits of boolean logic gates as its model of computation. Circuits are directed acyclic graphs. Inputs are placed at the leaves. Signals proceed up toward the root,. Straight-line code: gates are not reused. Let be a decision problem. Let, Def: be a circuit family. has input bits and one output bit. *, N computes iff for all and for all 8

or and or and or r t(n) not b 1 b 1 b b b n b n not gates are pushed down to bottom Depth parallel time Number of gates computational work sequential time 9

* CMPSCI 601: Circuit Uniformity Lecture Consider the class PSIZE of languages that are computed by a family of poly-size circuits. That is, for each, there is a circuit that accepts an input string iff. It is easy to see from our construction for Fagin s Theorem that P. Also since CVP is in P, it seems that PSIZE should be no more powerful than P. But as we ve defined PSIZE, it contains undecidable languages! Look at for example. For any input length, there is a one-gate circuit that decides whether the input is in : it either says yes or says no without looking at the input at all. So is in PSIZE, but it s clearly r.e.-complete as it s just a recoding of. 10

* * But this circuit is non-uniform. Given a number, it is impossible for any Turing machine, much less a polytime TM, to determine what is. Let s define P-uniform PSIZE to be those languages decided by poly-time circuit families where we can compute from the string * in %('34, time. Now it s easy to see that P-uniform PSIZE is contained in P, because our machine on input can first build the circuit and then solve the CVP problem that tells what does on input. And in fact the tableau construction tells us that P is contained in P-uniform PSIZE, because the circuit from the tableau is easy to construct. In fact it s very easy to construct we could do it in L or even in FO. Thus we have: Theorem: P = P-uniform PSIZE = L-uniform PSIZE = FO-uniform PSIZE. 11

* * * Definition.3 (The NC Hierarchy) Let be a polynomially bounded function and let Then is in the circuit complexity class NC, AC, ThC, respectively iff there exists a uniform family of circuits with the following properties: 1. For all. The depth of is ". 3. %('., 4. The gates of consist of, NC AC ThC bounded fan-in unbounded fan-in unbounded fan-in and, or gates and, or gates threshold gates ^ ^ k 1

For, NC AC ThC NC AC ThC NC NC AC ThC We will see that the following inclusions hold: AC ThC NC L NL AC AC ThC NC AC AC ThC NC AC.... AC ThC NC NC 13

* The word uniform above means that the map, * is very easy to compute, for example, L or FO. Though these uniformity conditions are a subject dear to my heart, we won t worry too much about the details of them in this course. Overall, NC consists of those problems that can be solved in poly-log parallel time on a parallel computer with polynomially much hardware. The question of whether P NC is the second most important open question in complexity theory, after the P NP question. You wouldn t think that every problem in P can be sped up to polylog time by parallel processing. Some problems appear to be inherently sequential. If we prove that a problem is P-complete, we know that it is not in NC unless P NC. Theorem: CVP, MCVP and HORN-SAT are all P- complete. 14

Proposition.4 Every regular language is in NC. Proof: Given DFA Construct circuits., for all, in F? f 1 n f 1 n/ f n/+1 n f 1 f n-1 n f 1 f f 3 f n- f n-1 f n δ δ δ δ δ δ w w w w w w 1 3 n- n-1 n * 15

By a very similar argument, you can show that every regular language is in ATIME. Actually, with a suitable uniformity condition, Theorem: (Ruzzo) NC ATIME 1. 16

Theorem.5 (Barrington-Immerman-Straubing) FO AC Proof:(Sketch of one direction, with some uniformity details skipped) or x=0 x=1 x=n-1 and and and or or or or or or y=0 y= n-1 y=0 y=n-1 y=0 y=n-1 M M M M M M M x=0 y=0 z=0 x=0 y=0 z=n-1 x=0 y=n-1 z=0 x=n-1 y=0 z=0 x=n-1 y=0 z=n-1 x=n-1 y=n-1 z=0 x=n-1 y=n-1 z=n-1 17

Proposition.6 For NC AC ThC NC Proof: All inclusions but ThC MAJ NC are clear. has more than 0 # 1 s ThC Lemma.7 MAJ NC (and the same for any other threshold gate). 18

The obvious way to try to build an NC circuit for majority is to add the input bits via a full binary tree of height. The problem with this, is that while the sums being added have more and more bits, we must still add them in constant depth. > n/ + + + + + + log n + + + + + + + + + + + + + + + + + + + + + + + + x x 1 x x x x x x x x 3 4 5 6 7 8 31 3 19

# # # # # # # # # # A solution to this problem is via ambiguous arithmetic notation. Consider a representation of natural numbers in binary, except that digits # may be used. For example 313 and 31 are different representations of the decimal number 37 in this ambiguous notation, #&# # # 0

Lemma.8 Adding two bit numbers in ambiguous notation can be done via an NC circuit, i.e., with bounded depth and bounded fan-in. Example: carries: 3 3 3 1 3 + 3 1 3 3 1 0 This is doable in NC because the carry from column can be computed by looking only at columns and. Translating from ambiguous notation back to binary, which must be done only once at the end, is just an addition problem. This is first-order, and thus AC, and thus NC. 1

co-r.e. complete co-r.e. Arithmetic Hierarchy r.e. r.e. complete Recursive Primitive Recursive EXPTIME co-np complete PSPACE Polynomial-Time Hierarchy co-np NP NP U co-np NP complete P "truly feasible" NC NC log(cfl) NSPACE[log n] DSPACE[log n] Regular Logarithmic-Time Hierarchy SAC 1 NC AC ThC 0 1 0