Introduction to Oracles in Complexity Theory

Slides:



Advertisements
Similar presentations
Quantum Software Copy-Protection Scott Aaronson (MIT) |
Advertisements

The Equivalence of Sampling and Searching Scott Aaronson MIT.
COMPLEXITY THEORY CSci 5403 LECTURE VII: DIAGONALIZATION.
Part VI NP-Hardness. Lecture 23 Whats NP? Hard Problems.
Complexity Theory Lecture 6
Lecture 9. Resource bounded KC K-, and C- complexities depend on unlimited computational resources. Kolmogorov himself first observed that we can put resource.
Complexity Theory Lecture 1 Lecturer: Moni Naor. Computational Complexity Theory Study the resources needed to solve computational problems –Computer.
Lecture 16: Relativization Umans Complexity Theory Lecturess.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
1 Undecidability Andreas Klappenecker [based on slides by Prof. Welch]
Complexity 11-1 Complexity Andrei Bulatov Space Complexity.
Computability and Complexity 22-1 Computability and Complexity Andrei Bulatov Hierarchy Theorem.
Complexity 13-1 Complexity Andrei Bulatov Hierarchy Theorem.
Complexity 18-1 Complexity Andrei Bulatov Probabilistic Algorithms.
1 Introduction to Computability Theory Lecture15: Reductions Prof. Amos Israeli.
1 Introduction to Computability Theory Lecture12: Reductions Prof. Amos Israeli.
CPSC 411, Fall 2008: Set 12 1 CPSC 411 Design and Analysis of Algorithms Set 12: Undecidability Prof. Jennifer Welch Fall 2008.
P, NP, PS, and NPS By Muhannad Harrim. Class P P is the complexity class containing decision problems which can be solved by a Deterministic Turing machine.
1 Undecidability Andreas Klappenecker [based on slides by Prof. Welch]
Submitted by : Estrella Eisenberg Yair Kaufman Ohad Lipsky Riva Gonen Shalom.
RELATIVIZATION CSE860 Vaishali Athale. Overview Introduction Idea behind “Relativization” Concept of “Oracle” Review of Diagonalization Proof Limits of.
Chapter 11: Limitations of Algorithmic Power
Complexity ©D. Moshkovitz 1 And Randomized Computations The Polynomial Hierarchy.
Theory of Computing Lecture 20 MAS 714 Hartmut Klauck.
1 Reducibility. 2 Problem is reduced to problem If we can solve problem then we can solve problem.
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.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
Theory of Computing Lecture 15 MAS 714 Hartmut Klauck.
CSCI 2670 Introduction to Theory of Computing November 4, 2004.
February 18, 2015CS21 Lecture 181 CS21 Decidability and Tractability Lecture 18 February 18, 2015.
Optimal Proof Systems and Sparse Sets Harry Buhrman, CWI Steve Fenner, South Carolina Lance Fortnow, NEC/Chicago Dieter van Melkebeek, DIMACS/Chicago.
The Complexity of Optimization Problems. Summary -Complexity of algorithms and problems -Complexity classes: P and NP -Reducibility -Karp reducibility.
Theory of Computing Lecture 17 MAS 714 Hartmut Klauck.
Theory of Computing Lecture 21 MAS 714 Hartmut Klauck.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
CS151 Complexity Theory Lecture 16 May 20, The outer verifier Theorem: NP  PCP[log n, polylog n] Proof (first steps): –define: Polynomial Constraint.
NP-Completness Turing Machine. Hard problems There are many many important problems for which no polynomial algorithms is known. We show that a polynomial-time.
Chapter 15 P, NP, and Cook’s Theorem. 2 Computability Theory n Establishes whether decision problems are (only) theoretically decidable, i.e., decides.
1 Turing Machines and Equivalent Models Section 13.1 Turing Machines.
CSCI 2670 Introduction to Theory of Computing December 2, 2004.
1 Undecidability Andreas Klappenecker [based on slides by Prof. Welch]
Recall last lecture and Nondeterministic TMs Ola Svensson.
The Church-Turing Thesis Chapter Are We Done? FSM  PDA  Turing machine Is this the end of the line? There are still problems we cannot solve:
Theory of Computational Complexity TA : Junichi Teruyama Iwama lab. D3
Recursively Enumerable and Recursive Languages. Definition: A language is recursively enumerable if some Turing machine accepts it.
 2005 SDU Lecture14 Mapping Reducibility, Complexity.
