Download presentation
Presentation is loading. Please wait.
1
CSCI 2670 Introduction to Theory of Computing
September 8, 2005
2
Announcement Remove problems 1.46c and 1.55(c,f,j) from your homework assignments New assignment 1.7(d,h), 1.16b, 1.21b (show the GNFA steps),1.19a Old text numbers 1.5(d,g), 1.12b, 1.16b, 1.14a
3
Agenda This week Today Proved every RE has a corresponding DFA
I.e., every RE describes a regular language Showed how to convert GNFA to RE Today Prove every DFA has a corresponding RE Example of conversion from GNFA to RE Proving a language is not regular?
4
Accounting for loops a22a23a33*a32 a11a13a33*a31 a12a13a33*a32 q1’
5
Every DFA has a corresponding RE
Proof: Let M be any DFA and let w be any string in Σ*. Convert M to G, a GNFA, then convert G to R, a regular expression, using methods shown in class. Want to show wL(M) iff wL(R). First show wL(M) iff wL(G). Then show wL(G) iff wL(R).
6
wL(M) iff wL(G) Assume wL(M) and w = w1w2…wn, where each wi Σ. Then there is a sequence of states q1, q2, …, qn+1 such that q1 = q0 qn+1F qi+1 = (qi,wi) for each i = 1, 2, …, n When w is read by G, the sequence of states qs, q1, q2, …, qn+1, qt would accept w i.e., wL(G)
7
wL(M) iff wL(G) Assume wL(G) and w = w1w2…wn, where each wiΣ. Then there is a sequence of states qs, q1, q2, …, qn+1, qt such that q1 = q0 qn+1F qi+1 = (qi,wi) for each i = 1, 2, …, n When w is read by M, the sequence of states q1, q2, …, qn+1 would accept w i.e., wL(M)
8
wL(G) iff wL(R) Prove by induction on number of states in G
Base case: If G has 2 states then clearly wL(G) iff wL(R). Induction step: Assume wL(G) iff wL(R) for every G with k-1 states. Prove w L(G) iff wL(R) for every G with k states.
9
wL(R) if wL(G) Assume wL(G) and an accepting branch of the computation G enters on w is qs, q1, q2, …, qt. Let G’ be the GNFA that results from removing one of G’s states, qrip. There are two possibilities: Case 1: qrip is never entered in the computation of w. Then the same branch of computation exists in G’.
10
wL(R) if wL(G) Assume wL(G) and an accepting branch of the computation G enters on w is qs, q1, q2, …, qt. Let G’ be the GNFA that results from removing one of G’s states, qrip. There are two possibilities: Case 2: qrip is entered in the computation of w (bracketed byqi and qj). Then the new transition between qi and qj in G’ describes the computation that could be done on the computation of w through the branch qi, qrip, qj. So G’ accepts w. By induction wL(R).
11
wL(G) if wL(R) Assume wL(R). By induction hypothesis, wL(G’), the k-1 state GNFA resulting from removing one state from G. By construction, any computation in G’ can also be done in G – possibly going through an extra state qrip. Therefore, wL(G).
12
Example 1 q1 q2
13
Example 1 1 q1 q2 ε ε qs qt Step 1: Add two new states
14
Example 101*0 1 1 q1 q2 ε ε qs qt 1*0 Step 2: Remove q1
15
Example 101*0 q2 ε qs qt 1*0 1*0(101*0)* Step 3: Remove q2
16
Example So this DFA 1 q1 q2 Is equivalent to the regular expression 1*0(101*0)*
17
Have an excellent weekend
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.