110 likes | 124 Views
Lecture 8 From NFA to Regular Language. Induction on k= # of states other than initial and final states. K=0. a. a*. b. c*a(d+bc*a)*. a. c. d. k > 1. ac*e. c. ac*d. a. e. bc*e. d. b. bc*d. Example 1. 0. 1. 0 +10. 1. 0. 0. Why?. 10. 0. 1. 1. (0+10)*0(1+10(0+10)*0)*.
E N D
Induction on k= # of states other than initial and final states • K=0 a a* b c*a(d+bc*a)* a c d
k > 1 ac*e c ac*d a e bc*e d b bc*d
Example 1 0 1 0+10 1 0 0 Why? 10 0 1 1 (0+10)*0(1+10(0+10)*0)* 0+10 1 0 1 0+10 (0+10)*0 0 10(1+10)*0 How to get in the final state? 10 Cycles at the final state.
Example 2 0 1 0 1 0 0 1 ε 0 0 ε 1 1 1 1 0 1 0 0 0 0 0 1 1 1 1 Solution 1 (0+10)*0(1+10(0+10)*0)* + 0*(1+01*1)(00*(1+01*1))*
0 0 1 0 01* ε 0 0 1 1 1+01*1 ε ε Solution 2 0+(1+01*1)0 (0+(1+01*1)0)*(01*+1+01*1) 01*+(1+01*1)
0+10 1 0 1 0 ε+1 ε 0 10 1 1 1 ε Solution 3 0+10+01*10 (0+10+01*10)*(1+01*(ε+1)) 1+01*(ε+1) Different ways may give different regular expressions for the same language.
Theorem • A language is regular if and only if it can be accepted by an NFA if and only if it can be accepted by a DFA.
Closure Properties • If A is regular, so is its complement A. • If A and B are regular, then A∩B, A\B, A U B, AB are regular.
Quotient • L1/L2 = {x | there exists y in L2 s.t. xy in L1} • If L1 is regular, so is L1/L2 . L1=L(M), M=(Q,Σ,δ,s,F) L1/L2 = L(M’), M’ = (Q,Σ,δ,s, F’) where F’={q in Q | there exists y in L2 s.t. δ(q,y) in F}
Example L2 = 0*1+0*11 L1 = L(M) 0 0 1 0 1 1 0 1