Probabilistic Algorithms
Part VI NP-Hardness.
Computational Complexity Theory
Theory of Computability
HIERARCHY THEOREMS Hu Rui Prof. Takahashi laboratory
Turing Machines Acceptors; Enumerators
NP-Completeness Yin Tat Lee
Intro to Theory of Computation
CS154, Lecture 10: Rice’s Theorem, Oracle Machines
Perspective on Lower Bounds: Diagonalization
Andreas Klappenecker [based on slides by Prof. Welch]
CSCE 411 Design and Analysis of Algorithms
CS154, Lecture 10: Rice’s Theorem, Oracle Machines
CS154, Lecture 12: Time Complexity
Part II Theory of Nondeterministic Computation
Recall last lecture and Nondeterministic TMs
The Polynomial Hierarchy
9. Complexity Theory : The Frontier
The Polynomial Hierarchy Enumeration Problems 7.3.3
CS151 Complexity Theory Lecture 1 April 2, 2019.
Instructor: Aaron Roth
Instructor: Aaron Roth
Presentation transcript:

Introduction to Oracles in Complexity Theory DeVon Ingram

What is Complexity Theory? Study of the amount of resources needed to solve problems How much time? Space? Randomness? Quantumness? Started in the 1960s when Hartmanis and Stearns had the idea to measure time and space as a function of length of the input to a Turing Machine

Complexity Classes A complexity class is a set of problems that can all be solved with a specified amount of resources P is the class of problems that can be solved in polynomial time NP is the class of problems whose solutions can be verified in polynomial time

Goal of Complexity Theory Classify problems into natural classes and completely establish the relationships between the aforementioned classes This goal is quite difficult, so complexity theorists find easier models to yield insight on how to solve problems for Turing machines

Diagonalization Proof technique useful for proving a set is uncountable In complexity theory, this amounts to exhibiting a machine in one class that differs from every machine in the other class i.e. their answers are different on at least one input Can use to prove that P=/=NP implies there are NP-Intermediate problems

Time Hierarchy Theorem Definition: A function f is time-constructible if there exists a positive integer n_0 and a Turing Machine M which, given a string 1^n, stops after exactly f(n) steps for all n > n_0 Equivalent to f(|x|) can be computed in O(f(n)) time Theorem: If f,g are time constructible functions satisfying f(n)log(f(n))=o(g(n)), then DTIME(f(n))\subset DTIME(g(n))

Proof Sketch of the Time Hierarchy Theorem We will prove that DTIME(n) is strictly contained in DTIME(n^1.5) to showcase the main idea Let D be a Turing Machine that runs input x for |x|^1.4 steps on a universal Turing Machine. If U outputs a bit b, return 1-b. Otherwise, output 0 (in the case U doesn’t halt in time) D halts in time n^1.4, so the language decided by D is contained in DTIME(n^1.5) The language is not contained in DTIME(n) because D(x) obtains the output b from a polynomial-time TM M, and satisfies D(x)=1-b=/=M(x) by definition

Other Hierarchy Theorems There is a nondeterministic analog of the Time Hierarchy theorem which is proven by a modification of diagonalization called lazy diagonalization Hierarchy theorems for deterministic/nondeterministic space are true as well

A Step Towards Complexity Theoretic Goals Complexity Theorists are commonly concerned with understanding the limits of proof techniques We would like to understand the limits of diagonalization Later on, we will see that P vs. NP cannot be resolved by diagonalization among many other famous problems in complexity theory

Understanding Diagonalization Define diagonalization to be any technique that relies solely on the following properties of Turing Machines: The existence of an effective representation Turing Machine by strings The ability of one Turing Machine any other without much overhead in running time Based on definition above, this technique treats Turing Machines as a black box, its internal workings do not matter We can define a machine, which is called an oracle machine, that satisfies these two properties

Oracles Definition: An oracle Turing Machine is a Turing Machine M that has a special read-write tape we call M’s oracle tape. To execute M, we specify in addition to the input a subset of {0,1}^*, which is called O and is used as the oracle for M. Whenever a string is written down an oracle tape, it is replaced with a 0 or 1 in one step, which represents whether a string is contained in O.

Some Easy Examples UNSAT is in P^SAT Let O be in P, then P^O=P

