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 Turing, Alan (1912-1954) Church-Turing Thesis Every effective computation or algorithm can be carried out by a Turing Machine. 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. Unsolvable? 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. Determination of Problems’ Solvability Methods: • Problem Reduction • Diagonalization Principle • Rice’s Theorem Computation Theory Complexities Unsolvability vs. Solvability Unsolvable Solvable Complexities Can a solvable problem be solved in practical sense? Time Complexity Space Complexity Solvable P and NP NP P P and NP Polynomial-Time Solvable NP P Nondeterministi c PolynomialTime Solvable P and NP P = NP ? No answer, now. NP P NP-Completeness 1. L NP L NP-Complete iff 2. L’ NP p.r L NP P NP-Complete 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) – – 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: Keith Clark and Don Cowell Publisher: McGraw-Hill Companies 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%
© Copyright 2026 Paperzz