turing machines - keithschwarz.comdesign turing machines! alternate problem session tomorrow night,...
TRANSCRIPT
Turing Machines
Announcements
● Problem Set 7 due Friday, November 18● Stop by OH with questions.● Email [email protected] with questions.
● Problem session tonight, 7-8PM, in 370-370● Practice with PDAs!● Play with the pumping lemma!● Design Turing machines!
● Alternate problem session tomorrow night, 7-8PM, in Gates 100.
The Turing Machine
● A Turing machine consists of three parts:● A finite-state control used to determine which actions to take,● an infinite tape serving as both input and scratch space, and● a tape head that can read and write the tape and move left or right.
● At each step, the Turing machine● Replaces the contents of the current cell with a new symbol (which
could optionally be the same symbol as before),● Changes state, and● Moves the tape head to the left or to the right.
● The Turing machine accepts if it enters a special accept state. It rejects if it enters a special reject state.
A Simple Turing Machine
A Simple Turing Machine
q0
qacc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
A Simple Turing Machine
q0
qacc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
Each transition of the form
x y, D→
means “upon reading x, replace it with symbol y and move the tape head in direction D (which is either L or R).
The letter B represents a blank.
A Simple Turing Machine
q0
qacc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
This special accept state causes the
machine to immediately accept.
Each transition of the form
x y, D→
means “upon reading x, replace it with symbol y and move the tape head in direction D (which is either L or R).
The letter B represents a blank.
A Simple Turing Machine
q0
qacc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
Each transition of the form
x y, D→
means “upon reading x, replace it with symbol y and move the tape head in direction D (which is either L or R).
The letter B represents a blank.
This special accept state causes the
machine to immediately accept.
This special reject state causes the
machine to immediately reject.
A Simple Turing Machine
q0
qacc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
A Simple Turing Machine
q0
qacc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1 1 1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1 1 1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1 1 1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1 1 1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1 1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1 1
q1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1 1
q1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1 1
q1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1
q1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1
q0
q1
q1
q0
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1
q0
q1
q1
q0
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1 1
q0
q1
q1
q0
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1
q0
q1
q1
q0
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1
q1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1
q1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1
q1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q1
q0
q1
q0
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q1
q0
q1
q0
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q1
q0
q1
q0
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q0
q1
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q0
q1
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q0
q1
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q0
q1
A Simple Turing Machine
q0
qacc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
1
q0
q0
q1
A Simple Turing Machineq
acc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q0
q0
q1
A Simple Turing Machineq
acc
qrej
q1
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q0
q1
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q0
q1
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q0
q1
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q0
q1
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q0
q1
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
q0
q1
q0
q1
A Simple Turing Machineq
acc
qrej
start
1 → B, R
1 → B, R
B → B, R
B → B, R
qacc
qrej
A More Powerful Turing Machine
● Let Σ = {0, 1} and let L = { w | w is a palindrome }
● We can build a TM for L as follows:● Look at the leftmost character of the string.● Scan across the tape until we find the end of the
string.● If the last character doesn't match, reject the input.● Sweep back to the left of the tape and repeat.● If every character becomes matched, accept.
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 1 1 0
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 1 1 0
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 1 1 0
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 1 1 0
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q1
q0
q0
q1
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q3
q1
q1
q0
q0
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q3
q1
q1
q0
q0
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1 0
q3
q1
q1
q0
q0
q2
q3
q4
q5
qacc q
rejstart q
rej
q2
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1
q5
q3
q3
q1
q1
q0
q0
q2
q4
q5
qacc q
rejstart q
rej
q2
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1
q5
q3
q3
q1
q1
q0
q0
q2
q4
q5
qacc q
rejstart q
rej
q2
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1
q5
q3
q3
q1
q1
q0
q0
q2
q4
q5
qacc q
rejstart q
rej
q2
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1
q5
q3
q3
q1
q1
q0
q0
q2
q4
q5
qacc q
rejstart q
rej
q2
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1
q5
q3
q3
q1
q1
q0
q0
q2
q4
q5
qacc q
rejstart q
rej
q2
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1
q5
q3
q3
q1
q1
q0
q0
q2
q4
q5
qacc q
rejstart q
rej
q2
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1
q5
q3
q3
q1
q1
q0
q0
q2
q4
q5
qacc q
rejstart q
rej
q2
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1
q5
q3
q3
q1
q1
q0
q0
q2
q4
q5
qacc q
rejstart q
rej
q2
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1
q0
q5
q5
q3
q3
q1
q1
q0
q2
q4
qacc q
rejstart q
rej
q2
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1
q0
q5
q5
q3
q3
q1
q1
q0
q2
q4
qacc q
rejstart q
rej
q2
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 1
q0
q5
q5
q3
q3
q1
q1
q0
q2
q4
qacc q
rejstart q
rej
q2
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1
q0
q2
q0
q5
q5
q3
q3
q1
q1
q2
q4
qacc q
rejstart q
rej
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1
q0
q2
q0
q5
q5
q3
q3
q1
q1
q2
q4
qacc q
rejstart q
rej
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1
q0
q2
q0
q5
q5
q3
q3
q1
q1
q2
q4
qacc q
rejstart q
rej
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1
q0
q2
q0
q5
q5
q3
q3
q1
q1
q2
q4
qacc q
rejstart q
rej
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1
q0
q2
q0
q5
q5
q3
q3
q1
q1
q2
q4
qacc q
rejstart q
rej
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1
q0
q2
q0
q5
q5
q3
q3
q1
q1
q2
q4
qacc q
rejstart q
rej
q4
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1
q2
q4
q0
q2
q0
q5
q5
q3
q3
q1
q1
q4
qacc q
rejstart q
rej
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1
q2
q4
q0
q2
q0
q5
q5
q3
q3
q1
q1
q4
qacc q
rejstart q
rej
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1
q2
q4
q0
q2
q0
q5
q5
q3
q3
q1
q1
q4
qacc q
rejstart q
rej
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
q5
q4
q2
q4
q0
q2
q0
q5
q3
q3
q1
q1
qacc q
rejstart q
rej
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
q5
q4
q2
q4
q0
q2
q0
q5
q3
q3
q1
q1
qacc q
rejstart q
rej
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
q5
q4
q2
q4
q0
q2
q0
q5
q3
q3
q1
q1
qacc q
rejstart q
rej
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
q0
q5
q5
q4
q2
q4
q0
q2
q3
q3
q1
q1
qacc q
rejstart q
rej
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
q0
q5
q5
q4
q2
q4
q0
q2
q3
q3
q1
q1
qacc q
rejstart q
rej
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
q0
q5
q5
q4
q2
q4
q0
q2
q3
q3
q1
q1
qacc q
rejstart q
rej
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
q0
q0
q5
q5
q4
q2
q4
q2
q3
q3
q1
q1
qacc q
rejstart q
rej
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
q0
q0
q5
q5
q4
q2
q4
q2
q3
q3
q1
q1
qacc q
rejstart q
rej
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 0 0 0
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 0 0 0
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 0 0 0
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
1 0 0 0
q0
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q2
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q0
q2
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q0
q2
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q0
q2
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q0
q2
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q0
q2
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q0
q2
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q0
q2
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q0
q2
q0
q1
q2
q3
q4
q5
qacc q
rej
q1
start qrej
q3
q4
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q2
q4
q0
q2
q0
q1
q3
q4
q5
qacc q
rej
q1
start qrej
q3
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q2
q4
q0
q2
q0
q1
q3
q4
q5
qacc q
rej
q1
start qrej
q3
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q2
q4
q0
q2
q0
q1
q3
q4
q5
qacc q
rej
q1
start qrej
q3
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q4
q2
q4
q0
q2
q0
q1
q3
q5
qacc q
rej
q1
start qrej
q3
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
q4
q2
q4
q0
q2
q0
q1
q3
q5
qacc q
rej
q1
start qrej
q3
q5
B → B, R
0 → B, R
1 → B, R
0 → 0, R1 → 1, R
B → B, L
0 → 0, R 1 → 1, R
B → B, L
B → B, R
B → B, R
qacc
1 → 1, R
0 → 0, R
0 → B, L
1 → B, L
0 → 0, L 1 → 1, L
B → B, R
0 0 0
0 1 Bq
0
q1
q2
q3
q4
q5
A More Sane Representation
0 1 Bq
0
q1
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 Bq
0
q1
q2
q3
q4
q5
A More Sane Representation
0 1 Bq
0
q1
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 0 1 0 0
q0
0 1 Bq
0
q1
q2
q3
q4
q5
A More Sane Representation
0 1 B
q1
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 0 1 0 0
q0
0 1 Bq
0
q1
q2
q3
q4
q5
A More Sane Representation
0 1 B
q1
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 0 1 0 0
0q
0
0 1 Bq
0
q1
q2
q3
q4
q5
A More Sane Representation
1 B
q1
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 0 1 0 0
q1
0q
0
0q
0
1 B
q1
q2
q3
q4
q5
A More Sane Representation
1 B
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
0
q1
0q
0q
0
1 B
q1
q2
q3
q4
q5
A More Sane Representation
1 B
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
q1
0
q1
0q
0q
0
1 B
q2
q3
q4
q5
A More Sane Representation
1 B
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
q1
10
q1
0q
0q
0
1 B
q2
q3
q4
q5
A More Sane Representation
B
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
q1
q1
1100q
0q
0
B
q2
q3
q4
q5
A More Sane Representation
B
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
q1
0
q1
110q
0q
0
B
q2
q3
q4
q5
A More Sane Representation
B
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
0
q1
0
q1
11q
0q
0
B
q2
q3
q4
q5
A More Sane Representation
B
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
00
q1
q1
11q
0q
0
B
q2
q3
q4
q5
A More Sane Representation
B
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
00
q1
q1
11q
0q
0
B
q2
q3
q4
q5
A More Sane Representation
B
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
B00
q1
q1
11q
0q
0
B
q2
q3
q4
q5
A More Sane Representation
q2
q3
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
q1
B
q3
B00
q1
11q
0q
0
q2
q3
q4
q5
A More Sane Representation
q2
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
0
q1
B
q3
B0
q1
11q
0q
0
q2
q3
q4
q5
A More Sane Representation
q2
q4
q5
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0 0
0
q3
q5
0
q1
B
q3
B
q1
11q
0q
0
q2
q4
q5
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0
00
q3
q5
q1
B
q3
B
q1
11q
0q
0
q2
q4
q5
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0
00
q3
q5
q1
B
q3
B
q1
11q
0q
0
q2
q4
q5
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0
100
q3
q5
q1
B
q3
B
q1
1q
0q
0
q2
q4
q5
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0
1100
q3
q5
q1
B
q3
B
q1
q0
q0
q2
q4
q5
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0
0 110
q3
q5
q1
B
q3
B
q1
q0
q0
q2
q4
q5
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0
00 11
q3
q5
q1
B
q3
B
q1
q0
q0
q2
q4
q5
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0
B00 11
q3
q5
q1
B
q3
q1
q0
q0
q2
q4
q5
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0
Bq
0
q5
B00 11
q3
q5
q1
q3
q1
q0
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0
0 Bq
0
q5
B0 11
q3
q5
q1
q3
q1
q0
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
0 1 0
0
q1
q0
0 Bq
0
q5
B11
q3
q5
q1
q3
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1 0
10
q1
q0
0 Bq
0
q5
B1
q3
q5
q1
q3
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1 0
110
q1
q0
0 Bq
0
q5
B
q3
q5
q1
q3
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1 0
0 110
q1
q0
Bq
0
q5
B
q3
q5
q1
q3
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1 0
00 11
q1
q0
Bq
0
q5
B
q3
q5
q1
q3
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1 0
B00 11
q1
q0
Bq
0
q5
q3
q5
q1
q3
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1 0
B
q1
q3
B00 11
q1
q0
q0
q5
q3
q5
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1 0
0 B
q1
q3
B0 11
q1
q0
q0
q5
q3
q5
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1 0
0
q3
q5
0 B
q1
q3
B11
q1
q0
q0
q5
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1
10
q3
q5
0 B
q1
q3
B1
q1
q0
q0
q5
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1
110
q3
q5
0 B
q1
q3
B
q1
q0
q0
q5
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1
B110
q3
q5
0 B
q1
q3
q1
q0
q0
q5
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1
Bq
0
q5
B110
q3
q5
0
q1
q3
q1
q0
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1
1 Bq
0
q5
B10
q3
q5
0
q1
q3
q1
q0
q2
q4
A More Sane Representation
q2
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
1
1q
0
q2
1 Bq
0
q5
B0
q3
q5
0
q1
q3
q1
q2
q4
A More Sane Representation
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
B1q
0
q2
1 Bq
0
q5
0
q3
q5
0
q1
q3
q1
q2
q4
A More Sane Representation
q4
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
B
q2
q4
B1q
0
q2
1q
0
q5
0
q3
q5
0
q1
q3
q1
q4
A More Sane Representation
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
BB
q2
q4
1q
0
q2
1q
0
q5
0
q3
q5
0
q1
q3
q1
q4
A More Sane Representation
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
B
q4
B
q2
q4
1q
0
q2
1q
0
q5
0
q3
q5
0
q1
q3
q1
A More Sane Representation
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
B
q4
B
q2
q4
1q
0
q2
1q
0
q5
0
q3
q5
0
q1
q3
q1
A More Sane Representation
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
B
q4
B
q2
q4
1q
0
q2
1q
0
q5
0
q3
q5
0
q1
q3
q1
A More Sane Representation
B R q1 B R q
2 B R qacc
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 1 R q
rej B R qacc
0 R qrej B R q
accB L q5
0 L q5 1 L q
5 B R q0
Accept
Reject
Reject Accept
Accept
B
q4
B
q2
q4
1q
0
q2
1q
0
q5
0
q3
q5
0
q1
q3
q1
A More Sane Representation
B R q1 B R q
2
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 Reject
B L q5
0 L q5 1 L q
5 B R q0
Accept
Reject
Reject Accept
Accept
B
q4
B
q2
q4
1q
0
q2
1q
0
q5
0
q3
q5
0
q1
q3
q1
A More Sane Representation
B R q1 B R q
2
0 R q1 1 R q
1 B L q3
0 R q2 1 R q
2 B L q4
B L q5 Reject
B L q5
0 L q5 1 L q
5 B R q0
Turing Machines, Formally
● A Turing machine is an 8-tuple (Q, Σ, Γ, δ, q0, q
acc, q
rej, B),
where
Q is a finite set of states,
Σ is a finite input alphabet,
Γ is a finite tape alphabet, with Σ Γ,⊆
δ : Q × Γ → Q × Γ × {R, L} is the transition function,
q0 Q is the ∈ start state,
qacc
Q is the ∈ accept state,
qrej
Q, q∈rej
≠ qacc
, is the reject state, and
B Γ is the ∈ blank symbol.
Turing Machines, Formally
● A Turing machine is an 8-tuple (Q, Σ, Γ, δ, q0, q
acc, q
rej, B),
where● Q is a finite set of states,
Σ is a finite input alphabet,
Γ is a finite tape alphabet, with Σ Γ,⊆
δ : Q × Γ → Q × Γ × {R, L} is the transition function,
q0 Q is the ∈ start state,
qacc
Q is the ∈ accept state,
qrej
Q, q∈rej
≠ qacc
, is the reject state, and
B Γ is the ∈ blank symbol.
Turing Machines, Formally
● A Turing machine is an 8-tuple (Q, Σ, Γ, δ, q0, q
acc, q
rej, B),
where● Q is a finite set of states,● Σ is a finite input alphabet,
Γ is a finite tape alphabet, with Σ Γ,⊆
δ : Q × Γ → Q × Γ × {R, L} is the transition function,
q0 Q is the ∈ start state,
qacc
Q is the ∈ accept state,
qrej
Q, q∈rej
≠ qacc
, is the reject state, and
B Γ is the ∈ blank symbol.
Turing Machines, Formally
● A Turing machine is an 8-tuple (Q, Σ, Γ, δ, q0, q
acc, q
rej, B),
where● Q is a finite set of states,● Σ is a finite input alphabet,● Γ is a finite tape alphabet, with Σ Γ⊆ ,
δ : Q × Γ → Q × Γ × {R, L} is the transition function,
q0 Q is the ∈ start state,
qacc
Q is the ∈ accept state,
qrej
Q, q∈rej
≠ qacc
, is the reject state, and
B Γ is the ∈ blank symbol.
Turing Machines, Formally
● A Turing machine is an 8-tuple (Q, Σ, Γ, δ, q0, q
acc, q
rej, B),
where● Q is a finite set of states,● Σ is a finite input alphabet,● Γ is a finite tape alphabet, with Σ Γ⊆ ,
δ : Q × Γ → Q × Γ × {R, L} is the transition function,
q0 Q is the ∈ start state,
qacc
Q is the ∈ accept state,
qrej
Q, q∈rej
≠ qacc
, is the reject state, and
B Γ is the ∈ blank symbol.
Why must ?Σ ⊆ Γ
Turing Machines, Formally
● A Turing machine is an 8-tuple (Q, Σ, Γ, δ, q0, q
acc, q
rej, B),
where● Q is a finite set of states,● Σ is a finite input alphabet,● Γ is a finite tape alphabet, with Σ Γ,⊆● δ : Q × Γ → Q × Γ × {R, L} is the transition function,
q0 Q is the ∈ start state,
qacc
Q is the ∈ accept state,
qrej
Q, q∈rej
≠ qacc
, is the reject state, and
B Γ is the ∈ blank symbol.
Turing Machines, Formally
● A Turing machine is an 8-tuple (Q, Σ, Γ, δ, q0, q
acc, q
rej, B),
where● Q is a finite set of states,● Σ is a finite input alphabet,● Γ is a finite tape alphabet, with Σ Γ,⊆● δ : Q × Γ → Q × Γ × {R, L} is the transition function,
q0 Q is the ∈ start state,
qacc
Q is the ∈ accept state,
qrej
Q, q∈rej
≠ qacc
, is the reject state, and
B Γ is the ∈ blank symbol.
Each transition is based on the current tape symbol and state. Each transition maps to a new
state, a new tape symbol, and a direction (either left or right).
Turing Machines, Formally
● A Turing machine is an 8-tuple (Q, Σ, Γ, δ, q0, q
acc, q
rej, B),
where● Q is a finite set of states,● Σ is a finite input alphabet,● Γ is a finite tape alphabet, with Σ Γ,⊆● δ : Q × Γ → Q × Γ × {R, L} is the transition function,
● q0 Q is the ∈ start state,
qacc
Q is the ∈ accept state,
qrej
Q, q∈rej
≠ qacc
, is the reject state, and
B Γ is the ∈ blank symbol.
Turing Machines, Formally
● A Turing machine is an 8-tuple (Q, Σ, Γ, δ, q0, q
acc, q
rej, B),
where● Q is a finite set of states,● Σ is a finite input alphabet,● Γ is a finite tape alphabet, with Σ Γ,⊆● δ : Q × Γ → Q × Γ × {R, L} is the transition function,
● q0 Q is the ∈ start state,
● qacc
Q is the ∈ accept state,
qrej
Q, q∈rej
≠ qacc
, is the reject state, and
B Γ is the ∈ blank symbol.
Turing Machines, Formally
● A Turing machine is an 8-tuple (Q, Σ, Γ, δ, q0, q
acc, q
rej, B),
where● Q is a finite set of states,● Σ is a finite input alphabet,● Γ is a finite tape alphabet, with Σ Γ,⊆● δ : Q × Γ → Q × Γ × {R, L} is the transition function,
● q0 Q is the ∈ start state,
● qacc
Q is the ∈ accept state,
● qrej
Q, q∈rej
≠ qacc
, is the reject state, and
B Γ is the ∈ blank symbol.
Turing Machines, Formally
● A Turing machine is an 8-tuple (Q, Σ, Γ, δ, q0, q
acc, q
rej, B),
where● Q is a finite set of states,● Σ is a finite input alphabet,● Γ is a finite tape alphabet, with Σ Γ,⊆● δ : Q × Γ → Q × Γ × {R, L} is the transition function,
● q0 Q is the ∈ start state,
● qacc
Q is the ∈ accept state,
● qrej
Q, q∈rej
≠ qacc
, is the reject state, and
● B Γ – Σ is the ∈ blank symbol.
The Language of a Turing Machine
● The language of a TM M is the set
L(M) = { w | M enters qacc when run on w }
● If there is a TM M such that L(M) = L, we say that L is Turing-recognizable.● These languages are sometimes called recursively
enumerable.
Describing POWER2
● Recall: POWER2 is the language
● In Problem Set 6, you saw that POWER2 is not
regular.● In Problem Set 7, you'll prove that POWER2 is
not context-free.● However, POWER2 is Turing-recognizable.● How would we build a TM to recognize POWER2?
{12n | n∈ℕ }
Describing Turing Machines
● Specify TM explicitly using the transition table.● Incontrovertibly shows there's a TM for a problem.● Almost impossible to decipher.
● Specify TM's tape operations in natural language.● Describes what the tape head needs to do rather than how it's
done.● Might miss an important edge case.
● Specify TM's entire behavior at a high level.● Provides a clear description of how the TM tackles the
problem.● Almost impossible to translate into a machine.
POWER2 Intuition
1 1 1 1 1 1 1 1
POWER2 Intuition
1 1 1 1 1 1 1 1
x 1 x 1 x 1 x 1
POWER2 Intuition
1 1 1 1 1 1 1 1
x 1 x 1 x 1 x 1
x x x 1 x x x 1
POWER2 Intuition
1 1 1 1 1 1 1 1
x 1 x 1 x 1 x 1
x x x 1 x x x 1
x x x x x x x 1
A Very High-Level Description
● M = “On input w:● If w = ε, reject.● Otherwise, repeatedly cross out pairs of 1s in w
until the number of 1s is odd.● If there is exactly one 1 left, accept.● Otherwise, reject.”
A Tape-Operation Description
● M = “On input w:● If the initial cell contains a blank, reject.● If there is exactly one 1 in the input, accept.● Otherwise:
– Scan across the tape crossing off pairs of 1s. If an odd number of 1s is found, reject.
– Scan back to the start of the tape.– If we see exactly one 1 when scanning back, accept.”
q0
q0
BB11 xx
q6
q6
rejectq
1
q2
q3
q4
q5
A Low-Level Description
q1
q2
q3
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 L q6 x L q
6 B R q2
q0
q0
BB11 xx
q6
q6
rejectq
1
q2
q3
q4
q5
A Low-Level Description
q1
q2
q3
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 1 1 1 1 1 1 1
1 L q6 x L q
6 B R q2
q0
q0
BB11 xx
q6
q6
rejectq
1
q2
q3
q4
q5
A Low-Level Description
q1
q2
q3
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 1 1 1 1 1 1 1
1 L q6 x L q
6 B R q2
q0
q0
BB11 xx
q6
q6
rejectq
1
q2
q3
q4
q5
A Low-Level Description
q1
q2
q3
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 1 1 1 1 1 1 1
1 L q6 x L q
6 B R q2
1q
0q
0
BB1 xx
q6
q6
rejectq
1
q2
q3
q4
q5
A Low-Level Description
q1
q2
q3
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 1 1 1 1 1 1 1
1 L q6 x L q
6 B R q2
q0
q1
11q
0
BBxx
q6
q6
rejectq
1
q2
q3
q4
q5
A Low-Level Description
q2
q3
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 1 1 1 1 1 1
1 L q6 x L q
6 B R q2
1q
0
q1
1q
0
BBxx
q6
q6
rejectq
1
q2
q3
q4
q5
A Low-Level Description
q2
q3
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 1 1 1 1 1 1
1 L q6 x L q
6 B R q2
1
q1
q2
1q
0
q1
q0
BBxx
q6
q6
reject
q2
q3
q4
q5
A Low-Level Description
q3
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 1 1 1 1 1 1
1 L q6 x L q
6 B R q2
11
q1
q2
q0
q1
q0
BBxx
q6
q6
reject
q2
q3
q4
q5
A Low-Level Description
q3
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 1 1 1 1 1 1
1 L q6 x L q
6 B R q2
1
q2
q3
1
q1
q2
q0
q1
q0
BBxx
q6
q6
reject
q3
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 1 1 1 1
1 L q6 x L q
6 B R q2
11
q2
q3
q1
q2
q0
q1
q0
BBxx
q6
q6
reject
q3
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 1 1 1 1
1 L q6 x L q
6 B R q2
1
q2
q3
1
q2
q3
q1
q0
q1
q0
BBxx
q6
q6
reject
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 1 1 1 1
1 L q6 x L q
6 B R q2
11
q2
q3
q2
q3
q1
q0
q1
q0
BBxx
q6
q6
reject
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 1 1 1 1
1 L q6 x L q
6 B R q2
1
q2
q3
1
q2
q3
q1
q0
q1
q0
BBxx
q6
q6
reject
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 1 1
1 L q6 x L q
6 B R q2
11
q2
q3
q2
q3
q1
q0
q1
q0
BBxx
q6
q6
reject
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 1 1
1 L q6 x L q
6 B R q2
1
q2
q3
1
q2
q3
q1
q0
q1
q0
BBxx
q6
q6
reject
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 1 1
1 L q6 x L q
6 B R q2
11
q2
q3
q2
q3
q1
q0
q1
q0
BBxx
q6
q6
reject
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 1 1
1 L q6 x L q
6 B R q2
1
q2
q3
1
q2
q3
q1
q0
q1
q0
BBxx
q6
q6
reject
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
11
q2
q3
q2
q3
q1
q0
q1
q0
BBxx
q6
q6
reject
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1
q2
q3
1
q2
q3
q1
q0
q1
q0
BBxx
q6
q6
reject
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
B1
q2
q3
1
q2
q3
q1
q0
q1
q0
Bxx
q6
q6
reject
q4
q5
A Low-Level Description
q4
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
q2
B
q4
B1
q2
q3
1
q3
q1
q0
q1
q0
xx
q6
q6
reject
q4
q5
A Low-Level Description
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1
q2
B
q4
B1
q2
q3
q3
q1
q0
q1
q0
xx
q6
q6
reject
q4
q5
A Low-Level Description
q5
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
xx
q6
q6
reject
q5
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
x1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
x
q6
q6
reject
q5
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
q6
q6
reject
q5
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1 xx1
q4
q5
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
q6
q6
reject
q5
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1
q6
q5
1 xx
q4
q5
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
q6
reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
x1
q6
q5
1 x
q4
q5
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
q6
reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
xx1
q6
q5
1
q4
q5
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
q6
reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1 xx1
q6
q5
q4
q5
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
q6
reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
11 xx
q6
q5
q4
q5
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
q6
reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
x11 x
q6
q5
q4
q5
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
q6
reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
xx11
q6
q5
q4
q5
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
q6
reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1 xx1
q6
q5
q4
q5
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
q6
reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
11 xx
q6
q5
q4
q5
q2
B
q4
B
q2
q3
q3
q1
q0
q1
q0
q6
reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
B11 xx
q6
q5
q4
q5
q2
B
q4
q2
q3
q3
q1
q0
q1
q0
q6
reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
B
q2
q6
B11 xx
q6
q5
q4
q5
q2
q4
q3
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1 B
q2
q6
B1 xx
q6
q5
q4
q5
q2
q4
q3
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
1 x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1
q2
q3
1 B
q2
q6
Bxx
q6
q5
q4
q5
q4
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x 1 x 1
1 L q6 x L q
6 B R q2
x1
q2
q3
1 B
q2
q6
Bx
q6
q5
q4
q5
q4
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x 1 x 1
1 L q6 x L q
6 B R q2
xx1
q2
q3
1 B
q2
q6
B
q6
q5
q4
q5
q4
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1 xx1
q2
q3
B
q2
q6
B
q6
q5
q4
q5
q4
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1
q2
q3
1 xx
q2
q3
B
q6
B
q6
q5
q4
q5
q4
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x 1 x 1
1 L q6 x L q
6 B R q2
x1
q2
q3
1 x
q2
q3
B
q6
B
q6
q5
q4
q5
q4
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x 1 x 1
1 L q6 x L q
6 B R q2
xx1
q2
q3
1
q2
q3
B
q6
B
q6
q5
q4
q5
q4
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1 xx1
q2
q3
q2
q3
B
q6
B
q6
q5
q4
q5
q4
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x 1 x 1
1 L q6 x L q
6 B R q2
1
q2
q3
1 xx
q2
q3
B
q6
B
q6
q5
q4
q5
q4
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x x 1
1 L q6 x L q
6 B R q2
x
x
1
q2
q3
1 x
q2
q3
B
q6
B
q6
q5
q4
q5
q4
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx
x
1
q2
q3
1
q2
q3
B
q6
B
q6
q5
q4
q5
q4
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
1 xx
x
1
q2
q3
q2
q3
B
q6
B
q6
q5
q4
q5
q4
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
1
q2
q3
1 xx
x
q2
q3
B
q6
B
q6
q5
q4
q5
q4
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
B1
q2
q3
1 xx
x
q2
q3
B
q6
q6
q5
q4
q5
q4
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
q2
B
q4
B1
q2
q3
1 xx
x
q3
q6
q6
q5
q4
q5
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
1
q2
B
q4
B1
q2
q3
xx
x
q3
q6
q6
q5
q4
q5
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
1
q4
q5
1
q2
B
q4
B
q2
q3
xx
x
q3
q6
q6
q5
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
x1
q4
q5
1
q2
B
q4
B
q2
q3
x
x
q3
q6
q6
q5
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
x
q3
q6
q6
q5
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
x
q3
q6
q6
q5
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
x
q3
q6
q6
q5
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
x
q3
q6
q6
q5
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
x
q3
q6
q6
q5
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
1 xx1
q4
q5
q2
B
q4
B
q2
q3
x
q3
q6
q6
q5
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
1
q6
q5
1 xx
q4
q5
q2
B
q4
B
q2
q3
x
q3
q6
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
x1
q6
q5
1 x
q4
q5
q2
B
q4
B
q2
q3
x
q3
q6
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx1
q6
q5
1
q4
q5
q2
B
q4
B
q2
q3
x
q3
q6
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx1
q6
q5
1
q4
q5
q2
B
q4
B
q2
q3
x
q3
q6
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx1
q6
q5
1
q4
q5
q2
B
q4
B
q2
q3
x
q3
q6
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
Bxx1
q6
q5
1
q4
q5
q2
B
q4
q2
q3
x
q3
q6
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
B
q2
q6
Bxx1
q6
q5
1
q4
q5
q2
q4
q3
x
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
x B
q2
q6
Bx1
q6
q5
1
q4
q5
q2
q4
q3
x
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx B
q2
q6
B1
q6
q5
1
q4
q5
q2
q4
q3
x
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx B
q2
q6
B1
q6
q5
1
q4
q5
q2
q4
q3
x
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
xx B
q2
q6
B1
q6
q5
1
q4
q5
q2
q4
q3
x
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
1 xx B
q2
q6
B1
q6
q5
q4
q5
q2
q4
q3
x
q3
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x 1 x x 1
1 L q6 x L q
6 B R q2
1
q2
q3
1 xx B
q2
q6
B
q6
q5
q4
q5
q4
q3
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
x1
q2
q3
1 x B
q2
q6
B
q6
q5
q4
q5
q4
q3
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q2
q3
1 B
q2
q6
B
q6
q5
q4
q5
q4
q3
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q2
q3
1 B
q2
q6
B
q6
q5
q4
q5
q4
q3
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q2
q3
1 B
q2
q6
B
q6
q5
q4
q5
q4
q3
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q2
q3
1 B
q2
q6
B
q6
q5
q4
q5
q4
q3
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q2
q3
1 B
q2
q6
B
q6
q5
q4
q5
q4
q3
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
1 xx1
q2
q3
B
q2
q6
B
q6
q5
q4
q5
q4
q3
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
1
q2
q3
1 xx
q2
q3
B
q6
B
q6
q5
q4
q5
q4
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
B1
q2
q3
1 xx
q2
q3
B
q6
q6
q5
q4
q5
q4
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
q2
B
q4
B1
q2
q3
1 xx
q3
q6
q6
q5
q4
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
1
q2
B
q4
B1
q2
q3
xx
q3
q6
q6
q5
q4
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
1
q4
q5
1
q2
B
q4
B
q2
q3
xx
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
x1
q4
q5
1
q2
B
q4
B
q2
q3
x
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
xx1
q4
q5
1
q2
B
q4
B
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
Bxx1
q4
q5
1
q2
B
q4
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
Bxx1
q4
q5
1
q2
B
q4
q2
q3
q3
q6
q6
q5
x
q1
q0
q1
q0 reject
A Low-Level Description
B R q1 reject
1 R q2 reject accept
x R q3 x R q
2 B L q4
1 R q2 x R q
3 reject
1 L q5 rejectx L q
4
1 L q6 x L q
5 accept
x x x x x 1
1 L q6 x L q
6 B R q2
Why This Matters
● From this point forward, we are not going to concern ourselves (that much) with low-level descriptions of Turing Machines.
● If you are asked to explicitly construct a Turing machine, you should provide a transition table or state-transition diagram.
● If you are asked to prove that you could solve a problem with a Turing machine (for example, to prove that a language is recursively enumerable), just provide a high-level description.
The Church-Turing Thesis
Just how powerful are Turing machines?
Tweaking Models of Computation
● If we add a stack to a finite automaton, we get the (more powerful) pushdown automaton.
● If we replace a PDA's stack with an infinite tape, we get the (more powerful) Turing machine.
● What happens if we try making changes to the Turing machine?
The Multitrack Turing Machine
0 0 1
The Multitrack Turing Machine
0 0 1
The Multitrack Turing Machine
0 0 1
+
?
0
The Multitrack Turing Machine
0 0 1
+ +
? ?
0 0
The Multitrack Turing Machine
0 0 1
+ + -
? ? !
0 0 1
The Multitrack Turing Machine
0 0 1
+ + -
? ! !
0 0 1
The Multitrack Turing Machine
0 0 1
+ + -
! ! !
0 0 1
The Multitrack Turing Machine
● A multitrack Turing machine is a Turing machine in which the tape is split into a finite number of parallel tracks.
● Each cell in each track can hold a single symbol.
● The finite-state control can base its transition on the symbols stored in each of the tracks.
● The finite-state control can write a new symbol back to each of the tracks.
The Multitrack Turing Machine
● Clearly, the multitrack Turing machine is at least as powerful as the regular Turing machine.● Just have one track.
● Is the multitrack TM strictly more powerful than the regular TM?
Simulation Revisited
● Two models of computation are said to be equivalent if they can accept precisely the same languages.
● Key technique: If each model of computation can simulate the other, they must be equally powerful.● If we can simulate one machine with another, then any
machine of one type can be turned into a machine of the other type.
● We last saw this with NFAs and DFAs.● Can we prove that a TM can simulate a multitrack
TM?
Simulating a Multitrack TM
0
0
1
Simulating a Multitrack TM
0
0
1
0
0
1
Simulating a Multitrack TM
0
0
1
0
0
1
Simulating a Multitrack TM
0
0
1
(0, B, B, *)
0
1
Simulating a Multitrack TM
0
0
1
(0, B, B, *)
(0, B, B, B)
1
Simulating a Multitrack TM
0
0
1
(0, B, B, *)
(0, B, B, B)
(1, B, B, B)
Simulating a Multitrack TM
0
0
1
(0, B, B, *)
(0, B, B, B)
(1, B, B, B)
Simulating a Multitrack TM
0
0
1
(0, B, B, *)
(0, B, B, B)
(1, B, B, B)
Simulating a Multitrack TM
0
0
1
(0, B, B, *)
(0, B, B, B)
(1, B, B, B)
Simulating a Multitrack TM
0
0
1
(0, B, B, *)
(0, B, B, B)
(1, B, B, B)
Simulating a Multitrack TM
0 ? -
0
1
(0, B, B, *)
(0, B, B, B)
(1, B, B, B)
Simulating a Multitrack TM
0 ? -
0
1
(0, ?, -, *)
(0, B, B, B)
(1, B, B, B)
Simulating a Multitrack TM
0 ? -
0 ? -
1
(0, ?, -, *)
(0, B, B, B)
(1, B, B, B)
Simulating a Multitrack TM
0 ? -
0 ? -
1
(0, ?, -, *)
(0, ?, -, B)
(1, B, B, B)
Simulating a Multitrack TM
0 ? -
0 ? -
1 ! +
(0, ?, -, *)
(0, ?, -, B)
(1, B, B, B)
Simulating a Multitrack TM
0 ? -
0 ? -
1 ! +
(0, ?, -, *)
(0, ?, -, B)
(1, !, +, B)
Simulating a Multitrack TM
● Given a multitrack TM M, we can build a single-track TM M' as follows:● Use a stack alphabet Γ consisting of tuples of
symbols rather than individual symbols.● On startup, replace each input symbol with a tuple
where each extra track begins blank.● Then, use the same finite-state control as M.
● Turing machines and multitrack Turing machines have the same computational power.
The Multitape Turing Machine
0 0 1
The Multitape Turing Machine
0 0 1
The Multitape Turing Machine
0 0 1 Y
X
The Multitape Turing Machine
0 1 1 Y X
X
The Multitape Turing Machine
1 1 1 Y X X
Y
The Multitape Turing Machine
● A multitape Turing machine (MTTM) is a Turing machine with finitely many additional tapes and additional tape heads.
● Each tape head can move independently of the others.
● Each tape head can write symbols independently of the others.
● The finite-state control issues commands to each tape head at the same time and can base its decisions on all of the other tapes.
The Multitape Turing Machine
● Clearly, the multitape Turing machine is at least as powerful as the regular Turing machine (just use zero extra tapes).
● However, the MTTM is no more powerful than a regular Turing machine.
● Idea: Show how to simulate an multitape Turing machine using a multitrack Turing machine.● Since multitrack TMs are equally powerful as
regular TMs, this shows that standard Turing machines are at least as powerful as MTTMs.
0 1 1 3 A B C DZYX
0 1 1 3 A B C DZYX
0 1 1 3
ZYX
C DBA
0 1 1 3 A B C DZYX
0 1 1 3
ZYX
C DBA
0 1 1 3 A B C DZYX
0 1 1 3
ZYX
C DBA
0 1 1 3 A B C DZYX
0 1 1 3
ZYX
C DBA
0 1 2 3 A B C DZYX
0 1 1 3
ZYX
C DBA
0 1 2 3 A B C DZYX
0 1 2 3
ZYX
C DBA
0 1 2 3 A B C DZYX
0 1 2 3
ZYX
C DBA
0 1 2 3 A B C DZYX
0 1 2 3
ZYX
C DBA
0 1 2 3 A B C DZYX
0 1 2 3
ZYX
C DBA
0 1 2 3 A B C DZYX
0 1 2 3
ZYX
C DBA
0 1 2 3 A B C DZYX
0 1 2 3
ZYX
C DBA
0 1 2 3 A B C DZYX
0 1 2 3
ZYX
C DBA
0 1 2 3 A B C DZ WYX
0 1 2 3
ZYX
C DBA
0 1 2 3 A B C DZ WYX
0 1 2 3
ZYX
C DBA
0 1 2 3 A B C DZ WYX
0 1 2 3
Z WYX
C DBA
0 1 2 3 A B C DZ WYX
0 1 2 3
Z WYX
C DBA
0 1 2 3 A B C DZ WYX
0 1 2 3
Z WYX
C DBA
0 1 2 3 A B C DZ WYX
0 1 2 3
Z WYX
C DBA
0 1 2 3 A B C DZ WYX
0 1 2 3
Z WYX
C DBA
0 1 2 3 A B C DZ WYX
0 1 2 3
Z WYX
C DBA
0 1 2 3 A E C DZ WYX
0 1 2 3
Z WYX
C DBA
0 1 2 3 A E C DZ WYX
0 1 2 3
Z WYX
C DEA
0 1 2 3 A E C DZ WYX
0 1 2 3
Z WYX
C DEA
0 1 2 3 A E C DZ WYX
0 1 2 3
Z WYX
C DEA
Simulating an MTTM
● Idea: Build a multitrack machine with one track per tape.● Add in special symbols representing “the tape head is
here, and the symbol is x.”● Repeatedly scan across the tracks, applying the
transition for each tape one at a time.● Scan across the tracks to find where the tape head is.● Apply the transition function to determine which direction the
head moves.● Replace the symbol in that direction with a marked symbol
indicating that the tape head is now there.
Modern Computers
CPU
137 3141 42
1004
2 7 1 8 2 8 0…
ProgramCounter
Registers
0 4 8 12 16 20 N
Data Bus
Modern Computers
CPU
137 3141 42
1004
2 7 1 8 2 8 0…
ProgramCounter
Registers
0 4 8 12 16 20 N
Data Bus
Fetches and executes
instructions
Modern Computers
CPU
137 3141 42
1004
2 7 1 8 2 8 0…
ProgramCounter
Registers
0 4 8 12 16 20 N
Data Bus
Fetches and executes
instructions
Holds address of next
instruction
Modern Computers
CPU
137 3141 42
1004
2 7 1 8 2 8 0…
ProgramCounter
Registers
0 4 8 12 16 20 N
Data Bus
Fetches and executes
instructions
Holds address of next
instruction
Stores values for quick access
Modern Computers
CPU
137 3141 42
1004
2 7 1 8 2 8 0…
ProgramCounter
Registers
0 4 8 12 16 20 N
Data Bus
Fetches and executes
instructions
Holds address of next
instruction
Stores values for quick accessHolds values
for later use
Modern Computers
● A modern computer has● A CPU for fetching, decoding, and executing
instructions,● A program counter for keeping track of the next
instruction to execute,● A finite set of fixed-size registers for doing quick
computation,● A finite random-access memory of
fixed-size integers for holding results.
An Idealized Computer
● An ideal random-access machine has● A CPU for fetching, decoding, and executing
instructions,● A program counter for keeping track of the next
instruction to execute,● A finite set of unbounded registers for doing quick
computation,● An infinite random-access memory of
unbounded integers for holding results.
The Idealized Computer
● The idealized computer is powerful enough to simulate a Turing machine:● Dedicate a special memory location to the state of
the TM.● Use the infinite memory to hold the contents of the
TM's infinite tape.
● Is the idealized computer any more powerful than the Turing machine?
1370
421
02
23
14
……
7PC
1370
421
02
23
14
……
7PC
0
:
1
,
1
:
3
7
4
2
,
RAM Tape
1370
421
02
23
14
……
7PC
0
:
1
,
1
:
3
7
4
2
,
7
RAM Tape
Register Tape
1370
421
02
23
14
……
7PC
0
:
1
,
1
:
3
7
4
2
,
7 1
3
7
2
=
1
+
4
7
9
RAM Tape
Register Tape
Scratch Tape
Simulating the Idealized Computer
● Have three tapes:● A RAM tape for holding the contents of RAM.● A register tape for holding the program counter and other registers.● A scratch tape for performing extra work.
● To execute an instruction:● Fetch the instruction from memory by scanning the memory tape for
the appropriate instruction.● Copy the instruction to the scratch tape.● Decode the instruction and fetch the operands from the RAM tape.● Perform the operation on the scratch tape.● Write the result back to the RAM tape.
All of these different models of computation are no more powerful than the basic Turing machine.
Just how powerful are Turing machines?
The Church-Turing Thesis states that
Any feasible model of computation is equivalent in power to a Turing machine.
This statement cannot be proven or disproven, but is widely considered true.
All Languages
RegularLanguages
All Languages
RegularLanguages DCFLs
All Languages
RegularLanguages CFLsDCFLs
All Languages
RegularLanguages CFLsDCFLs
All Languages
Turing-Recognizable
Languages
RegularLanguages CFLsDCFLs
All Languages
Problems Solvable by
Any Feasible Computing
Machine
Next Time
● The Limits of Turing Machines● What problems are provably impossible to solve
with Turing machines?● In other words, what problems are beyond the
realm of what can be computed?