CS848: Topics in Databases: Foundations of Query Optimization Topics covered  Review of complexity.

Slides:



Advertisements
Similar presentations
COMPLEXITY THEORY CSci 5403 LECTURE VII: DIAGONALIZATION.
Advertisements

Part VI NP-Hardness. Lecture 23 Whats NP? Hard Problems.
Complexity Classes: P and NP
CS 345: Chapter 9 Algorithmic Universality and Its Robustness
1 Nondeterministic Space is Closed Under Complement Presented by Jing Zhang and Yingbo Wang Theory of Computation II Professor: Geoffrey Smith.
Lecture 23 Space Complexity of DTM. Space Space M (x) = # of cell that M visits on the work (storage) tapes during the computation on input x. If M is.
Lecture 24 Time and Space of NTM. Time For a NDM M and an input x, Time M (x) = the minimum # of moves leading to accepting x if x ε L(M) = infinity if.
1 Complexity of domain-independent planning José Luis Ambite.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
Resource-Bounded Computation Previously: can it be done? Now: how efficiently can it be done? Goal: conserve computational resources: Time, space, other.
The Big Picture Chapter 3. We want to examine a given computational problem and see how difficult it is. Then we need to compare problems Problems appear.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
Recap CS605: The Mathematics and Theory of Computer Science.
Complexity 7-1 Complexity Andrei Bulatov Complexity of Problems.
Complexity 12-1 Complexity Andrei Bulatov Non-Deterministic Space.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
Computability and Complexity 14-1 Computability and Complexity Andrei Bulatov Cook’s Theorem.
P and NP Sipser (pages ). CS 311 Fall Polynomial time P = ∪ k TIME(n k ) … P = ∪ k TIME(n k ) … TIME(n 3 ) TIME(n 2 ) TIME(n)
1 Introduction to Computability Theory Lecture13: Mapping Reductions Prof. Amos Israeli.
Computability and Complexity 19-1 Computability and Complexity Andrei Bulatov Non-Deterministic Space.
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.
Complexity ©D.Moshkovitz 1 Turing Machines. Complexity ©D.Moshkovitz 2 Motivation Our main goal in this course is to analyze problems and categorize them.
1 dKS, Spring Some practical information Lecturers: Kristoffer Arnsfelt Hansen and Peter Bro Miltersen. Homepage:
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY Read sections 7.1 – 7.3 of the book for next time.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
Lecture 5 Turing Machines
CS Master – Introduction to the Theory of Computation Jan Maluszynski - HT Lecture NP-Completeness Jan Maluszynski, IDA, 2007
Theory of Computing Lecture 20 MAS 714 Hartmut Klauck.
1 The Cook-Levin Theorem Zeph Grunschlag. 2 Announcements Last HW due Thursday Please give feedback about course at oracle.seas.columbia.edu/wces oracle.seas.columbia.edu/wces.
Theory of Computing Lecture 19 MAS 714 Hartmut Klauck.
AUTOMATA THEORY VIII.
INHERENT LIMITATIONS OF COMPUTER PROGRAMS CSci 4011.
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.
Games and Complexity, Guangzhou Peter van Emde Boas KNOW YOUR NUMBERS ! The Impact of Complexity a short intro in Complexity theory Peter van Emde.
Complexity theory and combinatorial optimization Class #2 – 17 th of March …. where we deal with decision problems, finite automata, Turing machines pink.
Review Byron Gao. Overview Theory of computation: central areas: Automata, Computability, Complexity Computability: Is the problem solvable? –solvable.
Lecture 30. P, NP and NP Complete Problems 1. Recap Data compression is a technique to compress the data represented either in text, audio or image form.
The Complexity of Optimization Problems. Summary -Complexity of algorithms and problems -Complexity classes: P and NP -Reducibility -Karp reducibility.
Computational Complexity Theory Lecture 2: Reductions, NP-completeness, Cook-Levin theorem Indian Institute of Science.
Theory of Computing Lecture 17 MAS 714 Hartmut Klauck.
P, NP, and Exponential Problems Should have had all this in CS 252 – Quick review Many problems have an exponential number of possibilities and we can.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
Theory of Computing Lecture 21 MAS 714 Hartmut Klauck.
NP-completeness Class of hard problems. Jaruloj ChongstitvatanaNP-complete Problems2 Outline  Introduction  Problems and Languages Turing machines and.
Strings Basic data type in computational biology A string is an ordered succession of characters or symbols from a finite set called an alphabet Sequence.
Computability NP complete problems. Space complexity. Homework: [Post proposal]. Find PSPACE- Complete problems. Work on presentations.
CS 3813: Introduction to Formal Languages and Automata Chapter 14 An Introduction to Computational Complexity These class notes are based on material from.
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.
Umans Complexity Theory Lectures Lecture 1c: Robust Time & Space Classes.
NP-Completeness  For convenience, the theory of NP - Completeness is designed for decision problems (i.e. whose solution is either yes or no).  Abstractly,
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
Chapter 15 P, NP, and Cook’s Theorem. 2 Computability Theory n Establishes whether decision problems are (only) theoretically decidable, i.e., decides.
COMPLEXITY. Satisfiability(SAT) problem Conjunctive normal form(CNF): Let S be a Boolean expression in CNF. That is, S is the product(and) of several.
CS623: Introduction to Computing with Neural Nets (lecture-7) Pushpak Bhattacharyya Computer Science and Engineering Department IIT Bombay.
Theory of Computational Complexity Yuji Ishikawa Avis lab. M1.
Recall last lecture and Nondeterministic TMs Ola Svensson.
Chapter 7 Introduction to Computational Complexity.
Complexity, Decidability, Computability and other impossible questions Stephen Dolan, IMSA 2010.
Modeling Arithmetic, Computation, and Languages Mathematical Structures for Computer Science Chapter 8 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesTuring.
Part VI NP-Hardness.
COSC 3340: Introduction to Theory of Computation
Turing Machines Acceptors; Enumerators
Intro to Theory of Computation
Summary.
Intractable Problems Time-Bounded Turing Machines Classes P and NP
Part II Theory of Nondeterministic Computation
MA/CSSE 474 Theory of Computation Computation FSM Intro.
Recall last lecture and Nondeterministic TMs
Umans Complexity Theory Lectures
Intro to Theory of Computation
Presentation transcript:

