Computation Theory 主主主 主主主 :
Jan 06, 2016
Computation Theory
主講人:虞台文
Content
OverviewThe Limitation of ComputingComplexitiesTextbooks & 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 (1912-1954)
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
Unsolvable Solvable
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
Nondeterministic Polynomial-
TimeSolvable
NP
P and NP
P
P = NP ? No answer, now.
NP
NP-Completeness
P NP-Complete
L NP-Complete iff1. 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
BoundedTiling 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 Theor
y 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 Papadimitri
ou– 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%