26
Computation Theory 主主主 主主主

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

Embed Size (px)

Citation preview

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%