> c(
/00DTimes New Roman\5qD,0DWo
0DTahomaew Roman\5qD,0DWo
0D" DMonotype Sorts\5qD,0DWo
00DLucida Sans Unicode,0DWo
0D"a.
@n?" dd@ @@``PHzzr
!"#$%&'()*+,./0123546789:;<=>?@ABCDEFIJKLMNOPGH
UVWYXZcd[ \]^_`abfghijklmnopqrc$pf3f33f@eg4FdFd08,ppp@uʚ;2Nʚ;<4!d!ddЁ
0P<4dddddЁ
0P<4BdBddЁ
0P___PPT9/08 2?O=SMore About Turing Machines~ Programming Tricks
Restrictions
Extensions
Closure PropertiesOverview^At first, the TM doesn t look very powerful.
Can it really do anything a computer can?
We ll discuss programming tricks to convince you that it can simulate a real computer.6*Y*Y Overview (2)We need to study restrictions on the basic TM model (e.g., tapes infinite in only one direction).
Assuming a restricted form makes it easier to talk about simulating arbitrary TM s.
That s essential to exhibit a language that is not recursively enumerable.&KKOverview (3)We also need to study generalizations of the basic model.
Needed to argue there is no more powerful model of what it means to compute.
Example: A nondeterministic TM with 50 sixdimensional tapes is no more powerful than the basic model.&33`K"Programming Trick: Multiple Tracks#Think of tape symbols as vectors with k components.
Each component chosen from a finite alphabet.
Makes the tape appear to have k tracks.
Let input symbols be blank in all but one track.U'Picture of Multiple TracksProgramming Trick: Marking
A common use for an extra track is to mark certain positions.
Almost all cells hold B (blank) in this track, but several hold special symbols (marks) that allow the TM to find particular places on the tape.(&fV(Marking'Programming Trick: Caching in the State(The state can also be a vector.
First component is the control state.
Other components hold data from a finite alphabet.Example: Using These Tricks33This TM doesn t do anything terribly useful; it copies its input w infinitely.
Control states:
q: Mark your position and remember the input symbol seen.
p: Run right, remembering the symbol and looking for a blank. Deposit symbol.
r: Run left, looking for the mark.&__Example (2)33States have the form [x, Y], where x is q, p, or r and Y is 0, 1, or B.
Only p uses 0 and 1.
Tape symbols have the form [U, V].
U is either X (the mark ) or B.
V is 0, 1 (the input symbols) or B.
[B, B] is the TM blank; [B, 0] and [B, 1] are the inputs.LH#H# The Transition FunctionConvention: a and b each stand for either 0 or 1.
([q,B], [B,a]) = ([p,a], [X,a], R).
In state q, copy the input symbol under the head (i.e., a ) into the state.
Mark the position read.
Go to state p and move right.[
"$8I
2Transition Function (2)([p,a], [B,b]) = ([p,a], [B,b], R).
In state p, search right, looking for a blank symbol (not just B in the mark track).
([p,a], [B,B]) = ([r,B], [B,a], L).
When you find a B, replace it by the symbol (a ) carried in the cache.
Go to state r and move left.v%U%f$U$82Transition Function (3)([r,B], [B,a]) = ([r,B], [B,a], L).
In state r, move left, looking for the mark.
([r,B], [X,a]) = ([q,B], [B,a], R).
When the mark is found, go to state q and move right.
But remove the mark from where it was.
q will place a new mark and the cycle repeats.b%%$$Simulation of the TM!
Simulation of the TM#Simulation of the TM%Simulation of the TM'Simulation of the TM)Simulation of the TM+Simulation of the TMSemiinfinite Tape We can assume the TM never moves left from the initial position of the head.
Let this position be 0; positions to the right are 1, 2, & and positions to the left are 1, 2, &
New TM has two tracks.
Top holds positions 0, 1, 2, &
Bottom holds a marker, positions 1, 2, & &JJ..Simulating Infinite Tape by Semiinfinite Tape1@More Restrictions Read in TextTwo stacks can simulate one tape.
One holds positions to the left of the head; the other holds positions to the right.
In fact, by a clever construction, the two stacks to be counters = only two stack symbols, one of which can only appear at the bottom. L"U"U8fIw8
ExtensionsMore general than the standard TM.
But still only able to define the RE languages.
Multitape TM.
Nondeterministic TM.
Store for keyvalue pairs.,S>wS>,S
2Multitape Turing Machines
Allow a TM to have k tapes for any fixed k.
Move of the TM depends on the state and the symbols under the head for each tape.
In one move, the TM can change state, write symbols under each head, and move each head independently.3Simulating k Tapes by OneUse 2k tracks.
Each tape of the ktape machine is represented by a track.
The head position for each track is represented by a mark on an additional track.5Picture of Multitape Simulation
8*Nondeterministic TM sAllow the TM to have a choice of move at each step.
Each choice is a statesymboldirection triple, as for the deterministic TM.
The TM accepts its input if any sequence of choices leads to an accepting state.64MQ4MQ:Simulating a NTM by a DTMThe DTM maintains on its tape a queue of ID s of the NTM.
A second track is used to mark certain positions:
A mark for the ID at the head of the queue.
A mark to help copy the ID at the head and make a onemove change.,loulo<Picture of the DTM Tape>Operation of the Simulating DTMThe DTM finds the ID at the current front of the queue.
It looks for the state in that ID so it can determine the moves permitted from that ID.
If there are m possible moves, it creates m new ID s, one for each move, at the rear of the queue.@4Operation of the DTM (2)The m new ID s are created one at a time.
After all are created, the marker for the front of the queue is moved one ID toward the rear of the queue.
However, if a created ID has an accepting state, the DTM instead accepts and halts.C%Why the NTM > DTM Construction WorksThere is an upper bound, say k, on the number of choices of move of the NTM for any state/symbol combination.
Thus, any ID reachable from the initial ID by n moves of the NTM will be constructed by the DTM after constructing at most (kn+1k)/(k1)ID s. $DWhy? (2)If the NTM accepts, it does so in some sequence of n choices of move.
Thus the ID with an accepting state will be constructed by the DTM in some large number of its own moves.
If the NTM does not accept, there is no way for the DTM to accept.S&Taking Advantage of Extensions6We now have a really good situation.
When we discuss construction of particular TM s that take other TM s as input, we can assume the input TM is as simple as possible.
E.g., one, semiinfinite tape, deterministic.
But the simulating TM can have many tapes, be nondeterministic, etc.6.E.EG Real ComputersRecall that, since a real computer has finite memory, it is in a sense weaker than a TM.
Imagine a computer with an infinite store for namevalue pairs.
Generalizes an address space.:G33LH!%Simulating a NameValueStore by a TMThe TM uses one of several tapes to hold an arbitrarily large sequence of namevalue pairs in the format #name*value#&
Mark, using a second track, the left end of the sequence.
A second tape can hold a name whose value we want to look up.J"LookupStarting at the left end of the store, compare the lookup name with each name in the store.
When we find a match, take what follows between the * and the next # as the value.M# InsertionSuppose we want to insert namevalue pair (n, v), or replace the current value associated with name n by v.
Perform lookup for name n.
If not found, add n*v# at the end of the store.N$Insertion (2)XIf we find #n*v #, we need to replace v by v.
If v is shorter than v , you can leave blanks to fill out the replacement.
But if v is longer than v , you need to make room.O%Insertion (3)Use a third tape to copy everything from the first tape at or to the right of v .
Mark the position of the * to the left of v before you do.
Copy from the third tape to the first, leaving enough room for v.
Write v where v was.Y)0Closure Properties of Recursive and RE LanguagesBoth closed under union, concatenation, star, reversal, intersection, inverse homomorphism.
Recursive closed under difference, complementation.
RE closed under homomorphism.[*UnionLet L1 = L(M1) and L2 = L(M2).
Assume M1 and M2 are singlesemiinfinitetape TM s.
Construct 2tape TM M to copy its input onto the second tape and simulate the two TM s M1 and M2 each on one of the two tapes, in parallel. }.\+Union (2)Recursive languages: If M1 and M2 are both algorithms, then M will always halt in both simulations.
Accept if either accepts.
RE languages: accept if either accepts, but you may find both TM s run forever without halting or accepting.V]ac.Picture of Union/Recursivee/Picture of Union/REg0DIntersection/Recursive Same Ideah1Intersection/REaDifference, ComplementRecursive languages: both TM s will eventually halt.
Accept if M1 accepts and M2 does not.
Corollary: Recursive languages are closed under complementation.
RE Languages: can t do it; M2 may never halt, so you can t be sure input is in the difference.[A_ 3f8Bk2Concatenation/RELet L1 = L(M1) and L2 = L(M2).
Assume M1 and M2 are singlesemiinfinitetape TM s.
Construct 2tape Nondeterministic TM M:
Guess a break in input w = xy.
Move y to second tape.
Simulate M1 on x, M2 on y.
Accept if both accept.hwM@,e"Kl3Concatenation/RecursiveCan t use a NTM.
Systematically try each break w = xy.
M1 and M2 will eventually halt for each break.
Accept if both accept for any one break.
Reject if all breaks tried and none lead to acceptance.683n4StarSame ideas work for each case.
RE: guess many breaks, accept if M1 accepts each piece.
Recursive: systematically try all ways to break input into some number of pieces.L Ip5ReversalStart by reversing the input.
Then simulate TM for L to accept w if and only wR is in L.
Works for either Recursive or RE languages.$N6M5s6Inverse HomomorphismeApply h to input w.
Simulate TM for L on h(w).
Accept w iff h(w) is in L.
Works for Recursive or RE.9)t7Homomorphism/RE2Let L = L(M1).
Design NTM M to take input w and guess an x such that h(x) = w.
M accepts whenever M1 accepts x.
Note: won t work for Recursive languages.JW33&/
"
$&(*,/04679;=?ABEFI K!L"P#Q$R%T&W'X(Z)^*_+bd.f/i0j1m2o3q4r5u6v7x8 ` ̙33` ` ff3333f` 333MMM` f` f` 3>?" dd@,?udd@ w " @ ` n?" dd@ @@``PR @ ` `p>>f(
6nq Pq
T Click to edit Master title style!
!
0\qq q
RClick to edit Master text styles
Second level
Third level
Fourth level
Fifth level!
S
0vq ``q
>*
0{q ` q
@*
0Xq ` q
@*Z
Byh@ ? ̙33 Default Design
0zrP
(
0xl P
P*
0p
R*
d
c$ ?
0lm
@
RClick to edit Master text styles
Second level
Third level
Fourth level
Fifth level!
S
6@w `P
P*
6<} `
R*
H
0h ? ̙330$(
r
S`p
r
S `
H
0h ? ̙33
`$$(
$r
$ SP
r
$ S0
H
$0h ? ̙33
($(
(r
( SP
r
( S
H
(0h ? ̙33
4$(
4r
4 SXP
r
4 S
H
40h ? ̙33
<$(
<r
< SP
r
< Sx0
H
<0h ? ̙33
'vnX(
Xr
X SP
X
BT0 @
3qLB
X
c$DP
P
LB
X
c$Dp pLB
X
c$DPLB
X
c$D
P
LB
X
c$DP
pp
LB
X
c$DP
LB
X
c$DP
LB
X
c$DP
RB
X
s*D
P
X
<P
p
1X
X
<p
1Y
X
<`
1Zl
2
X
2,$D
0
X
<2
MRepresents one symbol [X,Y,Z]ZB
X
s*D
z
X
<P
} p
10
X
<p
1B
X
<
1Bl 0 P
X0 P
,$D
0
X
<06
IRepresents
input symbol 0ZB
X
s*D@ P
X
<
1B
X
<p
1B
X
<TP
p
1Bl pPP
XPpP
,$D
0
X
<
PV
DRepresents
the blankZB
XB
s*Dp
P
H
X0h ? ̙33
L$(
Lr
L S@'P
'
r
L S''
H
L0h ? ̙33/
( `o(
`x
` c$'P
'
`
B0'0 @
3qLB
`
c$DP
P
LB
`
c$Dp pLB
`
c$DPLB
`
c$DP
@@LB
`
c$DP
LB
`
c$DP
LB
`
c$DP
RB
`
s*D
P
`
<'P
p
1X
`
<'p
1Y
`
<'P
p
1B
`
<8#'p
1Z
`
<<&'P
p
1B
`
<)'pp
1Wl
`
,$D
0
`
<H'
8Marked Y ZB
`
s*D
l
k
`
k,$D
0
`
<0'
e
k
@Unmarked
W and ZZB
`
s*D
pZB
`
s*D
H
`0h ? ̙33
@D$(
Dr
D SP<'P
'
r
D S=''
H
D0h ? ̙33
`T$(
Tr
T S>'P
'
r
T SH''
H
T0h ? ̙33
X$(
Xr
X S(T'P
'
r
X ST''
H
X0h ? ̙33
d$(
dr
d S,`'P
'
r
d S`''
H
d0h ? ̙33
lP(
lr
l Slo'P
'
l SLp'<$
0'
H
l0h ? ̙33
tP(
tr
t S{'P
'
t S{'<$
0'
H
t0h ? ̙33
6(
r
 S<'P
'
h8 PP
@
PP
@`

0̙PP

<('`
3q

<'`
3BZB

s*D
@LB

c$D@P@LB

c$DPLB

c$D
P

<'@`
J. . . B B B B . . .

<D'
J. . . 0 1 B B . . .LB

c$D@@@
LB

c$D@0 0
LB

c$D@P
P
LB

c$D@pp
LB

c$D@
H
0h ? ̙33
J(
x
c$ȟ'P
'
vF PP
@
P@@`
0̙PP
<ȡ'`
3p
<X'`
30ZB
s*D
@LB
c$D@P@LB
c$DPLB
c$D
P
<'@`
J. . . X B B B . . .
<ĭ'
J. . . 0 1 B B . . .LB
c$D@@@
LB
c$D@0 0
LB
c$D@P
P
LB
c$D@pp
LB
c$D@
H
0h ? ̙33
@J(
x
c$'P
'
vF PP
@
P` 0@`
0̙PP
<'`
3p
<'`
30ZB
s*D
@LB
c$D@P@LB
c$DPLB
c$D
P
<'@`
J. . . X B B B . . .
<'
J. . . 0 1 B B . . .LB
c$D@@@
LB
c$D@0 0
LB
c$D@P
P
LB
c$D@pp
LB
c$D@
H
0h ? ̙33
`J(
x
c$H'P
'
vF PP
@
Pp@@`
0̙PP
<H'`
3r
<'`
3BZB
s*D
@LB
c$D@P@LB
c$DPLB
c$D
P
<'@`
J. . . X B B B . . .
<H'
J. . . 0 1 0 B . . .LB
c$D@@@
LB
c$D@0 0
LB
c$D@P
P
LB
c$D@pp
LB
c$D@
H
0h ? ̙33
J(
x
c$<'P
'
vF PP
@
PP
@`
0̙PP
<<'`
3r
<'`
3BZB
s*D
@LB
c$D@P@LB
c$DPLB
c$D
P
<'@`
J. . . X B B B . . .
<8'
J. . . 0 1 0 B . . .LB
c$D@@@
LB
c$D@0 0
LB
c$D@P
P
LB
c$D@pp
LB
c$D@
H
0h ? ̙33
J(
x
c$t>P
>
vF PP
@
P@@`
0̙PP
<t
>`
3q
<>`
3BZB
s*D
@LB
c$D@P@LB
c$DPLB
c$D
P
<@>@`
J. . . B B B B . . .
<p>
J. . . 0 1 0 B . . .LB
c$D@@@
LB
c$D@0 0
LB
c$D@P
P
LB
c$D@pp
LB
c$D@
H
0h ? ̙33
J(
x
c$">P
>
vF PP
@
P` 0@`
0̙PP
<$>`
3p
<(>`
31ZB
s*D
@LB
c$D@P@LB
c$DPLB
c$D
P
<H,>@`
J. . . B X B B . . .
<x0>
J. . . 0 1 0 B . . .LB
c$D@@@
LB
c$D@0 0
LB
c$D@P
P
LB
c$D@pp
LB
c$D@
H
0h ? ̙33
$(
r
S<>P
>
r
Sx=>>
H
0h ? ̙33
C
(
r
SxP
8
@
TB
c$DTB
c$DTB
c$D
<
E0 1 2 3 . . .
<
E * 1 2 3 . . .TB
c$D TB
c$D TB
c$D@@ TB
c$D` ` TB
c$D xF PP
@
P0 @`
0̙PP
<(`
3q
<`
5U/LZB
s*D
@
<fvw
]State remembers whether
simulating upper or lower
track. Reverse directions
for lower track.^^l
,$D
0
<D
LPut * here
at the first
moveZB
s*D
J
l k
k
,$D
0
<h
zYou don t need to do anything,
because these are initially B.>>ZB
s*Dk
` ZB
s*Dk
ZB
s*Dk
H
0h ? ̙33.
n(
r
SN>P
>
r
SpO>
>
B
<,
`ql,$D
0
dFactoid: Invented by Pat Fischer,
whose main claim to fame is that
he was a victim of the Unabomber."e̙^H
0h ? ̙33
8:(
r
SP
S
"p`PpH
0h ? ̙33
0$(
r
SZ>P
>
r
Sd[>>
H
0h ? ̙33
P$(
r
S_>P
>
r
SXg>>
H
0h ? ̙33
C ; p(
r
Sq>P
>
BPs>`` pp
3qLB
c$D LB
c$D LB
c$Dp pLB
c$D0 0LB
c$DP
P
<w> m
X(X head for tape 1))
<>0
_/. . . A B C A C B . . . tape 100
<>0UP
NX head for tape 2
<,>P
p
]. . . U V U U W V . . . tape 2..LB
c$D
pLB
c$D pLB
c$D
pLB
c$D pLB
c$D ``pLB
c$D pLB
c$D pRB
s*DpP
P
H
0h ? ̙33
$(
r
S>P
>
r
S8>>
H
0h ? ̙33
:(
r
SĜ>P
>
Sx>>
"p`PpH
0h ? ̙33
Q (
r
S>P
>
LB
c$D@@@LB
c$D` @` LB
c$D
@
<>E f"e
PlID0 # ID1 # & # IDk # IDk+1 & # IDn # New ID7 >
B>@`
1Xh8 Pa
@
Pa
@
BT>Pa
>Front of
queue`B
0Dpp@
<>@ `
1Yl P@
P @,$D
0
<>`P<
&Where you are
copying IDk with
a move*' ZB
B
s*D `@
<>
,$D
0
=
Rear of
queueRB
s*D
pH
0h ? ̙33
$(
r
S>P
>
r
S>>
H
0h ? ̙33
$(
r
S>P
>
r
S>>
H
0h ? ̙33
z0(
r
S,>P
>
r
S>>
l
,$D
0
<l>
Sum of k+k2+& +kn6
ZB
s*D
H
0h ? ̙33
P$(
r
S?P
?
r
S ??
H
0h ? ̙33
&pP$(
Pr
P S?P
?
r
P S??
H
P0h ? ̙33
$(
r
S?P
?
r
S??
H
0h ? ̙33
!($(
(r
( Sh(?
?
r
( S$)??
H
(0h ? ̙33
"0$(
0r
0 SV^
1MH
0h ? ̙33
0$(
r
S0IP
r
SI
H
0h ? ̙33
2P:(
r
SNP
SZ
"p`PpH
0h ? ̙33
3p$(
r
SP
r
S<
H
0h ? ̙33
4$(
r
SgP
r
Sx
H
0h ? ̙33
5$(
r
SdP
r
S
H
0h ? ̙33
6$(
r
SP
r
S
H
0h ? ̙33
7$(
r
SP
r
S
H
0h ? ̙33
0@ (
X
C
S
@
H
0h ? ̙33
0p,(
,X
, C
, S
@
H
,0h ? ̙33
00(
0X
0 C
0 S
@
H
00h ? ̙33
08(
8X
8 C
8 Sx
@
H
80h ? ̙33
0@(
@X
@ C
@ S
@
H
@0h ? ̙33
0PH(
HX
H C
'
H SE'
@'
H
H0h ? ̙33
0P(
PX
P C
'
P S0 '
@'
H
P0h ? ̙33
0p\(
\X
\ C
'
\ SO'
@'
H
\0h ? ̙33
0`(
`X
` C
'
` S]'
@'
H
`0h ? ̙33
0h(
hX
h C
'
h Sg'
@'
H
h0h ? ̙33
0p(
pX
p C
'
p S0w'
@'
H
p0h ? ̙33
0x(
xX
x C
'
x S8'
@'
H
x0h ? ̙33
0(
X
C
'
S,'
@'
H
0h ? ̙33
00((
^
S
'
c$l'
@'
H
0h ? ̙33
0P((
^
S
'
c$'
@'
H
0h ? ̙33
0p((
^
S
'
c$'
@'
H
0h ? ̙33
0((
^
S
>
c$>
@>
H
0h ? ̙33
0((
^
S
>
c$>
@>
H
0h ? ̙33
0((
^
S
>
c$ :>
@>
H
0h ? ̙33
0(
X
C
>
S\D>
@>
H
0h ? ̙33
0(
X
C
>
SK>
@>
H
0h ? ̙33
0 (
X
C
>
SX>
@>
H
0h ? ̙33
0@(
X
C
>
S$e>
@>
H
0h ? ̙33
0`(
X
C
>
SLk>
@>
H
0h ? ̙33
0(
X
C
>
S>
@>
H
0h ? ̙33
0(
X
C
>
S>
@>
H
0h ? ̙33
0(
X
C
>
SD>
@>
H
0h ? ̙33
0(
X
C
>
S0>
@>
H
0h ? ̙33
0(
X
C
>
SH>
@>
H
0h ? ̙33
0 (
X
C
>
S>
@>
H
0h ? ̙33
0@(
X
C
?
S?
@?
H
0h ? ̙33
0`(
X
C
?
S>
@?
H
0h ? ̙33
0$(
$X
$ C
?
$ S$?
@?
H
$0h ? ̙33!
0,(
,X
, C
?
, S2?
@?
H
,0h ? ̙33"
04(
4X
4 C
?
4 S>?
@?
H
40h ? ̙33#
0<(
<X
< C
?
< SH?
@?
H
<0h ? ̙33$
0 H(
HX
H C
?
H SLT?
@?
H
H0h ? ̙33%
0@L(
LX
L C
?
L S^?
@?
H
L0h ? ̙33&
0T(
TX
T C
?
T S?
@?
H
T0h ? ̙33'
0\(
\X
\ C
\ S\
@
H
\0h ? ̙33(
00d((
d^
dS
'
dc$9'
@'
H
d0h ? ̙33)
0`l(
lX
l C
?
l STk?
@?
H
l0h ? ̙33*
0x(
xX
x C
?
x St?
@?
H
x0h ? ̙33+
0(
X
 C
?
 S0?
@?
H
0h ? ̙33
0@(
X
C
SS
@
H
0h ? ̙33.
0(
X
C
?
S?
@?
H
0h ? ̙33/
0((
^
S
?
c$?
@?
H
0h ? ̙330
0((
^
S
c$
@
H
0h ? ̙331
0 ((
^
S
c$F
@
H
0h ? ̙332
0`(
X
C
Sg
@
H
0h ? ̙333
0(
X
C
Su
@
H
0h ? ̙334
0(
X
C
SȀ
@
H
0h ? ̙335
0(
X
C
SD
@
H
0h ? ̙336
0(
X
C
S$
@
H
0h ? ̙337
0(
X
C
S
@
H
0h ? ̙338
0 (
X
C
Sd
@
H
0h ? ̙33r ck`qsyujewkmQyo\q.0suvxޠzT(~Ё0BpTPf0xdo`4ܙX,Ԥ{g!S#P$̯={t?%T+')^ (a\к+:xDRX8n^p`\bHd4f hh<7xOh+'0/`h
CS154 slidesoJeff UllmanJeffUll90fMicrosoft PowerPointP@G6=@}J@`x"pG.g f.& &&#TNPPq2OMi,
&
TNPP &&TNPP
&&&&$0>$>L$LZ*$*Zh8$8hvF$FvT$Tb$bp$p~$~$$$$$$$$,$,:
$
:H$HV&$&Vd4$4drB$BrP$P^$^k$ky$y$$$$$$$$'$'5$5C$CQ!$!Q_/$/_m=$=m{K$K{Y$Yg$gu$u$$$$$$$$#$#1$1?$?M$M[+$+[i9$9iwG$GwU$Uc$cq$q$$$$$$$$$$;$;I$IW'$'We5$5erB$BrP$P^$^l$lz$z$$$$$$$$($(6$6D$DR"$"R`0$0`n>$>nL$LZ$Zh$hv$v$$$&&&&$&&&&
&&&&&&$0>$>L$LZ*$*Zh8$8hvF$FvT$Tb$bp$p~$~$$$$$$$$,$,:
$
:H$HV&$&Vd4$4drB$BrP$P^$^k$ky$y$$$$$$$$'$'5$5C$CQ!$!Q_/$/_m=$=m{K$K{Y$Yg$gu$u$$$$$$$$#$#1$1?$?M$M[+$+[i9$9iwG$GwU$Uc$cq$q$$$$$$$$$$;$;I$IW'$'We5$5erB$BrP$P^$^l$lz$z$$$$$$$$($(6$6D$DR"$"R`0$0`n>$>nL$LZ$Zh$hv$v$$$&
&&&y&/v`v
/v`v
f& @Times New Roman\v`v
f& . 2
f1 .iyH @"Tahomav
/\v`v
f& ..2
CmMore About Turing Machines #! !"!
!!!
!.Q1 @"Tahomav
/\v`v
f& .%2
Programming Tricks$$
. .2
sRestrictions
. .2
B
Extensions
. ."2
5Closure Properties
."System&
f&
G&TNPP &՜.+,0
(TOnscreen ShowStanford University, CS Dept.rpJ88 =Times New RomanTahomaMonotype SortsLucida Sans UnicodeDefault DesignMore About Turing Machines OverviewOverview (2)Overview (3)#Programming Trick: Multiple TracksPicture of Multiple TracksProgramming Trick: MarkingMarking(Programming Trick: Caching in the StateExample: Using These TricksExample (2)The Transition FunctionTransition Function (2)Transition Function (3)Simulation of the TMSimulation of the TMSimulation of the TMSimulation of the TMSimulation of the TMSimulation of the TMSimulation of the TMSemiinfinite Tape/Simulating Infinite Tape by Semiinfinite Tape!More Restrictions Read in TextExtensionsMultitape Turing MachinesSimulating k Tapes by One Picture of Multitape SimulationNondeterministic TMsSimulating a NTM by a DTMPicture of the DTM Tape Operation of the Simulating DTMOperation of the DTM (2)&Why the NTM > DTM Construction WorksWhy? (2)Taking Advantage of ExtensionsReal Computers&Simulating a NameValue Store by a TMLookup
InsertionInsertion (2)Insertion (3)1Closure Properties of Recursive and RE LanguagesUnionUnion (2)Picture of Union/RecursivePicture of Union/RE#Intersection/Recursive Same IdeaIntersection/REDifference, ComplementConcatenation/REConcatenation/RecursiveStar ReversalInverse HomomorphismHomomorphism/REFonts UsedDesign Template
Slide Titles8_qJeffJeff
!"#$%&'()*+,./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{}~
Root EntrydO)Current UserSummaryInformation(0PowerPoint Document(DocumentSummaryInformation8Root EntrydO)ftCurrent UserPSummaryInformation(0PowerPoint Document(
(__Michael GoodrichMichael Goodrich