CS151 Complexity Theory Lecture 4 April 12, 2019.

Slides:



Advertisements
Similar presentations
Complexity Theory Lecture 6
Advertisements

Complexity Classes: P and NP
CS151 Complexity Theory Lecture 4 April 11, 2013.
1 Nondeterministic Space is Closed Under Complement Presented by Jing Zhang and Yingbo Wang Theory of Computation II Professor: Geoffrey Smith.
1 Space Complexity. 2 Def: Let M be a deterministic Turing Machine that halts on all inputs. Space Complexity of M is the function f:N  N, where f(n)
CS151 Complexity Theory Lecture 3 April 6, CS151 Lecture 32 Introduction A motivating question: Can computers replace mathematicians? L = { (x,
Fall 2013 CMU CS Computational Complexity Lecture 5 Savich’s theorem, and IS theorems. These slides are mostly a resequencing of Chris Umans’ slides.
Umans Complexity Theory Lectures Lecture 4b: Nondeterministic Space: I-S Theorem: NL = coNL.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
Complexity 12-1 Complexity Andrei Bulatov Non-Deterministic Space.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
Complexity 11-1 Complexity Andrei Bulatov Space Complexity.
Complexity 13-1 Complexity Andrei Bulatov Hierarchy Theorem.
CS151 Complexity Theory Lecture 3 April 6, Nondeterminism: introduction A motivating question: Can computers replace mathematicians? L = { (x,
CS151 Complexity Theory Lecture 5 April 13, 2015.
Computability and Complexity 19-1 Computability and Complexity Andrei Bulatov Non-Deterministic Space.
CS151 Complexity Theory Lecture 5 April 13, 2004.
Complexity ©D.Moshkovits 1 Space Complexity Complexity ©D.Moshkovits 2 Motivation Complexity classes correspond to bounds on resources One such resource.
CS151 Complexity Theory Lecture 12 May 6, CS151 Lecture 122 Outline The Polynomial-Time Hierarachy (PH) Complete problems for classes in PH, PSPACE.
Submitted by : Estrella Eisenberg Yair Kaufman Ohad Lipsky Riva Gonen Shalom.
Computability and Complexity 20-1 Computability and Complexity Andrei Bulatov Class NL.
Alternating Turing Machine (ATM) –  node is marked accept iff any of its children is marked accept. –  node is marked accept iff all of its children.
February 20, 2015CS21 Lecture 191 CS21 Decidability and Tractability Lecture 19 February 20, 2015.
Theory of Computing Lecture 19 MAS 714 Hartmut Klauck.
Definition: Let M be a deterministic Turing Machine that halts on all inputs. Space Complexity of M is the function f:N  N, where f(n) is the maximum.
February 18, 2015CS21 Lecture 181 CS21 Decidability and Tractability Lecture 18 February 18, 2015.
Theory of Computing Lecture 17 MAS 714 Hartmut Klauck.
CSCI 2670 Introduction to Theory of Computing November 29, 2005.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
Umans Complexity Theory Lectures Lecture 1a: Problems and Languages.
NP-COMPLETE PROBLEMS. Admin  Two more assignments…  No office hours on tomorrow.
Umans Complexity Theory Lectures Lecture 1c: Robust Time & Space Classes.
Fall 2013 CMU CS Computational Complexity Lecture 2 Diagonalization, 9/12/2013.
Homework 8 Solutions Problem 1. Draw a diagram showing the various classes of languages that we have discussed and alluded to in terms of which class.
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
Umans Complexity Theory Lectures Lecture 3d: Nondeterminism: Sparse Languages and NP Berman’s Theorem: Unary NP complete => P=NP.
Theory of Computational Complexity Yuji Ishikawa Avis lab. M1.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
The NP class. NP-completeness
Umans Complexity Theory Lectures
Space Complexity Complexity ©D.Moshkovits.
Great Theoretical Ideas in Computer Science
Umans Complexity Theory Lectures
HIERARCHY THEOREMS Hu Rui Prof. Takahashi laboratory
NP-Completeness Yin Tat Lee
CS21 Decidability and Tractability
Intro to Theory of Computation
Intro to Theory of Computation
CS151 Complexity Theory Lecture 2 April 5, 2017.
Theory of Computational Complexity
ICS 353: Design and Analysis of Algorithms
Space Complexity Costas Busch - LSU.
CSE838 Lecture notes copy right: Moon Jung Chung
CS151 Complexity Theory Lecture 3 April 10, 2017.
Chapter 11 Limitations of Algorithm Power
Finite Model Theory Lecture 6
CS154, Lecture 13: P vs NP.
CS21 Decidability and Tractability
Umans Complexity Theory Lectures
CS21 Decidability and Tractability
CS21 Decidability and Tractability
CS21 Decidability and Tractability
CS151 Complexity Theory Lecture 12 May 10, 2019.
CS151 Complexity Theory Lecture 1 April 2, 2019.
Instructor: Aaron Roth
Instructor: Aaron Roth
Instructor: Aaron Roth
CS151 Complexity Theory Lecture 5 April 16, 2019.
Intro to Theory of Computation
CS151 Complexity Theory Lecture 4 April 8, 2004.
Presentation transcript:

CS151 Complexity Theory Lecture 4 April 12, 2019

A puzzle A puzzle: two kinds of trees . . . . . . depth n . . . . . . cover up nodes with c colors promise: never color “arrow” same as “blank” determine which kind of tree in poly(n, c) steps? April 12, 2019

A puzzle depth n . . . . . . April 12, 2019

A puzzle depth n . . . . . . April 12, 2019

Introduction Ideas depth-first-search; stop if see how many times may we see a given “arrow color”? at most n+1 pruning rule? if see a color > n+1 times, it can’t be an arrow node; prune # nodes visited before know answer? at most c(n+2) April 12, 2019

Sparse languages and NP We often say NP-compete languages are “hard” More accurate: NP-complete languages are “expressive” lots of languages reduce to them April 12, 2019

Sparse languages and NP Sparse language: one that contains at most poly(n) strings of length ≤ n not very expressive – can we show this cannot be NP-complete (assuming P ≠ NP) ? yes: Mahaney ’82 (homework problem) Unary language: subset of 1* (at most n strings of length ≤ n) April 12, 2019

Sparse languages and NP Theorem (Berman ’78): if a unary language is NP-complete then P = NP. Proof: let U ⊆ 1* be a unary language and assume SAT ≤ U via reduction R φ(x1,x2,…,xn) instance of SAT April 12, 2019

Sparse languages and NP self-reduction tree for φ: φ(x1,x2,…,xn) φ(0,x2,…,xn) φ(1,x2,…,xn) ... . . . φ(0,0,…,0) φ(1,1,…,1) satisfying assignment April 12, 2019

Sparse languages and NP applying reduction R: R(φ(x1,x2,…,xn)) R(φ(0,x2,…,xn)) R(φ(1,x2,…,xn)) ... . . . R(φ(0,0,…,0)) R(φ(1,1,…,1)) satisfying assignment April 12, 2019

Sparse languages and NP on input of length m = |φ(x1,x2,…,xn)|, R produces string of length ≤ p(m) R’s different outputs are “colors” 1 color for strings not in 1* at most p(m) other colors puzzle solution ⇒ can solve SAT in poly(p(m)+1, n+1) = poly(m) time! April 12, 2019

Summary nondeterministic time classes: NP, coNP, NEXP NTIME Hierarchy Theorem: NP ≠ NEXP major open questions: P = NP NP = coNP ? ? April 12, 2019

Summary NP-“intermediate” problems (unless P = NP) technique: delayed diagonalization unary languages not NP-complete (unless P = NP) true for sparse languages as well (homework) complete problems: circuit SAT is NP-complete UNSAT is coNP-complete succinct circuit SAT is NEXP-complete April 12, 2019

Summary coNEXP NEXP EXP PSPACE NP coNP P L April 12, 2019

Remainder of lecture nondeterminism applied to space reachability two surprises: Savitch’s Theorem Immerman/Szelepcsényi Theorem April 12, 2019

Nondeterministic space NSPACE(f(n)) = languages decidable by a multi-tape NTM that touches at most f(n) squares of its work tapes along any computation path, where n is the input length, and f :N → N April 12, 2019

Nondeterministic space Robust nondeterministic space classes: NL = NSPACE(log n) NPSPACE = ∪k NSPACE(nk) April 12, 2019

Reachability Recall: at most nk configurations of given NTM M running in NSPACE(log n). easy to determine if C yields C’ in one step configuration graph for M on input x: qstartx1x2x3…xn x∈L x∉L qaccept qreject qaccept qreject April 12, 2019

Reachability Conclude: NL ⊆ P and NPSPACE ⊆ EXP S-T-Connectivity (STCONN): given directed graph G = (V, E) and nodes s, t, is there a path from s to t ? Theorem: STCONN is NL-complete under logspace reductions. April 12, 2019

Reachability Proof: in NL: guess path from s to t one node at a time given L ∈ NL decided by NTM M construct configuration graph for M on input x (can be done in logspace) s = starting configuration; t = qaccept April 12, 2019

Two startling theorems Strongly believe P ≠ NP nondeterminism seems to add enormous power for space: Savitch ‘70: NPSPACE = PSPACE and NL ⊆ SPACE(log2n) April 12, 2019

Two startling theorems Strongly believe NP ≠ coNP seems impossible to convert existential into universal for space: Immerman/Szelepscényi ’87/’88: NL = coNL April 12, 2019

Savitch’s Theorem Theorem: STCONN ⊆ SPACE(log2 n) Corollary: NL ⊆ SPACE(log2n) Corollary: NPSPACE = PSPACE April 12, 2019

Proof of Theorem input: G = (V, E), two nodes s and t recursive algorithm: /* return true iff path from x to y of length at most 2i */ PATH(x, y, i) if i = 0 return ( x = y or (x, y) ∈ E ) /* base case */ for z in V if PATH(x, z, i-1) and PATH(z, y, i-1) return(true); return(false); end April 12, 2019

Proof of Theorem answer to STCONN: PATH(s, t, log n) space used: (depth of recursion) x (size of “stack record”) depth = log n claim stack record: “(x, y, i)” sufficient size O(log n) when return from PATH(a, b, i) can figure out what to do next from record (a, b, i) and previous record April 12, 2019

Nondeterministic space Robust nondeterministic space classes: NL = NSPACE(log n) NPSPACE = ∪k NSPACE(nk) April 12, 2019

Second startling theorem Strongly believe NP ≠ coNP seems impossible to convert existential into universal for space: Immerman/Szelepscényi ’87/’88: NL = coNL April 12, 2019

I-S Theorem Theorem: ST-NON-CONN ∈ NL Proof: slightly tricky setup: input: G = (V, E), two nodes s, t s s “yes” “no” t t April 12, 2019

I-S Theorem want nondeterministic procedure using only O(log n) space with behavior: t s t s “yes” input “no” input qaccept qreject qaccept qreject April 12, 2019

I-S Theorem observation: given count of # nodes reachable from s, can solve problem for each v ∈ V, guess if it is reachable if yes, guess path from s to v if guess doesn’t lead to v, reject. if v = t, reject. else counter++ if counter = count accept April 12, 2019

I-S Theorem every computation path has sequence of guesses… only way computation path can lead to accept: correctly guessed reachable/unreachable for each node v correctly guessed path from s to v for each reachable node v saw all reachable nodes t not among reachable nodes April 12, 2019

I-S Theorem R(i) = # nodes reachable from s in at most i steps R(0) = 1: node s we will compute R(i+1) from R(i) using O(log n) space and nondeterminism computation paths with “bad guesses” all lead to reject April 12, 2019

I-S Theorem Outline: in n phases, compute R(1), R(2), R(3), … R(n) only O(log n) bits of storage between phases in end, lots of computation paths that lead to reject only computation paths that survive have computed correct value of R(n) apply observation. April 12, 2019

I-S Theorem computing R(i+1) from R(i): Initialize R(i+1) = 0 For each v ∈ V, guess if v reachable from s in at most i+1 steps R(i) = R(2) = 6 April 12, 2019

I-S Theorem if “yes”, guess path from s to v of at most i+1 steps. Increment R(i+1) if “no”, visit R(i) nodes reachable in at most i steps, check that none is v or adjacent to v for u ∈ V guess if reachable in ≤ i steps; guess path to u; counter++ KEY: if counter ≠ R(i), reject at this point: can be sure v not reachable April 12, 2019

I-S Theorem correctness of procedure: two types of errors we can make (1) might guess v is reachable in at most i+1 steps when it is not won’t be able to guess path from s to v of correct length, so we will reject. “easy” type of error April 12, 2019

I-S Theorem (2) might guess v is not reachable in at most i+1 steps when it is then must not see v or neighbor of v while visiting nodes reachable in i steps. but forced to visit R(i) distinct nodes therefore must try to visit node v that is not reachable in ≤ i steps won’t be able to guess path from s to v of correct length, so we will reject. “easy” type of error April 12, 2019

Summary nondeterministic space classes NL and NPSPACE ST-CONN NL-complete April 12, 2019

Summary Savitch: NPSPACE = PSPACE NL = L? Proof: ST-CONN ∈ SPACE(log2 n) open question: NL = L? Immerman/Szelepcsényi : NL = coNL Proof: ST-NON-CONN ∈ NL April 12, 2019

Does NP have linear-size, log-depth Boolean circuits ?? Introduction Power from an unexpected source? we know P ≠ EXP, which implies no poly-time algorithm for Succinct CVAL poly-size Boolean circuits for Succinct CVAL ?? Does NP have linear-size, log-depth Boolean circuits ?? April 12, 2019

Outline Boolean circuits and formulas uniformity and advice the NC hierarchy and parallel computation the quest for circuit lower bounds a lower bound for formulas April 12, 2019

Boolean circuits circuit C ∧ circuit C directed acyclic graph nodes: AND (∧); OR (∨); NOT (¬); variables xi ∨ ∧ ∧ ∨ ¬ x1 x2 x3 … xn C computes function f:{0,1}n → {0,1} in natural way identify C with function f it computes April 12, 2019

Boolean circuits size = # gates depth = longest path from input to output formula (or expression): graph is a tree every function f:{0,1}n → {0,1} computable by a circuit of size at most O(n2n) AND of n literals for each x such that f(x) = 1 OR of up to 2n such terms April 12, 2019

Circuit families circuit works for specific input length we’re used to f:∑*→ {0,1} circuit family : a circuit for each input length C1, C2, C3, … = “{Cn}” “{Cn} computes f” iff for all x C|x|(x) = f(x) “{Cn} decides L”, where L is the language associated with f April 12, 2019

Connection to TMs given TM M running in time t(n) decides language L can build circuit family {Cn} that decides L size of Cn = O(t(n)2) Proof: CVAL construction Conclude: L ∈ P implies family of polynomial-size circuits that decides L April 12, 2019

Connection to TMs other direction? A poly-size circuit family: Cn = (x1 ∨ ¬ x1) if Mn halts Cn = (x1 ∧ ¬ x1) if Mn loops decides (unary version of) HALT! oops… April 12, 2019

Uniformity Strange aspect of circuit family: can “encode” (potentially uncomputable) information in family specification solution: uniformity – require specification is simple to compute Definition: circuit family {Cn} is logspace uniform iff TM M outputs Cn on input 1n and runs in O(log n) space April 12, 2019

Uniformity Theorem: P = languages decidable by logspace uniform, polynomial-size circuit families {Cn}. Proof: already saw (⇒) (⇐) on input x, generate C|x|, evaluate it and accept iff output = 1 April 12, 2019