Baker Gill Solovay Theorem Theorem: There exists oracles A,B such that P^A=NP^A and P^B=/=NP^B. In other words, whichever of P=NP or P=/=NP is true; it cannot relativize Nonrelativizing techniques are needed to settle P vs. NP

Construction of A Claim: Let A = {<M,x,1^n>: M outputs 1 on input x within 2^n steps}. Then, P^A=NP^A=EXP. Proof: EXP is contained in P^A since you can use the oracle to query any exponential time computation in one step. Since P is contained in NP, P^A is contained in NP^A. NP^A is contained in EXP since an EXP machine can simulate the oracle in exponential time and can enumerate all nondeterministic choices of an NP machine in exponential time.

Construction of B Let U_B = {1^n: some string of length n is contained in B}. For every language B, U_B is contained in NP (why?). We must construct an oracle B such that U_B is not contained in P^B. Let M_i be the oracle TM represented by the binary expansion of i. We construct B in stages, where stage I ensures that M_i^B does not contain U_B in 2^n/10 times (the 10 isn’t very significant). Initially, B is empty and we add strings to it.

Construction of B (cont.) At stage i, we have declared whether a finite number of strings are in B. Choose n large enough so that it exceeds the length of any string and run M_i on input 1^n for 2^n/10 steps. Whenever M_i queries strings whose status is undetermined, return the correct answer. When M_i queries strings whose status is undetermined, we declare that the string is not in B. We now want to ensure that after M_i finishes running on input 1^n, it returns an incorrect answer.

Construction of B (cont.) Note that at most 2^n/10 strings in {0,1}^n are currently contained in B, and all of them were decided not to be in B If M_i accepts 1^n, declare that all remaining strings of length n are not contained in B If M_i rejects 1^n, pick any string x of length n that M_i has not queried and declare it to be contained in B Since every polynomial p(n) is smaller than 2^n/10 for large enough n, and every Turing Machine M is represented by infinitely many strings, M cannot decide U_B

The Inspiration of Relativization The idea of relativization came from independence results Logical statements such as the Axiom of Choice and the Continuum Hypothesis are independent of ZFC, for example If a statement does not relativize, it’s analogous to a type of independence result in complexity theory Arora, Impagliazzo, and Vazirani provide an axiomatic characterization of when statements relativize

Applications of Oracles Used as a measure of how difficult settling a problem will be Can rewrite the definition of Polynomial Hierarchy in terms of Oracles: PH= NP^NP^…. Used to exhibit evidence of quantum computers performing better than classical computers

Algebrization IP = PSPACE was one of the first examples of a result settled using nonrelativizing techniques (arithmetization) Algebrization is a new barrier that captures the power of arithmetization as well by finitely extending an oracle to a finite field, defined by Scott Aaronson and Avi Widgerson P=NP and P=/=NP both do not“algebrize”, so non-algebrizing techniques are needed to settle P vs. NP IP=PSPACE algebrizes (as expected)

Random Oracles A random oracle is an oracle O where each binary string in {0,1}* is contained in O with probability 1/2 If we pick a random oracle, a complexity class relation can hold relative to the random oracle with probability 0 or 1 Have applications to Cryptography: used as an ideal replacement for cryptographic hash functions in schemes where strong randomness assumptions are needed of the hash function’s output

Random Oracle Results Random Oracles provide another source of evidence that a result holds true, but it still isn’t perfect IP=/=PSPACE w.p. 1 is the classic counterexample to the Random Oracle Hypothesis PH doesn’t collapse relative to a random oracle w.p. 1

BQP vs. PH Longstanding open problem Ran Raz and Avishay Tal recently exhibited an oracle O such that BQP^O is not contained in PH^O PH is infinite with respect to this oracle Heart of proof is due to a new circuit lower bound against a certain class of circuits called AC0, circuits with constant depth and unlimited fan-in Results can be extended to construct an oracle B such that P^B=NP^B=/=BQP^B

Sources http://people.cs.uchicago.edu/~fortnow/papers/relative.pdf https://people.cs.uchicago.edu/~fortnow/papers/history.pdf http://theory.cs.princeton.edu/complexity/book.pdf https://en.wikipedia.org/wiki/Constructible_function#Time-constructible_definitions http://www.math.ias.edu/~avi/PUBLICATIONS/MYPAPERS/SCOTT/alg.pdf https://en.wikipedia.org/wiki/Random_oracle https://eccc.weizmann.ac.il/report/2018/107/