Turing Machines (11.5) Longin Jan Latecki Temple University
description
Transcript of Turing Machines (11.5) Longin Jan Latecki Temple University
![Page 1: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/1.jpg)
1
Turing Machines (11.5) Longin Jan LateckiTemple University
Based on slides by Costas Busch from the coursehttp://www.cs.rpi.edu/courses/spring05/modcomp/and …
![Page 2: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/2.jpg)
2
DFA - regular languagesPush down automata - Context-freeBounded Turing M’s - Context sensitiveTuring machines - Phrase-structure
Models of computing
![Page 3: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/3.jpg)
3
Foundations
The theory of computation and the practical application it made possible — the computer — was developed by an Englishman called Alan Turing.
![Page 4: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/4.jpg)
4
Alan Turing1912 (23 June): Birth, Paddington, London1931-34: Undergraduate at King's College, Cambridge University1932-35: Quantum mechanics, probability, logic1936: The Turing machine, computability, universal machine1936-38: Princeton University. Ph.D. Logic, algebra, number theory 1938-39: Return to Cambridge. Introduced to German Enigma cipher machine1939-40: The Bombe, machine for Enigma decryption
1939-42: Breaking of U-boat Enigma, saving battle of the Atlantic1946: Computer and software design leading the world.1948: Manchester University1949: First serious mathematical use of a computer1950: The Turing Test for machine intelligence1952: Arrested as a homosexual, loss of security clearance1954 (7 June): Death (suicide) by cyanide poisoning, Wilmslow, Cheshire.
—from Andrew Hodges http://www.turing.org.uk/turing/
![Page 5: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/5.jpg)
5
The Decision Problem
In 1928 the German mathematician, David Hilbert (1862-1943), asked whether there could be a mechanical way (i.e. by means of a fully specifiable set of instructions) of determining whether some statement in a formal system like arithmetic was provable or not.In 1936 Turing published a paper the aim of which was to show that there was no such method. “On computable numbers, with an application to the Entscheidungs problem.” Proceedings of the London Mathematical Society, 2(42):230-265).
![Page 6: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/6.jpg)
6
The Turing MachineIn order to argue for this claim, he needed a clear concept of “mechanical procedure.”His idea — which came to be called the Turing machine — was this:
(1) A tape of infinite length
(2) Finitely many squares of the tape have a single symbol from a finite language.
(3) Someone (or something) that can read the squares and write in them.
(4) At any time, the machine is in one of a finite number of internal states.
(5) The machine has instructions that determine what it does given its internal state and the symbol it encounters on the tape. It can change its internal state; change the symbol on
the square; move forward; move backward; halt (i.e. stop).
![Page 7: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/7.jpg)
7
01
1
1
1
Current state = 1
If current state = 1and current symbol = 0then new state = 10new symbol = 1move right
0
![Page 8: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/8.jpg)
8
11
1
1
1
Current state = 10
If current state = 1and current symbol = 0then new state = 10new symbol = 1move right
![Page 9: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/9.jpg)
9
11
1
1
1
Current state = 10
If current state = 1and current symbol = 0then new state = 10new symbol = 1move right
![Page 10: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/10.jpg)
10
FunctionsIt is essential to the idea of a Turing machine that it is not a physical machine, but an abstract one — a set of procedures.
It makes no difference whether the machine is embodied by a person in a boxcar on a track, or a person with a paper and pencil, or a smart and well-trained flamingo.
![Page 11: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/11.jpg)
11
Turing’s TheoremIn the 1936 paper Turing proved that there are “general-purpose” Turing machines that can compute whatever any other Turing machine.This is done by coding the function of the special-purpose machine as instructions of the other machine — that is by “programming” it. This is called Turing’s theorem.These are universal Turing machines, and the idea of a coding for a particular function fed into a universal Turing machine is basically our conception of a computer and a stored program. The concept of the universal Turing machine is just the concept of the computer as we know it.
![Page 12: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/12.jpg)
12
First computers: custom computing machines
1950 -- Eniac: the control is hardwired manually foreach problem.
Control
Input tape (read only)
Output tape (write only)
Work tape (memory)
1940: VON NEUMANN: DISTINCTION BETWEEN DATA AND INSTRUCTIONS
![Page 13: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/13.jpg)
13
Can Machines Think?In “Computing machinery and intelligence,” written in 1950, Turing asks whether machines can think.He claims that this question is too vague, and proposes, instead, to replace it with a different one.That question is: Can machines pass the “imitation game” (now called the Turing test)? If they can, they are intelligent. Turing is thus the first to have offered a rigorous test for the determination of intelligence quite generally.
![Page 14: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/14.jpg)
14
The Turing TestThe game runs as follows. You sit at a computer terminal and have an electronic conversation. You don’t know who is on the other end; it could be a person or a computer responding as it has been programmed to do.If you can’t distinguish between a human being and a computer from your interactions, then the computer is intelligent.Note that this is meant to be a sufficient condition of intelligence only. There may be other ways to be intelligent.
![Page 15: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/15.jpg)
15
Artificial Intelligence
![Page 16: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/16.jpg)
16
The Church-Turning ThesisTuring, and a logician called Alonzo Church (1903-1995), independently developed the idea (not yet proven by widely accepted) that whatever can be computed by a mechanical procedure can be computed by a Turing machine.This is known as the Church-Turing thesis.
![Page 17: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/17.jpg)
17
AI: The ArgumentWe’ve now got the materials to show that AI is possible:
P1: Any function that can be computed by a mechanical procedure can be computed by a Turing machine. (Church-Turing thesis)
P2: Thinking is nothing more than the computing of functions by mechanical procedures (i.e., thinking is symbol manipulation). (Functionalist-Computationalist thesis)
C1: Therefore, thinking can be performed by a Turing machine.
P3: Turing machines are multiply realizable. In particular, they can be realized by computers, robots, etc.
It is possible to build a computer, robot, etc. that can think. That is, AI is possible.
![Page 18: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/18.jpg)
18
Turing Machines
![Page 19: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/19.jpg)
19
The Language Hierarchy
*aRegular Languages
Context-Free Languagesnnba Rww
nnn cba ww?
**ba
?
![Page 20: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/20.jpg)
20
*aRegular Languages
Context-Free Languagesnnba Rww
nnn cba ww
**ba
Languages accepted byTuring Machines
![Page 21: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/21.jpg)
21
A Turing Machine
............Tape
Read-Write headControl Unit
![Page 22: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/22.jpg)
22
The Tape
............
Read-Write head
No boundaries -- infinite length
The head moves Left or Right
![Page 23: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/23.jpg)
23
............
Read-Write head
The head at each time step:
1. Reads a symbol 2. Writes a symbol 3. Moves Left or Right
![Page 24: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/24.jpg)
24
............
Example:Time 0
............Time 1
1. Reads2. Writes
a a cb
a b k c
ak
3. Moves Left
![Page 25: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/25.jpg)
25
............Time 1
a b k c
............Time 2a k cf
1. Reads2. Writes
bf
3. Moves Right
![Page 26: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/26.jpg)
26
The Input String
............
Blank symbol
head
a b ca
Head starts at the leftmost positionof the input string
Input string
![Page 27: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/27.jpg)
27
............
Blank symbol
head
a b ca
Input string
Remark: the input string is never empty
![Page 28: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/28.jpg)
28
States & Transitions
1q 2qLba ,
Read Write Move Left
1q 2qRba ,
Move Right
![Page 29: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/29.jpg)
29
Example:
1q 2qRba ,
............ a b ca
Time 1
1qcurrent state
![Page 30: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/30.jpg)
30
............ a b caTime 1
1q 2qRba ,
............ a b cbTime 2
1q
2q
![Page 31: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/31.jpg)
31
............ a b caTime 1
1q 2qLba ,
............ a b cbTime 2
1q
2q
Example:
![Page 32: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/32.jpg)
32
............ a b caTime 1
1q 2qRg,
............ ga b cbTime 2
1q
2q
Example:
![Page 33: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/33.jpg)
33
Determinism
1q
2qRba ,
Allowed Not Allowed
3qLdb ,
1q
2qRba ,
3qLda ,
No lambda transitions allowed
Turing Machines are deterministic
![Page 34: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/34.jpg)
34
Partial Transition Function
1q
2qRba ,
3qLdb ,
............ a b ca
1q
Example:
No transitionfor input symbol c
Allowed:
![Page 35: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/35.jpg)
35
Halting
The machine halts if there areno possible transitions to follow
![Page 36: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/36.jpg)
36
Example:
............ a b ca
1q
1q
2qRba ,
3qLdb ,
No possible transition
HALT!!!
![Page 37: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/37.jpg)
37
Final States
1q 2q Allowed
1q 2q Not Allowed
• Final states have no outgoing transitions
• In a final state the machine halts
![Page 38: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/38.jpg)
38
Acceptance
Accept Input If machine halts in a final state
Reject Input
If machine halts in a non-final state or If machine enters an infinite loop
![Page 39: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/39.jpg)
39
Turing Machine Example
A Turing machine that accepts the language:*aa
0q
Raa ,
L,1q
![Page 40: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/40.jpg)
40
aaTime 0
0q
a
0q
Raa ,
L,1q
![Page 41: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/41.jpg)
41
aaTime 1
0q
a
0q
Raa ,
L,1q
![Page 42: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/42.jpg)
42
aaTime 2
0q
a
0q
Raa ,
L,1q
![Page 43: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/43.jpg)
43
aaTime 3
0q
a
0q
Raa ,
L,1q
![Page 44: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/44.jpg)
44
aaTime 4
1q
a
0q
Raa ,
L,1q
Halt & Accept
![Page 45: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/45.jpg)
45
Rejection Example
0q
Raa ,
L,1q
baTime 0
0q
a
![Page 46: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/46.jpg)
46
0q
Raa ,
L,1q
baTime 1
0q
a
No possible TransitionHalt & Reject
![Page 47: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/47.jpg)
47
Infinite Loop Example
0q
Raa ,
L,1q
Lbb ,
A Turing machine for language *)(* babaa
![Page 48: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/48.jpg)
48
baTime 0
0q
a
0q
Raa ,
L,1q
Lbb ,
![Page 49: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/49.jpg)
49
baTime 1
0q
a
0q
Raa ,
L,1q
Lbb ,
![Page 50: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/50.jpg)
50
baTime 2
0q
a
0q
Raa ,
L,1q
Lbb ,
![Page 51: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/51.jpg)
51
baTime 2
0q
a
baTime 3
0q
a
baTime 4
0q
a
baTime 50q
a
Infinite loop
![Page 52: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/52.jpg)
52
Because of the infinite loop:
•The final state cannot be reached
•The machine never halts
•The input is not accepted
![Page 53: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/53.jpg)
53
Another Turing Machine Example
Turing machine for the language }{ nnba
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
![Page 54: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/54.jpg)
54
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
ba
0q
a bTime 0
![Page 55: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/55.jpg)
55
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
bx
1q
a b Time 1
![Page 56: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/56.jpg)
56
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
bx
1q
a b Time 2
![Page 57: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/57.jpg)
57
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
yx
2q
a b Time 3
![Page 58: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/58.jpg)
58
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
yx
2q
a b Time 4
![Page 59: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/59.jpg)
59
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
yx
0q
a b Time 5
![Page 60: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/60.jpg)
60
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
yx
1q
x b Time 6
![Page 61: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/61.jpg)
61
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
yx
1q
x b Time 7
![Page 62: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/62.jpg)
62
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
yx x y
2q
Time 8
![Page 63: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/63.jpg)
63
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
yx x y
2q
Time 9
![Page 64: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/64.jpg)
64
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
yx
0q
x y Time 10
![Page 65: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/65.jpg)
65
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
yx
3q
x y Time 11
![Page 66: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/66.jpg)
66
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
yx
3q
x y Time 12
![Page 67: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/67.jpg)
67
0q 1q 2q3qRxa ,
Raa ,Ryy ,
Lyb ,
Laa ,Lyy ,
Rxx ,
Ryy ,
Ryy ,4q
L,
yx
4q
x y
Halt & Accept
Time 13
![Page 68: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/68.jpg)
68
If we modify the machine for the language }{ nnba
we can easily construct a machine for the language }{ nnn cba
Observation:
![Page 69: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/69.jpg)
69
Formal Definitionsfor
Turing Machines
![Page 70: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/70.jpg)
70
Transition Function
1q 2qRba ,
),,(),( 21 Rbqaq
![Page 71: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/71.jpg)
71
1q 2qLdc ,
),,(),( 21 Ldqcq
Transition Function
![Page 72: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/72.jpg)
72
Turing Machine:
),,,,,,( 0 FqQM
States
Inputalphabet
Tapealphabet
Transitionfunction
Initialstate
blank
Finalstates
![Page 73: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/73.jpg)
73
Configuration
ba
1q
a
Instantaneous description:
c
baqca 1
![Page 74: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/74.jpg)
74
yx
2q
a bTime 4
yx
0q
a bTime 5
A Move: aybqxxaybq 02
![Page 75: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/75.jpg)
75
yx
2q
a bTime 4
yx
0q
a bTime 5
bqxxyybqxxaybqxxaybq 1102
yx
1q
x bTime 6
yx
1q
x bTime 7
![Page 76: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/76.jpg)
76
bqxxyybqxxaybqxxaybq 1102
bqxxyxaybq 12Equivalent notation:
![Page 77: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/77.jpg)
77
Initial configuration: wq0
ba
0q
a b
wInput string
![Page 78: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/78.jpg)
78
The Accepted Language
For any Turing Machine M
}:{)( 210 xqxwqwML f
Initial state Final state
![Page 79: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/79.jpg)
79
Standard Turing Machine
• Deterministic
• Infinite tape in both directions
•Tape is the input/output file
The machine we described is the standard:
![Page 80: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/80.jpg)
80
Computing Functionswith
Turing Machines
![Page 81: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/81.jpg)
81
A function )(wf
Domain: Result Region:
has:
D
Dw
S
Swf )()(wf
![Page 82: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/82.jpg)
82
A function may have many parameters:
yxyxf ),(
Example: Addition function
![Page 83: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/83.jpg)
83
Integer Domain
Unary:
Binary:
Decimal:
11111
101
5
We prefer unary representation:
easier to manipulate with Turing machines
![Page 84: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/84.jpg)
84
Definition:A function is computable ifthere is a Turing Machine such that:
fM
Initial configuration Final configuration
Dw Domain
0q
w
fq
)(wf
final stateinitial state
For all
![Page 85: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/85.jpg)
85
)(0 wfqwq f
Initial Configuration
FinalConfiguration
A function is computable ifthere is a Turing Machine such that:
fM
In other words:
Dw DomainFor all
![Page 86: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/86.jpg)
86
Example
The function yxyxf ),( is computable
Turing Machine:
Input string: yx0 unary
Output string: 0xy unary
yx, are integers
![Page 87: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/87.jpg)
87
0
0q
1 1 1 1
x y
1 Start
initial state
The 0 is the delimiter that separates the two numbers
![Page 88: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/88.jpg)
88
0
0q
1 1 1 1
x y
1
0
fq
1 1
yx
11
Start
Finish
final state
initial state
![Page 89: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/89.jpg)
89
0
fq
1 1
yx
11Finish
final state
The 0 helps when we usethe result for other operations
![Page 90: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/90.jpg)
90
0q
Turing machine for function
1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
yxyxf ),(
![Page 91: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/91.jpg)
91
Execution Example:
11x
11y 0
0q
1 1 1 1
Time 0x y
Final Result
0
4q
1 1 1 1yx
(2)
(2)
![Page 92: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/92.jpg)
92
0
0q
1 1Time 0
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
1 1
![Page 93: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/93.jpg)
93
0q
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
01 11 1Time 1
![Page 94: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/94.jpg)
94
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
0
0q
1 1 1 1Time 2
![Page 95: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/95.jpg)
95
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
1q
1 11 11Time 3
![Page 96: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/96.jpg)
96
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
1q
1 1 1 11Time 4
![Page 97: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/97.jpg)
97
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
1q
1 11 11Time 5
![Page 98: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/98.jpg)
98
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
2q
1 1 1 11Time 6
![Page 99: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/99.jpg)
99
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
3q
1 11 01Time 7
![Page 100: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/100.jpg)
100
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
3q
1 1 1 01Time 8
![Page 101: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/101.jpg)
101
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
3q
1 11 01Time 9
![Page 102: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/102.jpg)
102
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
3q
1 1 1 01Time 10
![Page 103: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/103.jpg)
103
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
3q
1 11 01Time 11
![Page 104: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/104.jpg)
104
0q 1q 2q 3qL, L,01
L,11
R,
R,10
R,11
4q
R,11
4q
1 1 1 01
HALT & accept
Time 12
![Page 105: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/105.jpg)
105
Another Example
The function xxf 2)( is computable
Turing Machine:
Input string: x unary
Output string: xx unary
x is integer
![Page 106: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/106.jpg)
106
0q
1 1
x
1
1
fq
1 1
x2
11
Start
Finish
final state
initial state
![Page 107: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/107.jpg)
107
Turing Machine Pseudocode for xxf 2)(
• Replace every 1 with $
• Repeat:• Find rightmost $, replace it with 1
• Go to right end, insert 1
Until no more $ remain
![Page 108: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/108.jpg)
108
0q 1q 2q
3q
R,1$
L,1
L,
R$,1 L,11 R,11
R,
Turing Machine for xxf 2)(
![Page 109: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/109.jpg)
109
0q 1q 2q
3q
R,1$
L,1
L,
R$,1 L,11 R,11
R,
Example
0q
1 1
3q
1 11 1
Start Finish
![Page 110: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/110.jpg)
110
Another Example
The function ),( yxf
is computable 0
1 yx
yx
if
if
![Page 111: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/111.jpg)
111
Turing Machine for
Input: yx0
Output: 1 0or
),( yxf0
1 yx
yx
if
if
![Page 112: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/112.jpg)
112
Turing Machine Pseudocode:
Match a 1 from with a 1 from x y
• Repeat
Until all of or is matchedx y
• If a 1 from is not matched erase tape, write 1 else erase tape, write 0
x)( yx
)( yx
![Page 113: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/113.jpg)
113
Combining Turing Machines
![Page 114: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/114.jpg)
114
Block Diagram
TuringMachineinput output
![Page 115: Turing Machines (11.5) Longin Jan Latecki Temple University](https://reader036.fdocuments.us/reader036/viewer/2022062501/56815c13550346895dc9ef92/html5/thumbnails/115.jpg)
115
Example:
),( yxf0
yx yx
yx
if
if
Comparer
Adder
Eraser
yx,
yx,
yx
yx
yx
0