Computation Theory 主講人:虞台文. Content Overview The Limitation of Computing Complexities Textbooks & Grading.

Slides:



Advertisements
Similar presentations
CS 345: Chapter 9 Algorithmic Universality and Its Robustness
Advertisements

Complexity Theory Lecture 1 Lecturer: Moni Naor. Computational Complexity Theory Study the resources needed to solve computational problems –Computer.
Programming Languages Wrap-up. Your Toolkit Object-oriented Imperative Functional Logic.
Recap CS605: The Mathematics and Theory of Computer Science.
CPSC 411, Fall 2008: Set 12 1 CPSC 411 Design and Analysis of Algorithms Set 12: Undecidability Prof. Jennifer Welch Fall 2008.
1 NP-Completeness Objectives: At the end of the lesson, students should be able to: 1. Differentiate between class P, NP, and NPC 2. Reduce a known NPC.
RELATIVIZATION CSE860 Vaishali Athale. Overview Introduction Idea behind “Relativization” Concept of “Oracle” Review of Diagonalization Proof Limits of.
CS1001 Lecture 23. Overview Incompleteness and the Halting Problem Incompleteness and the Halting Problem Methods in Artificial Intelligence Methods in.
Automata & Formal Languages, Feodor F. Dragan, Kent State University 1 CHAPTER 5 Reducibility Contents Undecidable Problems from Language Theory.
Chapter 11 Limitations of Algorithm Power Copyright © 2007 Pearson Addison-Wesley. All rights reserved.
1 CSE 417: Algorithms and Computational Complexity Winter 2001 Lecture 18 Instructor: Paul Beame.
Introduction to Formal Languages and Automata
Halting Problem. Background - Halting Problem Common error: Program goes into an infinite loop. Wouldn’t it be nice to have a tool that would warn us.
Final Exam Review Cummulative Chapters 0, 1, 2, 3, 4, 5 and 7.
1.1 Chapter 1: Introduction What is the course all about? Problems, instances and algorithms Running time v.s. computational complexity General description.
More Theory of Computing
Computability and Modeling Computation What are some really impressive things that computers can do? –Land the space shuttle (and other aircraft) from.
Introduction to the Theory of Computation
Computational Complexity Polynomial time O(n k ) input size n, k constant Tractable problems solvable in polynomial time(Opposite Intractable) Ex: sorting,
Course Outline Mathematical Preliminaries Turing Machines
1 Theory of Computation 計算理論 2 Instructor: 顏嗣鈞 Web: Time: 9:10-12:10 PM, Monday Place: BL 103.
Introduction to the Theory of Computation
CS 390 Introduction to Theoretical Computer Science.
© M. Winter COSC/MATH 4P61 - Theory of Computation COSC/MATH 4P61 Theory of Computation Michael Winter –office: J323 –office hours: Mon & Fri, 10:00am-noon.
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.
Introduction to the Theory of Computation Fall Semester, School of Information, Renmin University of China.
The Recursion Theorem Pages 217– ADVANCED TOPICS IN C O M P U T A B I L I T Y THEORY.
CSCI 2670 Introduction to Theory of Computing December 1, 2004.
CSE 3813 Introduction to Formal Languages and Automata Chapter 14 An Introduction to Computational Complexity These class notes are based on material from.
1 Lower Bounds Lower bound: an estimate on a minimum amount of work needed to solve a given problem Examples: b number of comparisons needed to find the.
CS 345: Chapter 8 Noncomputability and Undecidability Or Sometimes You Can’t Get It Done At All.
CSCI 3160 Design and Analysis of Algorithms Tutorial 10 Chengyu Lin.
Saeid Pashzadeh Jan 2009 Theory of Computation 1.
1 Chapter 34: NP-Completeness. 2 About this Tutorial What is NP ? How to check if a problem is in NP ? Cook-Levin Theorem Showing one of the most difficult.
Beauty and Joy of Computing Limits of Computing Ivona Bezáková CS10: UC Berkeley, April 14, 2014 (Slides inspired by Dan Garcia’s slides.)
1 Theory of Computation 計算理論 2 Instructor: 顏嗣鈞 Web: Time: 9:10-12:10 PM, Monday Place: BL.
THEORY OF COMPUTATION Komate AMPHAWAN 1. 2.
CS 3813: Introduction to Formal Languages and Automata Chapter 12 Limits of Algorithmic Computation These class notes are based on material from our textbook,
1Computer Sciences Department. Book: INTRODUCTION TO THE THEORY OF COMPUTATION, SECOND EDITION, by: MICHAEL SIPSER Reference 3Computer Sciences Department.
Complexity & Computability. Limitations of computer science  Major reasons useful calculations cannot be done:  execution time of program is too long.
Copyright © 2012 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Computer Science: An Overview Eleventh Edition by J. Glenn Brookshear Chapter.
CS130: Theory of Computation An introductory course on the theory of automata and formal languages: models of machines, languages and grammars, relationship.
CMPT 308 — Computability and Complexity Fall 2004 Instructor: Andrei Bulatov, TA: Ramsay Dyer, Learning.
Chapter 11 Introduction to Computational Complexity Copyright © 2011 The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 1.
Chapter 11 Theory of Computation © 2007 Pearson Addison-Wesley. All rights reserved.
Chapter 12 Theory of Computation Introduction to CS 1 st Semester, 2014 Sanghyun Park.
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:
Computability. Turing Machines Read input letter & tape letter, write tape letter, move left or right.
Computation Theory Asia Mahdi. Textbooks Programs, Machines and Computation: An Introduction to the Theory of Computing - Authors: Keith Clark and Don.
Modeling Arithmetic, Computation, and Languages Mathematical Structures for Computer Science Chapter 8 Copyright © 2006 W.H. Freeman & Co.MSCS SlidesTuring.
Formal Foundations-II [Theory of Automata]
Chapter 12: Theory of Computation
Introduction to the Theory of Computation
1.5 Intractable problems.
Theoretical informatics II
Turing Machines.
Unsolvable Problems December 4, 2017.
Principles of Computing – UFCFA Lecture-1
By John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman
CSCE 411 Design and Analysis of Algorithms
CLASSES P AND NP.
Halting Problem.
The Theory of Computation
Theoretical informatics II
Principles of Computing – UFCFA Week 1
The Theory of Computation
Lecture 4: Unsolvable Problems
Lecture 6: Computational Complexity
Theoretical informatics II
Presentation transcript:

