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
Are NFA with moves more powerful than NFA and
Lemma. Given an NFA M with moves, we can construct
T W Lam
Theory of Computation
Automata, languages & complexity
Advanced undergraduate/first-year graduate level
Recommended reference: Sipsers book
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.
2-tape Turing machines
More undecidable languages
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
HaltTM = cfw_ M,y | M is a TM and M halts on input y
ETM = cfw_ M |
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
difficult than the others.
Find the longest common substring of two or more
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
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