Ladda ner presentationen
Presentation laddar. Vänta.
1
Motsvarande RE = ( a+b )* abb
q0 q1 q4 q2 q3 a b Motsvarande RE = ( a+b )* abb
2
DFA för ( a + b )* abb s0 a s1 b s3 s4 s2
3
Minimering av DFA sluttillstånd s0 a s1 b s3 s4 s2 s0 , s2
4
DFA Minimization a ( b + c )*
q0 q1 a q4 q5 b q6 q7 c q3 q8 q2 q9 The subset construction b s2 b a s0 s1 b c c Final states s3 c
5
Then, apply the minimization algorithm to produce the minimal DFA
s3 s2 s0 s1 c b a final states s0 s1 a b + c
7
A B C D E
11
q
14
b b a b a q0 q1 q2 a
30
b b a b a q0 q1 q2 a
32
1 2 3 4 5 6
38
Ratio(x,2)
39
Greater?
43
Sipser 2.10 p. 105
48
1 2 4 3 5
51
A B C D E
52
A B C D E
56
q
59
b b a b a q0 q1 q2 a
74
b b a b a q0 q1 q2 a
76
1 2 3 4 5 6
82
Ratio(x,2)
83
Greater?
94
A B C D E
98
q
101
b b a b a q0 q1 q2 a
117
b b a b a q0 q1 q2 a
119
1 2 3 4 5 6
125
Ratio(x,2)
126
Greater?
130
Sipser 2.10 p. 105
134
Q = {q0, q1, q2, q3, q4} = {a, b, x, #} B = # = {a, b}
Input: baabab###….. a,R b,R a,R Q = {q0, q1, q2, q3, q4} = {a, b, x, #} B = # = {a, b} q0 is the start state F = {q4} b/x,R q0 q1 #,R q4 #,R x/#,R q3 q2 #/b,R a,L b,L #,L a,R b,R Accepted?
135
Turingmaskin 1 – vad gör den?
Input: Turingmaskin 1 – vad gör den? baabab###….. a,R b,R a,R Q = {q0, q1, q2, q3, q4} = {a, b, x, #} B = # = {a, b} q0 is the start state F = {q4} b/x,R q0 q1 #,R q4 #,R x/#,R q3 q2 #/b,R a,L b,L #,L Accepteras? a,R b,R
136
Turingmaskin 1 Initialt har den tapepekaren på första tecknet i inputsträngen. Strängen baabab är input och den strängen accepteras. Vid acceptans har tapen utseendet #aa#a##bbb och tapepekaren pekar på första b:et efter ##. Det maskinen gör är ersätta alla b:n med #:n i orginalsträngen och ge alla b:n som output sist. (Jag tror att q2->q2 genom a,R skulle kunna tas bort samt att q2->q2 #,b/R skulle kunna ersättas med q2->q2 #,b/L. Men jag är inte 100% säker och maskinen fungerar ju fint som den är. )
137
Turingmaskin 2 – vad gör den?
Input: Turingmaskin 2 – vad gör den? aabbcc###….. x,R #,R q0 q1 q2 q3 a/x,R b/y,R c/z,L y,R a,R y,R b,R z,R Q = {q0,...,q6} = {a,b,c,x,y,z,#} B = # = {a,b,c} start state = q0 F = {q6} a,L b,L c,L x,L y,L z,L y,R z,R q4 #,R #,R c,R z,R q6 #,R b,R c,R b,R c,R q5 #,R a,R Accepteras?
138
Turingmaskin – vad gör den?
q0 q1 q2 q3 q4 q5 q6 #,R a,R c,R z,R y,R a/x,R b/y,R b,R c/z,L a,L b,L c,L x,L y,L z,L x,R Q = {q0,...,q6} = {a,b,c,x,y,z,#} B = # = {a,b,c} start state = q0 F = {q6} aabbcc###….. Accepteras? Turingmaskin – vad gör den? Input:
139
Turingmaskin 2 Initialt har maskinen tapepekaren på första tecknet i inputsträngen. Strängen aabbcc är input. Den accepteras och då har tapen utseendet xxyyzz## och tapepekaren pekar på andra #:et på högersidan. Den har matchat uttrycket anbncn där n1.
140
Turingmaskin 3 – vad gör den?
Q = {q0,...,q9} = {a,1,#} B = # = {1} start state = q0 F = {q9} Turingmaskin 3 – vad gör den? q0 q1 q2 q3 1/a,R #,R 1,R q4 #/1,L 1,L #,L q5 a/1,R q6 q7 1x#1y## q8 q9 Input: Output?
141
Turingmaskin 3 Initialt har maskinen tapepekaren på första tecknet i inputsträngen. Turingmaskinen tar in två tal på unär form x och y. Den beräknar funktionen F(x,y) = xy och skriver sin output sist så att tapen efter körd funktion har utseendet 1x#1y#o där 1x#1y är orginalinput och o output. Vid färdig körning pekar tapepekaren på första 1:an i outputen.
142
Aug tenta
148
Re-ordering TM Given a string consisting of a's and b's, this machine will rearrange the string so that all the a's come before all the b's.
149
Sorting TM Turing Machine Pseudocode for Sort
Find the left end of the input Repeat: Find leftmost b, Look for an a to the right of b, replace it with b Until all a preceed all b
Liknande presentationer
© 2024 SlidePlayer.se Inc.
All rights reserved.