Lecture 11: Turing Machines and
Undecidability
David Dill
Department of Computer Science
1
Outline
•
Recursively enumerable vs. RE.
•
A language that is not RE.
•
Simulation of Turing Machines.
2
Recursive vs. RE
Recursively Enumerable Language
– accepted when TM enters a final state,
rejected otherwise (even if TM loops).
Recursive Language
– accepted by a TM that always halts, even when it rejects
the input.
The membership problem for a language is
decidable
iff the language is recursive.
A TM that always halts is called an
algorithm
.
hh
Draw circles for NotRE, RE, Recursive
ii
3
Turing machines can make/modify other Turing machines
Turing machines can be encoded as strings.
Strings can be read and written by Turing machines (so the definition of the
machine can be changed).
Turing machines can
simulate
other Turing machines.
“Turing machine virtualization”
4
This preview has intentionally blurred sections. Sign up to view the full version.
View Full Document
String encoding and simulation of Turing Machines
Turing machines as strings:
Find an encoding for Turing machines as strings of
1’s and 0’s (binary encoding).
This is the end of the preview.
Sign up
to
access the rest of the document.
 Winter '08
 Motwani,R
 Computer Science, Turing Machines, TM, recursive languages

Click to edit the document details