NFA Teori Bhs dn Automt Visk Mutiwni - Informtik FMIPA Unsyih 1
NFA NFA: Nondeterministic Finite Automt Atu Automt Hingg NonDeterministik (AHND) Slh stu bentuk dri Finite Automt NFA memiliki kemmpun untuk berd pd beberp stte pd wktu yng sm Trnsisi dri sutu stte terhdp sutu simbol input dpt berpindh ke beberp stte Visk Mutiwni - Informtik FMIPA Unsyih 2
NFA Bermul dri stte wl Output terim jik pemilihn trnsisi berdsrkn input berkhir di stte khir Secr intuisi: NFA sellu menebk yng benr Visk Mutiwni - Informtik FMIPA Unsyih 3
Nondeterministic Finite Automton (NFA) Alphbet = {} q 1 q2 q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 4
Alphbet = {} Ad du pilihn q 1 q2 Tidk d trnsisi q 0 q 3 Tidk d trnsisi Visk Mutiwni - Informtik FMIPA Unsyih 5
Pilihn pertm q 1 q2 q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 6
Pilihn pertm q 1 q2 q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 7
Semu input berhsil dihbiskn First Choice q 1 q2 terim q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 8
Pilihn kedu q 1 q2 q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 9
Tidk semu input berhsil dihbiskn Pilihn kedu q 0 q 1 q2 q 3 Automton Hlt/berhenti tolk Visk Mutiwni - Informtik FMIPA Unsyih 10
Sutu NFA menerim input string: Jik d sutu proses komputsi pd NFA yng menerim string tersebut Mksudny: semu input string berhsil diproses dn utomton berd di stte penerim Visk Mutiwni - Informtik FMIPA Unsyih 11
diterim oleh NFA di bwh: terim q 1 q2 q 1 q 2 q 0 q 3 Ini komputsi yng menerim q 0 q 3 tolk Komputsi ini dibikn Visk Mutiwni - Informtik FMIPA Unsyih 12
Contoh penolkn q 1 q2 q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 13
Pilihn pertm tolk q 1 q2 q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 14
Pilihn kedu q 1 q2 q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 15
Pilihn kedu q 1 q2 q 0 q 3 tolk Visk Mutiwni - Informtik FMIPA Unsyih 16
Contoh penolkn linny q 1 q2 q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 17
Pilihn pertm q 1 q2 q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 18
Tidk semu input berhsil dihbiskn Pilihn pertm q 1 q2 tolk q 0 q 3 Automton hlt/berhenti Visk Mutiwni - Informtik FMIPA Unsyih 19
Pilihn kedu q 1 q2 q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 20
Tidk semu input berhsil dihbiskn Pilihn kedu q 0 q 1 q2 q 3 Automton hlt/berhenti tolk Visk Mutiwni - Informtik FMIPA Unsyih 21
Sutu NFA menolk input string: Jik tidk d sutu proses komputsi pd NFA yng menerim string tersebut. Untuk setip proses komputsi: Semu input berhsil dihbiskn nmun utomton berd bukn pd stte penerim ATAU Belum semu input berhsil dihbiskn Visk Mutiwni - Informtik FMIPA Unsyih 22
ditolk oleh NFA di bwh q 1 q 2 tolk q 1 q2 q 0 q 3 tolk q 0 q 3 Semu komputsi yng mungkin berkhir dengn penolkn Visk Mutiwni - Informtik FMIPA Unsyih 23
ditolk oleh NFA di bwh tolk q 1 q 2 q 1 q2 q 0 q 0 q 3 q 3 tolk Semu komputsi yng mungkin berkhir dengn penolkn Visk Mutiwni - Informtik FMIPA Unsyih 24
Bhs yng diterim: L {} q 1 q2 q 0 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 25
Trnsisi Lmbd q0 q q3 1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 26
q0 q q3 1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 27
q0 q q3 1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 28
Kepl input tpe hed tidk bergerk q0 q q3 1 q2 Automton berpindh stte Visk Mutiwni - Informtik FMIPA Unsyih 29
Semu input berhsil dihbiskn q0 q q3 1 q2 terim String diterim Visk Mutiwni - Informtik FMIPA Unsyih 30
Contoh penolkn q0 q q3 1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 31
q0 q q3 1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 32
Kepl tpe tidk bergerk q0 q q3 1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 33
Belum semu input berhsil dihbiskn Automton hlt/berhenti q0 1 tolk q q3 q2 String ditolk Visk Mutiwni - Informtik FMIPA Unsyih 34
Bhs yng diterim: L {} q0 q q3 1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 35
Contoh lin NFA q b q 2 q0 1 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 36
b q b q 2 q0 1 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 37
b q b q 2 0 q 1 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 38
b terim q q b 1 0 q 2 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 39
String yng lin b b q b q q3 0 q1 2 Visk Mutiwni - Informtik FMIPA Unsyih 40
b b q b q q3 0 q1 2 Visk Mutiwni - Informtik FMIPA Unsyih 41
b b q b q q3 0 q1 2 Visk Mutiwni - Informtik FMIPA Unsyih 42
b b q b q q3 0 q1 2 Visk Mutiwni - Informtik FMIPA Unsyih 43
b b q b q q3 0 q1 2 Visk Mutiwni - Informtik FMIPA Unsyih 44
b b q b q q3 0 q1 2 Visk Mutiwni - Informtik FMIPA Unsyih 45
b b q b q q3 0 terim q1 2 Visk Mutiwni - Informtik FMIPA Unsyih 46
Bhs yng diterim L b, bb, bbb,... b q b q 2 q0 1 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 47
Contoh lin NFA 0 q0 1 1 q 0,1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 48
Bhs yng diterim L(M ) = = { } λ, 10, { 10}* 1010, 101010,... 0 q0 1 1 q 0,1 q2 (redundnt stte) Visk Mutiwni - Informtik FMIPA Unsyih 49
Perhtikn: Simbol tidk pernh muncul pd input tpe Automt sederhn: M 1 q 0 M 2 q 0 L(M 1 ) = {} (M ) = {λ} L 2 Visk Mutiwni - Informtik FMIPA Unsyih 50
NFA lebih menrik kren kit dpt mengekspresikn bhs lebih sederhn dibnding DFA NFA M 1 DFA M 2 q 0 q1 q 2 q 0 q 1 L( M1) = { } Visk Mutiwni - Informtik FMIPA Unsyih L( M 2) = { } 51
Definisi Forml dri NFA M Q,,, q0, F Q : q, q q Set/kumpuln stte 0 1, Alfbet input, contoh b Fungsi trnsisi : : q 0 : F : Stte wl Set/kumpuln stte penerim 2, Visk Mutiwni - Informtik FMIPA Unsyih 52
Fungsi trnsisi Fungsi trnsisi DFA: : Q Q Fungsi trnsisi NFA: : Q ( { }) ( Q) q x x x q 1 q 1 Stte hsil dengn stu trnsisi terhdp simbol x q x q, q,,, 1 2 q k q k Visk Mutiwni - Informtik FMIPA Unsyih 53
q, q 0 1 1 0 q0 1 1 q 0,1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 54
( q1,0) { q0, q2} q 0 0 1 q 0,1 1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 55
( q, ) { q } 0 2 q 0 0 1 q 0,1 1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 56
( q,1) 2 q 0 0 1 q 0,1 1 q2 Visk Mutiwni - Informtik FMIPA Unsyih 57
Biskh nd membut tbel trnsisi untuk NFA? 0 1 λ q0 {} {q1} {q2} q1 {q0, q2} {q2} {} q2 {} {} {} Visk Mutiwni - Informtik FMIPA Unsyih 58
Fungsi trnsisi diperlus * Sm sj dengn * nmun berlku pd string q, q 0 1 q 4 q 5 q 0 q 1 b q 2 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 59
* q, q, q 0 4 5 q 4 q 5 q 0 q 1 b q 2 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 60
* q, b q, q, q 0 2 3 0 q 4 q 5 q 0 q 1 b q 2 q 3 Visk Mutiwni - Informtik FMIPA Unsyih 61
Ksus khusus: Untuk setip stte q q * q, Visk Mutiwni - Informtik FMIPA Unsyih 62
Secr umum q * j qi, w Bermkn d jln dri q i menuju q j dengn lbelw q i w q j qi 1 2 w 1 2 k k q j Visk Mutiwni - Informtik FMIPA Unsyih 63
Bhs dri NFA M Bhs yng diterim oleh M w w L 1,,... 2 w n M dlh: dimn * ( q 0, w m ) { q i,..., q k,, q j } dn terdpt q k F (stte penerim) Visk Mutiwni - Informtik FMIPA Unsyih 64
w m L M * ( q, 0 w m ) q i w m q0 w m q k q k F w m q j Visk Mutiwni - Informtik FMIPA Unsyih 65
F q 0,q 5 q 4 q 5 q 0 q 1 b q 2 q 3 * q, q, q 0 4 5 L(M ) F Visk Mutiwni - Informtik FMIPA Unsyih 66
F q 0,q 5 q 4 q 5 q 0 q 1 b q 2 q 3,,, q b q q q * 0 2 3 0 b L M F Visk Mutiwni - Informtik FMIPA Unsyih 67
F q 0,q 5 q 4 q 5 q 0 q 1 b q 2 q 3 *,, q b q q 0 4 5 F b L(M ) Visk Mutiwni - Informtik FMIPA Unsyih 68
F q 0,q 5 q 4 q 5 q 0 q 1 b q 2 q 3 * q 0, b q b LM 1 F Visk Mutiwni - Informtik FMIPA Unsyih 69
q 4 q 5 q 0 q 1 b q 2 q 3 L M b * b * { } Visk Mutiwni - Informtik FMIPA Unsyih 70
NFA menerim Bhs Regulr 71 Visk Mutiwni - Informtik FMIPA Unsyih
Ekuivlensi Mesin Otomt Definisi: Mesin M1 diktkn ekuivlen dengn mesin M 2 jik LM 1 L M 2 Visk Mutiwni - Informtik FMIPA Unsyih 72
Contoh mesin yng ekuivlen LM 1 {10} * NFA 0 M 1 q q 0 1 1 LM 2 {10} * 0 q q 1 0 1 q2 1 Visk Mutiwni - Informtik FMIPA Unsyih DFA 0 M 2 0,1 73
Teorem: Bhs diterim oleh NFA Bhs Regulr Bhs yng diterim oleh DFA NFA dn DFA memiliki kekutn komputsi yng sm, dn menerim set bhs yng sm Visk Mutiwni - Informtik FMIPA Unsyih 74
Pembuktin: Bhs diterim oleh NFA Kit tunjukkn: AND Set equlity A = B dpt dibuktikn dengn A subset B dn A superset dri B Bhs Regulr Bhs diterim oleh NFA Bhs Regulr Visk Mutiwni - Informtik FMIPA Unsyih 75
Pembuktin thp 1 Bhs diterim oleh NFA Bhs Regulr Setip DFA secr otomtis jug merupkn NFA Setip bhs L yng diterim oleh DFA Pstilh jug diterim oleh NFA Visk Mutiwni - Informtik FMIPA Unsyih 76
Pembuktin thp 2 Bhs diterim oleh NFA Bhs Regulr Setip NFA dpt dikonversi ke bentuk DFA yng ekuivlen Setip bhs L yng diterim oleh NFA Pstilh jug diterim oleh DFA Visk Mutiwni - Informtik FMIPA Unsyih 77
Konversi NFA ke DFA NFA M q 0 q1 q2 b DFA M q 0 Visk Mutiwni - Informtik FMIPA Unsyih 78
NFA M * ( q0, ) { q1, q2} q 0 q1 q2 b DFA M q 0 q 1,q 2 Visk Mutiwni - Informtik FMIPA Unsyih 79
NFA M * ( q 0, b) q 0 q1 q2 b Set kosong DFA M q 0 q 1,q 2 b Stte jebkn Visk Mutiwni - Informtik FMIPA Unsyih 80
NFA M q 0 q1 q2 b * ( q1, ) { q1, q2} * ( q 2, ) union q 1,q 2 DFA M q 0 q 1,q 2 b Visk Mutiwni - Informtik FMIPA Unsyih 81
NFA M q 0 q1 q2 b * ( q1, b) { q0} * q, b) { q } ( 2 0 union q 0 DFA M b q 0 q 1,q 2 b Visk Mutiwni - Informtik FMIPA Unsyih 82
NFA M q 0 q1 q2 b DFA M b q 0 q 1,q 2 b Visk Mutiwni - Informtik FMIPA Unsyih,b trp stte 83
Akhir konstruksi NFA M q 0 q1 q2 b q F 1 DFA M b q 0 q 1,q 2 b q q F 1, 2 Visk Mutiwni - Informtik FMIPA Unsyih,b 84
Prosedur konversi NFA ke DFA Input: sutu NFA M Output: sutu DFA sehingg M L yng ekuivlen M L(M ) Visk Mutiwni - Informtik FMIPA Unsyih 85
Jik NFA memiliki stte q, q, q,... 0 1 2 Mk DFA memiliki stte yng bersl dri power set,,,,,,,..., q q q q q q q 0 1 0 1 1 2 3 Visk Mutiwni - Informtik FMIPA Unsyih 86
Lngkh-lngkh konversi lngkh 1. Stte wl NFA: q0 * q q 0, 0, stte wl DFA: q 0, Visk Mutiwni - Informtik FMIPA Unsyih 87
NFA M q 0 q1 q2 b * q, q 0 0 DFA M q 0 Visk Mutiwni - Informtik FMIPA Unsyih 88
lngkh 2. Untuk setip stte DFA komputsikn pd NFA * * * q i q... j,, q, m tmbh trnsisi ke DFA { qi, qj,..., qm} Union, q,..., q} { qk l n q, q,..., q }, { q, q,..., q} { i j m k l n Visk Mutiwni - Informtik FMIPA Unsyih 89
Exmple NFA M *( q0, ) { q1, q2} q 0 q1 q2 b DFA M q 0 q 1,q 2 q, q q 0 1, Visk Mutiwni - Informtik FMIPA Unsyih 2 90
lngkh 3. Ulngi lngkh 2 untuk setip stte pd DFA dn semu simbol dlm lfbet hingg tidk d lgi stte yng bis ditmbhkn ke DFA Visk Mutiwni - Informtik FMIPA Unsyih 91
NFA M q 0 q1 q2 b DFA M b q 0 q 1,q 2 b Visk Mutiwni - Informtik FMIPA Unsyih,b 92
lngkh 4. Untuk setip stte pd DFA { qi, q j,..., q m } jik q j merupkn stte penerim pd NFA mk, { qi, q j,..., qm} merupkn stte penerim pd DFA Visk Mutiwni - Informtik FMIPA Unsyih 93
NFA M q 0 q1 q2 q F 1 b DFA M b q 0 q 1,q 2 b q q F 1, 2 Visk Mutiwni - Informtik FMIPA Unsyih,b 94
Lemm: Jik kit berhsil mengkonversi NFA ke DFA M mk kedu otomt tersebut ekuivlen M LM LM Proof: Kit kn tunjukkn: LM LM dn LM LM Visk Mutiwni - Informtik FMIPA Unsyih 95
Pertm sekli tunjukkn: LM LM Kit buktikn dengn cr: w L(M ) w L(M ) Visk Mutiwni - Informtik FMIPA Unsyih 96
NFA Kit pertimbngkn: w L(M ) q0 w q f simbol w 1 2 k q0 1 2 k q f Visk Mutiwni - Informtik FMIPA Unsyih 97
simbol qi i q j Merupkn ringksn dri sub-pth qi simbol i q j Visk Mutiwni - Informtik FMIPA Unsyih 98
Kit tunjukkn jik w L(M ) NFA M : q0 1 2 w 1 2 k k q f mk DFA M : 1 2 k { q 0, } stte lbel w L(M ) Visk Mutiwni - Informtik FMIPA Unsyih {, } q f stte lbel 99
Secr lebih umum, kit tunjukkn bhw pd M NFA (string ppun) M : q0 v 1 1 2 qi 2 q j n ql n qm mk DFA M : { q 0, } 1 2 n { q, } { q, } { q, } {, } i j l q m Visk Mutiwni - Informtik FMIPA Unsyih 100
Pembuktin secr induksi v Dsr induksi: v 1 v 1 NFA M : q 1 0 qi DFA M : 1 { q 0, } {, } q i Adlh benr sewktu pengkonversin menjdi M Visk Mutiwni - Informtik FMIPA Unsyih 101
Hipotesis induksi: 1 v k v 1 2 k Anggp seperti di bwh NFA M : q 0 1 2 q i q j q c k qd DFA M : { q 0, } 1 2 k { q, } { q, } { q, } {, } i j c q d Visk Mutiwni - Informtik FMIPA Unsyih 102
Lngkh induksi: v k 1 v 1 2 k k1 k1 v Mk terbukti benr dengn dny konstruksi v M NFA M : q 0 1 2 q i q j q c k qd k1 q e v DFA M : 1 2 k k1 { q 0, } { q, } { q, } { q, } {, } i j c q d {, } q e v Visk Mutiwni - Informtik FMIPA Unsyih 103
Oleh kren itu jik w L(M ) w 1 2 k NFA M : q0 1 2 k q f mk DFA M : 1 2 k { q 0, } {, } q f w L(M ) Visk Mutiwni - Informtik FMIPA Unsyih 104
Kit telh tunjukkn: LM LM Dengn cr yng sm, kit jug dpt buktikn: LM LM Mk: LM LM Akhir pembuktin Visk Mutiwni - Informtik FMIPA Unsyih 105
Jdi p kesimpuln khirny? Visk Mutiwni - Informtik FMIPA Unsyih 106