Paresh Gupta

advertisement
On computable numbers, with an
application to the
ENTSCHEIDUNGSPROBLEM
by
Alan Mathison Turing
COT 6421
Paresh Gupta
ENTSCHEIDUNGSPROBLEM?
•
Decision Problem
“ Does there exists a fully automatic
procedure or mechanical method which
decides whether given mathematical
statements from first order logic are
universally true or false? ”
2
Posed by
• In 17th Century Gottfried Leibnitz
 Mechanical machine to decide mathematical
statements
• 1928 - David Hilbert and Wilhelm
Ackermann
3
Index of Turing’s
Paper(1/2)
1. Computing Machines
2. Definitions
Automatic Machines
Computing Machines
Circle and circle-free Machines
Computable sequences and numbers
3. Examples of computable machines
4. Abbreviated tables
Further examples
4
Index of Turing’s
Paper(2/2)
5.
6.
7.
8.
9.
10.
Enumeration of computable sequences
The universal computing machine
Detailed description of universal machine
Application of diagonal process
The extent of the computable numbers
Examples of large classes of numbers
which are computable
11. Application to the Entsheidungsproblem
5
Computable Numbers
• Real numbers whose decimal representations
are calculable by finite means
• Computable numbers does not mean
computable functions of real or integral
variable, or computable predicates
• Class of computable numbers is enumerable
6
Computing Machines
• Analogous to humans machine is capable of finitely
many conditions to compute a number
• “ m-configurations ”
– Example- q1, q2, …, qR
• Supplied with “ tape ”, divided into sections (called
squares) each capable of bearing a symbol
• At any moment there is just one symbol S(r) in the rth square is in the machine
• Pair (qR , S(r)) form a configuration
7
Automatic machines
• Motion of the machine is completely determined
by the configurations
• Denoted as a-machine
• c-machine are choice machines
Computing machines
• a-machine which prints figures ( 0 or 1) on
its tape and some other tape symbols
• Binary symbols left on the tape is called
the sequence computed by the machine
8
Circular and circle-free
machines
• Circular
– A computing machine that never writes more than
a finite number of symbols ( 0’s or 1’s)
– If it reaches a configuration from which there is no
possible move, or moves and keeps printing same
set symbols
• Computable sequence and numbers
– A sequence is computable if it can be computed
by circle-free machine
– A number is computable if it differs by an integer
from the number computed by a circle-free
machine
9
Enumeration of Computable
Sequences (1/3)
Transition Table
• Standard Description ( S.D)
– Concatenation of the expressions qiSjSkLqm separated by
semi-colons.
– Each qi is replaced by the letter “D” followed by letter “A”
repeated i times
– Sj is replaced by “D” followed by “C” repeated j times
– Entirely made up of letters “A”, “C”, “D”, “L”, “R”, “N”,
and “;”
– E.g. DADDCRDAA;DAADDRDAAA;DAAADDCCRD;
10
Enumeration of Computable
Sequences (2/3)
• Description Number (D.N)
– Replacing letters “A”, “C”, “D”, “L”, “R”, “N”, and “;” by
“1”, “2”, “3”,…, “7” respectively gives a description of the
machine in Arabic numeral
• The D.N uniquely determines the structure and S.D of
a machine
• The machine whose D.N is n is described as M(n)
• E.g. 31173113353111731113322531111731111335317
11
Enumeration of Computable
Sequences (3/3)
• To each computable sequence there corresponds at least one D.N,
while to no D.N does there correspond more than one
computable sequence
• Computable sequence and numbers are therefore enumerable
Computable
Sequences
Description
Number (D.N)
Relationship between computable sequences and D.N
12
The Universal Computing
Machine (1/2)
• F-squares
– The symbols on F-squares form a continuous sequence
• E-squares
– The symbols on E-squares are liable to be erased
• It is possible to invent a single machine which can compute any
computable sequence
• How does U work?
– If this machine U, is supplied with a tape on the beginning of
which is written the S.D of the machine M, then U will
compute the same sequence as M
– Note that S.D of M is nothing but the rules of operation of M
13
The Universal Computing
Machine (2/2)
•
U bears on its tape the symbols е on an F-square and again an
е on the next F-square; followed by the S.D of the machine M
and a double colon “::”
•
The instructions of S.D are separated by semi-colons
•
Each instructions consists of five parts
i.
ii.
iii.
iv.
v.
“D” followed by a sequence of letters “A”. This describes the
relevant m-configuration.
“D” followed by a sequence of letters “C”. This describes the
scanned symbol.
“D” followed by another sequence of letters “C”. This describes
the symbol into which the scanned symbol is to be changed.
“L”, “R”, “N”, describing whether the machine is to move to
left, right, or not at all.
“D” followed by a sequence of letters “A”. This describes the
final m-configuration.
14
Application of diagonal
process (1/3)
• Turing brings out the significance of circle-free
machines by application of diagonal process to prove
that a computing machine might never halt
• Implies that it is impossible to decide whether a
given number is the D.N of a circle-free machine
in finite number of steps
• Argument that real numbers are not enumerable (by
Hobson, Theory of functions of a real variable Theory of
functions of a real variable in 1907 ) cannot be used to
prove that computable numbers are not enumerable
15
Application of diagonal
process (2/3)
• Idea is that
“ If the computable sequence is enumerable, let αn be the nth computable sequence, and let Φn(m) be the m-th figure
in αn. Let β be the sequence with 1- Φn(n) as its n-th
figure. Since β is computable, there exists a number K
such that 1- Φn(n)=Φk(n) for all n. Putting n=k, we have
1 = 2 Φk(K), i.e 1 is even. This is impossible therefore
computable sequences are not enumerable ”
• This argument is incorrect because of the assumption that β
is computable. It would be true if we could enumerate
computable sequences by finite means
16
Application of diagonal
process (3/3)
1
2
m
..
n
..
α0
α1
..
αn
Φn(m)
..
β
1- Φn(n)
..
17
Halting problem (1/4)
• Suppose we can invent a machine D
which when supplied with the S.D of a
machine M will test S.D and if M is
circular flag it with the symbol “u” and
if it is circle free mark it with “s”
• Using D with U we can compute a
sequence β1 with Φn(n) as its n-th figure
18
Halting Problem (2/4)
• We can construct a Machine H, which has its motion divided
into sections
• In the first N-1 sections integers 1,2,…,N-1 have been written
down and tested by machine D
• In the N-th section machine D tests N if N-1 is the D.N of a
circle-free machine
• If N is satisfactory, then H has found the first N figures of the
sequence of which a D.N is N are calculated
• If not then H goes on to the (N+1)-th section of its motion
19
Halting problem (3/4)
• Note that H is circle-free from its construction
– Because each section comes to an end after a finite number
of steps ( as per our assumption D takes finite amount of
time)
• Contradiction – H is circular
– Let K be the D.N of H
– In the k-th section H tests if K is satisfactory
– Since H is circle-free verdict of D for K cannot be circular
(“u”)
– On the contrary it also cannot be circle-free (“s”) because Kth section would have to compute first R(K-1) figures of the
sequence and then R(k)-th figure
– But R(k)-th figure would never be found
20
Halting problem (4/4)
Therefore H is circular and D cannot
exist which can test if given the S.D of a
machine M, if M is circular or circlefree in finite amount of time
21
Halting problem- version 2
• There can be no machine ξ, which when applied with the S.D of
a machine M, will determine whether M ever prints a symbol ( 0
say )
• If there exists such a machine ξ, then there is a general process
for determining whether machine M prints 0 infinitely often
• Let M1 be a machine which prints the same sequence as M,
except that it prints Õ where first 0 was printed by M
• M2 has prints two symbols 0 replaced by Õ, and so on M3, M4,
.. can be created
22
Halting problem- version 2
• Let F be a machine which, when supplied with the S.D of M will
write down successively the S.D of M,M1, M2,…
• Combining F with machine ξ gives us a machine G
• G first writes S.D of M using M and uses ξ to test if it has any 0’s
in it
• Symbol :0: is written if it is found that M never prints a 0
• Similar actions are taken on M1, M2,…
• If G is tested with ξ and if G never prints :0: then M prints 0
infinitely many often
• Similarly we can design a general process for determining if M
prints 1 infinitely often
• By combining all of these machines we have a way of
determining whether M prints infinity of figures
• This implies we have a machine for determining whether M is
circle-free, but that is impossible
• Therefore machine ξ cannot exist
23
Application to the
Entsheidungsproblem (1/4)
• In 1931 Hilbert and Ackermann suggested
that there exists a mechanical solution to the
Entsheidungsproblem
• In 1936 Turing proposed that there can be no
general process for determining whether a
given formula Ŭ of functional calculus K is
provable in a finite amount of time
24
Application to the
Entsheidungsproblem (2/4)
• Different from Gödel’s Incompleteness
Theorem which states that there propositions
Ŭ such that neither Ŭ or – Ŭ is provable
• Note that if negation of Gödel's Theorem is
proved then we have an immediate solution to
Decision problem
– i.e. For propositions Ŭ, either Ŭ or – Ŭ is provable
25
Application to the
Entsheidungsproblem (3/4)
•
Proof
a) If symbol S1( i.e. 0 ) appears on the tape
in some complete configuration of M,
then Un(M) is provable
b) If Un(M) is provable, then S1 appears on
the tape in some complete configuration
of M
26
Application to the
Entsheidungsproblem (4/4)
• If we assume that Entsheidungsproblem can
be solved
• Then we can determine if Un(M) is provable
• This implies that there is a process for
determining that M ever prints a symbol 0.
• But this is impossible
• Hence Entsheidungsproblem cannot be solved
27
?’s
28
Download