Computation Theory 主講人:虞台文

Content Overview The Limitation of Computing Complexities Textbooks & Grading

Computation Theory Overview

What is Computation? Computation can be actually defined as finding a solution to a problem from given inputs by means of an algorithm. What is an algorithm? Are following two statements `equivalent’? – What can be computed? – What can be solved algorithmically?

Tools for Computation Your grandparents (or parents) – pen and paper, or – chalk and slate, or – mentally, – sometimes with the aid of tables. Now, electronic computers – The theory of computation began early in the twentieth century, before modern electronic computers had been invented.

Computation Models Register Machines Turing Machines Markov Algorithmic Machines Recursive Functions -calculus Equivalent in computational power

Church-Turing Thesis Every effective computation or algorithm can be carried out by a Turing Machine. Turing, Alan ( ) Effective Computation Algorithm Any computer program Truing Machine

Computation Theory The Limitation of Computing

What Can be Done by a Computer? Problem Solvability What computers can? What computers can't?

Halting Problem Given a description of an algorithm and a description of its initial arguments, determine whether the algorithm, when executed with these arguments, ever halts.

Halting Problem Given a description of an algorithm and a description of its initial arguments, determine whether the algorithm, when executed with these arguments, ever halts. Unsolvable?

Determination of Problems’ Solvability Methods: Problem Reduction Diagonalization Principle Rice’s Theorem

Computation Theory Complexities

Unsolvability vs. Solvability UnsolvableSolvable

Complexities Solvable Can a solvable problem be solved in practical sense? Time Complexity Space Complexity

NP P and NP P

NP P and NP P Polynomial-Time Solvable Nondeterministi c Polynomial- Time Solvable

NP P and NP P P = NP ? No answer, now.

NP NP -Completeness P NP -Complete L  NP -Complete iff 1. L  NP 2. L’  NP p.r L P = NP can be concluded if you can find one L  NP -Complete being polynomial-time solvable, i.e., L  P.

Some NP -Complete Problems TSP (Traveling Salesman Problem)

Some NP -Complete Problems Bounded Tiling Problem

More on NP -Completeness How to prove a problem being NP -complete or NP -hard? – Problem Reduction How to `solve’ the problem if it is known to be NP -complete or NP -hard? – E.g., by heuristic algorithms

More Advance Topics Molecular Computation Theory Quantum Computation Theory

Computation Theory Textbooks & Grading

Textbooks Programs, Machines and Computation: An Introduction to the Theory of Computing (out of print) – Authors: Keith Clark and Don Cowell – Publisher: McGraw-Hill Companies Elements of the Theory of Computation, 2/E – Authors: Harry R. Lewis, Christos H. Papadimitriou and Christos Papadimitriou – Publisher: Prentice Hall Introduction to Automata Theory, Languages, and Computation, 2/E – Authors: John E. Hopcroft, Rajeev Motwani and Jeffrey D. Ullman – Publisher: Addison-Wesley An Introduction to Formal Languages and Automata, 3/E – Author: Peter Linz – Publisher: Jones and Bartlett

Grading Homework: 20% You have to hand in each assignment on time In-Class Examination: 20% Midterm Examination: 30% Final Examination: 30%