1 / 21

# NFAs and DFAs - PowerPoint PPT Presentation

NFAs and DFAs. Sipser 1.2 (pages 47-63). Last time…. NFA. A nondeterministic finite automaton (NFA) is a 5-tuple (Q, Σ , δ , q 0 , F) , where Q is a finite set called the states Σ is a finite set called the alphabet δ : Q × Σε → P(Q) is the transition function

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about ' NFAs and DFAs' - zwi

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### NFAs and DFAs

Sipser 1.2 (pages 47-63)

### Last time…

• A nondeterministic finite automaton (NFA) is a 5-tuple (Q, Σ, δ,q0, F), where

• Q is a finite set called the states

• Σ is a finite set called the alphabet

• δ: Q × Σε→ P(Q)is the transition function

• q0∈Q is the start state

• F⊆Q is a set of accept states

• In-class exercise:

• Let N=(Q, Σ, δ, q0, F)be a NFA and let

wbe a string over the alphabet Σ

• Then Nacceptsw if

• w can be written as w1w2w3…wm with each wi∈Σε

and

• There exists a sequence of states

s0,s1,s2,…,sm exists in Q with the following conditions:

• s0=q0

• si+1∈δ(si,wi+1) fori = 0,…,m-1

• sn∈F

### One last operation

Kleenestar operation

• Let A be a language.

• The Kleene star operation is

A* = {x1x2…xk | k ≥ 0 and each xi ∈ A}

Exercise

• A = {w | wis a string of 0s and 1s containing an odd number of 1s}

• B = {w | wis a string of 0s and 1s containing an even number of 1s}

• C = {0,1}

• What are A*, B*, and C*?

Kleene pronounced his last name klay'nee. His son, Ken Kleene, wrote: "As far as I am aware this pronunciation is incorrect in all known languages. I believe that this novel pronunciation was invented by my father." Dr. "Clay Knee" must have been a geek of the first water, to be sure!

Kleene star

• Theorem: The class of languages recognized by NFAs is closed under the Kleene star operation.

… somebody would prove that the

class of languages recognized by NFAs

and

the class of languages recognized by DFAs

were equal…

• We’d have:

• The class of regular languages is closed under:

• Concatenation

• Kleene star

a cute proof for closure under union!

• Theorem: A language is regular if and only if there exists an NFA that recognizes it.

• Proof:

(⇒)

Let A be a regular language…

• M is a 5-tuple (Q, Σ, δM, q0, F), where

• Q is a finite set called the states

• Σ is a finite set called the alphabet

• δ: Q × Σ → Qis the transition function

• q0∈Q is the start state

• F⊆Q is a set of accept states

• N is a 5-tuple (Q, Σ, δN, q0, F), where

• Q is a finite set called the states

• Σ is a finite set called the alphabet

• δ: Q × Σε → P(Q)is the transition function

• q0∈Q is the start state

• F⊆Q is a set of accept states

• Can we define N from M?

• Theorem: A language is regular if and only if there exists an NFA that recognizes it.

• Proof:

(⇒)

Let A be a language accepted by NFA

N = (Q, Σ, δ, q0, F)

• Definition: Two machines are equivalent if they recognize the same language

• Let’s prove:

Theorem: Every NFA has an equivalent DFA.

Proof:

• Let A be a language accepted by NFA

N = (Q, Σ, δ, q0, F)

• We construct a DFA M=(Q’, Σ, δ’, q0’, F’) recognizing A

• Q’ = P(Q)

• For R∈Q' and a∈Σ,

define δ'(R,a) = ∪ δ(r,a)

• q0’ = {q0}

• F’ = { R∈Q’ | R contains an accept state from F}

r∈R

Proof:

• Let A be a language accepted by NFA

N = (Q, Σ, δ, q0, F)

• We construct a DFA M=(Q’, Σ, δ’, q0’, F’) recognizing A

• Q’ = P(Q)

• For R∈Q' and a∈Σ,

define δ'(R,a) = ∪ E(δ(r,a))

where E(R) = {q | q can be reached from R along

0 or more ε arrows}

• q0’ = E({q0})

• F’ = { R∈Q’ | R contains an accept state from F}

r∈R