BU CS 332 – Theory of Computation
Lecture 3:
- Nondeterminism
- Equivalence of NFAs and
DFAs
- More on closure properties
Reading: Sipser Ch 1.1‐1.2
Mark Bun January 29, 2020
BU CS 332 Theory of Computation Lecture 3: Reading: Nondeterminism - - PowerPoint PPT Presentation
BU CS 332 Theory of Computation Lecture 3: Reading: Nondeterminism Sipser Ch 1.1 1.2 Equivalence of NFAs and DFAs More on closure properties Mark Bun January 29, 2020 Non Nondeterminism 1 0,1 0 0 0 1 1 A
Mark Bun January 29, 2020
1/29/2020 CS332 ‐ Theory of Computation 2
1/29/2020 CS332 ‐ Theory of Computation 3
1/29/2020 CS332 ‐ Theory of Computation 4
1/29/2020 CS332 ‐ Theory of Computation 5
1/29/2020 CS332 ‐ Theory of Computation 6
1/29/2020 CS332 ‐ Theory of Computation 7
0
0 to
1/29/2020 CS332 ‐ Theory of Computation 8
𝟒
𝟏 𝟏, 𝟐 𝟑 𝟒 𝟓 𝟓
𝟑 𝟐 𝟑 𝟒 𝟓 𝟏
1/29/2020 CS332 ‐ Theory of Computation 9
𝟐 𝟑 𝟒 𝟏
𝟏 𝟏, 𝟐 𝟑 𝟒 𝟒
𝟏
𝟑
𝟏
𝟐
1/29/2020 CS332 ‐ Theory of Computation 10
Ways to think about nondeterminism
parallel computation
computations
verifying the “right” choice Deterministic Computation Nondeterministic Computation accept or reject accept reject
1/29/2020 CS332 ‐ Theory of Computation 11
1/29/2020 CS332 ‐ Theory of Computation 12
1/29/2020 CS332 ‐ Theory of Computation 13
1/29/2020 CS332 ‐ Theory of Computation 14
1/29/2020 CS332 ‐ Theory of Computation 15
1/29/2020 CS332 ‐ Theory of Computation 16
accept reject
0
1/29/2020 CS332 ‐ Theory of Computation 17
1/29/2020 CS332 ‐ Theory of Computation 18
0
0
1/29/2020 CS332 ‐ Theory of Computation 19
1/29/2020 CS332 ‐ Theory of Computation 20
∈
0
0
1/29/2020 CS332 ‐ Theory of Computation 21
1/29/2020 CS332 ‐ Theory of Computation 22
1976 ACM Turing Award citation For their joint paper "Finite Automata and Their Decision Problem," which introduced the idea of nondeterministic machines, which has proved to be an enormously valuable concept. Their (Scott & Rabin) classic paper has been a continuous source
field.
Subset construction converts an state NFA into a ‐state DFA Could there be a construction that always produces, say, an
‐state DFA?
Theorem: For every , there is a language such that
‐state NFA recognizing .
states. Conclusion: For finite automata, nondeterminism provides an exponential savings over determinism (in the worst case).
1/29/2020 CS332 ‐ Theory of Computation 23