Document

Turing Machine
B89901144 侯奕宏
The Birth of Turing Machine
At the end of the 19th century, Gottlob Frege conjectured thatmathematics
could be built from fundamental logic.
In 1900 David Hilbert supported it and asked whether there is a process
according to which it can be determined by a finite number of operations for
computing an integral root of a polynomial.
In 1931 Kurt G¨odel showed that every system built upon fundamental logic
has statements that cannot be proven true or false
What mathematical functions lack effective solutions?
In 1936 many papers appeared to shed light on that question: Church’s
Lambda calculus, Kleene’s (primitive) recursive functions, Turing’s system
now called Turing machines, and Post’s system similar to Turing machines.
All these systems are proven to be equal. Church then proposed “Church’s
Thesis,” or “Church-Turing Thesis,” which states that mathematical
problems that are intrinsically solvable are those that are effectively solvable in
one of (and thus, any of) the three computational models.
The thesis also suggests that the notion of effective computability is
model-independent.
Definition
A Turing machine is a step-wise computing devise, which consists of
1. an infinitely long tape that is divided into tape squares (or tape
cells),
2. a head that is scanning on the tape and is located on a square, and
3. a finite control that maintains the current state.
A formal definition is :
An example is :
Countable/Uncountable
A set is countable if either it is finite or it has the same size as N; i.e.,there is a
one-to-one, onto correspondence between N(or there is a bijection from
the set to N).
Fact. Let Q be the set of all positive rational numbers and R the set of all
positive real numbers. Then Q is countable while R is not.
Corollary. There is a language that is not Turing-recognizable.
Proof The set of Turing machines is countable:
1. Fix an encoding scheme of Turing machines on an alphabet Σ.
2. Go through all the strings in Σ, e.g., in lexicographic order, and assign
numbers to all legal encodings by counting how many legal encodings
have been seen so far. A language overΣ can be viewed as an infinite
binary number 0.b1b2b3…, called the characteristic sequence, where for
each i >= 1, bi corresponds to the membership of the ith string in the language.
So the languages have the same cardinality as the set of binary reals between
0 and 1, which is uncountable.
Complexity and Gödel Incomplete Theorem
Complexity
一些符號和名詞的介紹:
r
1r
Ln(r;c)= O(ec((ln n) (lnln n) ) )
 Ln(0;c):linear O((ln n)c)
 Ln(1;c):exponential O( nc)
這個符號是主要來看一個演算法到底有多接近 polynomial time。
Reduction
Let p1 and p2 be 2 decision problems. We say that p1 reduces to p2 if there
exists an algorithm that is polynomial time as a function of the input length of p1 and
that, given any instance P1 of p1, constructs an instance P2 of p2 such that the answer
for P1 is the same as the answer in P2
Problems:
 Problem instance: a particular case of the task
 Search problem: it may have several correct answers
 Decision problem: answer yes or no
常見的 Class 的介紹
P class:
A decision problem p is in class P if there exists a constant c and an algorithm
such that if an instance of p has input length <=n, then the algorithm answers the
question in time O(nc)
NP class:
A decision problem p is in the class NP, if given any instance of p, a person with
unlimited computing power can answer it “yes”, and another person can verify it
in time P
NP complete
A problem p is NP-complete
(1) if every other problem q in NP can be reduced to P in polynomial time
(2) p is in NP
應用在密碼學上的分析:
 RSA:factorization ( quadratic sieve and number field sieve )
 quadratic sieve: (Ln(1/2;c))
 number field sieve:(Ln(1/3;c))
 ECC:exponential time
這也說明了 ECC 160 bits 的 key 可以和 RSA1024bits 的 key 有相同的安全性
的原因。因為 ECC 目前只有 exponential time 的方法,可是 RSA 卻有 subexponential time 的方法。
Gödel Incomplete Theorem
定理:
 All consistent axiomatic formulations of number theory include undecidable
propositions
 Any formal system that is interesting enough to formulate its own consistency
can prove its own consistency iff it is inconsistent.
簡單來說,就是不存在一個完美的公理系統,使得所有真的東西都可以被證明。
意義:
 All formal mathematical systems have only limited power.
 We will never be able to have a system that can prove all true statements about
{0,1,2,…}, +, .
 Note that this result predates that of Turing and the solution of Hilbert’s
polynomial problem.
所以說,任何電腦只要是邏輯的系統的話都不可能解決無限的問題。所以他的能
力是有限的。根據這個定理的推論,不可能設計出一個系統不怕任何病毒的攻
擊,也不可能設計出一個不可解的病毒。
影響:
 Turing: general recursive functions
 John Von Neumann:真正實做出來電腦
 AI:認為 AI 的發展必有極限。