CS848: Topics in Databases: Foundations of Query Optimization Topics covered  Review of complexity

CS848: Topics in Databases: Foundations of Query Optimization Turing machines (TMs) Formally define our notion computability. They consist of:  an arbitrarily large tape,  a finite tape alphabet, and  a finite state automaton (fsa). If the fsa is non-deterministic, then the TM is called a non-deterministic TM (NTM). Otherwise the TM is called a deterministic TM (DTM). Operations:  reading the current tape symbol,  overwriting the current tape symbol,  moving the tape head left or right, and  changing state (possibly non-deterministically).

CS848: Topics in Databases: Foundations of Query Optimization Computability, decidability and TMs A function F from  * to  * is computable iff there exists some TM that can be used to compute F as follows: 1.Place an arbitrary element w of the domain of F on the tape and position the read head at the first symbol. 2.Start executing the TM. 3.The TM halts with the tape containing F (w). A decision problem P is decidable iff it corresponds to a computable Boolean function; that is, if there exists a computable function with a domain consisting of all instances of the problem (suitably encoded) that computes true in cases where an instance is true, and false otherwise.

CS848: Topics in Databases: Foundations of Query Optimization Complexity Complexity theory is a study of the difficulty of decidable problems and computable functions, where difficulty is measured by some resource of interest, often the time and space needed by TMs to reason about instances of the problems or to compute functions.

CS848: Topics in Databases: Foundations of Query Optimization Complexity (cont’d) Let g be a function on the positive integers. The following are then defined.  DTIME(g) ´ { F : F is a computable function and requires at most g(w) steps to compute on a DTM for a given instance w}  NTIME(g) ´ { F : F is a computable function and requires at most g(w) steps to compute on a NTM for a given instance w}  DSPACE(g) ´ { F : F is a computable function and requires at most g(w) space to compute on a DTM for a given instance w}  NSPACE(g) ´ { F : F is a computable function and requires at most g(w) space to compute on a NTM for a given instance w}

CS848: Topics in Databases: Foundations of Query Optimization Complexity classes Let G be a set of functions on positive integers. We write the following to denote complexity classes.  DTIME( G ) ´  g 2 G DTIME(g)  NTIME( G ) ´  g 2 G NTIME(g)  DSPACE( G ) ´  g 2 G DSPACE(g)  NSPACE( G ) ´  g 2 G NSPACE(g)

CS848: Topics in Databases: Foundations of Query Optimization Common name for complexity classes Let Poly denote the set of polynomials on positive integers, and let Exp denote the set of functions {c n : c ¸ 1}. Some common names for some complexity classes: DTIME(Poly) ´ PTIME (or simply P) NTIME(Poly) ´ NP DSPACE(Poly) ´ PSPACE NSPACE(Poly) ´ NPSPACE DTIME(Exp) ´ DEXPTIME NTIME(Exp) ´ NEXPTIME

CS848: Topics in Databases: Foundations of Query Optimization Known results on complexity classes PTIME µ NP µ PSPACE ´ NPSPACE PSPACE µ DEXPTIME µ NEXPTIME PTIME  DEXPTIME NP  NEXPTIME

CS848: Topics in Databases: Foundations of Query Optimization Reducibility and completeness Let C and C 0 denote complexity classes. A decidable problem P in C is complete in C by C 0 reductions iff, for any other problem P 0 in C, there is a computable function in C 0 that reduces any instance of P 0 to an instance of P. We call C 0 the type of reduction. (A reduction problem is the problem of translating instances of one problem to instances of another.) Some common conventions.  NP-completeness: C is NP and C 0 is PTIME.  PSPACE-completeness: C is PSPACE and C 0 is PTIME.  DEXPTIME-completeness: C is DEXPTIME and C 0 is PTIME.