NFA with moves
Let denote the null string.
Extend the transition function f: Q x ( U cfw_) P(Q)
E.g., f(a) = cfw_q1, q2; f() = cfw_q2, q3
a
a,
Are NFA with moves more powerful than NFA and
DNA? No.
Lemma. Given an NFA M with moves, we can construct
a

CS 9601
T W Lam
Theory of Computation
Automata, languages & complexity
~50%
Advanced undergraduate/first-year graduate level
Recommended reference: Sipsers book
Advanced algorithms
Online algorithms, online scheduling
Data structures for text indexi

Are Turing machines too primitive?
The answer is NO. It is believed that Turing machines
are as powerful as any computational models.
Today s lecture: Turing machines are powerful enough
to simulate two other computation models.
1
2-tape Turing machines

More undecidable languages
Last lecture
K = cfw_ M | M is a TM and M accepts M is
undecidable (Turing-undecidable, non-recursive).
ATM = cfw_ M,y | M is a TM and M accepts y
Today
HaltTM = cfw_ M,y | M is a TM and M halts on input y
ETM = cfw_ M |

Complexity classes
Undecidable
languages
Decidable languages
In the rest of this course, we focus on languages (decision
problems) that are decidable.
We want to know why some decidable languages are more
1
difficult than the others.
Resources
We classi

Warm up
Find the longest common substring of two or more
strings.
n
q
q
O(n3) time, O(n2) time where n is the total length.
A few decades ago, Knuth conjectured that a
linear time algorithm for this problem was
impossible.
Full-text Indexing
n
n
n
n
Bioin

Satisfiability
A formula F is satisfiable if there exists an assignment to its
Boolean variables such that F becomes true.
E.g., x1 x2 is satisfiable;
(x1 x2) (~ x2) is satisfiable;
x2 (~ x2) is not satisfiable.
The Satisfiability problem (SAT): Given a f