Matakuliah Tahun : T0162/Teori Bahasa dan Automata : 2009 Pertemuan 6 DFA State Minimization 1 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : • << TIK-99 >> • << TIK-99>> 2 Outline Materi • • • • • Materi 1 Materi 2 Materi 3 Materi 4 Materi 5 3 Minimisasi DFA Untuk suatu Language yang sama dapat dibuat beberapa DFA dengan jumlah state berbedabeda. Contoh: DFA untuk string biner yang berakhir dengan 1. M1 M2 M3 A 0 0 B 0 0 1 A 0 1 D 1 B 0 A 1 1 C 0 0 C 1 1 0 1 B 1 4 • Suatu DFA mempunyai jumlah state minimal jika semua statenya distinguishable. • State p dan q disebut “distinguishable” jika terdapat string x dimana (p, x) dalam F, dan (q, x) tidak dalam F. 5 • Misal (p,a) = p’ dan (q,a) = q’. Jika p’ dan q’ distinguishable, maka p dan q juga distinguishable. • Pasangan state yang tidak distinguishable merupakan relasi ekuivalen. 6 Minimisasi DFA Algoritma : (Table-filling) begin 1. for p in F and q in Q-F do mark (p, q); 2. for setiap pasang (p, q) dalam F F atau (Q-F) (Q-F) do 3. if untuk suatu input a, ((p,a), (q, a)) diberi mark then begin 4. mark (p, q) 7 KONVERSI NFA MENJADI DFA Lanjutan.. 5. secara rekursif mark semua pasangan untuk list (p, q) end 6. for semua simbol input a do 7. tempatkan semua (p, q) pada list untuk ((p,a), (q, a)) kecuali jika (p,a) = (q, a) end 8 KONVERSI NFA MENJADI DFA Lanjutan.. Contoh : Minimumkan DFA berikut : 0 Start 0 a 1 e f 0 c 0 0 1 1 1 b 1 0 1 g d 1 0 h 1 0 9 KONVERSI NFA MENJADI DFA Lanjutan.. Buat tabel berikut : X : pasangan state distinguishable : pasangan state ekuivalen 10 KONVERSI NFA MENJADI DFA Lanjutan.. Perhatikan pasangan state : r = (p, a) dan s = (q, a) untuk setiap simbol a. Jika r dan s berbeda untuk string x, maka p dan q berbeda karena string ax. Jika (r, s) belum mendapat ‘X’, maka (p, q) ditempatkan di list (r, s). 11 Minimisasi DFA Minimum DFA adalah a, e 0 0 1 1 0 b, h 0 1 c g 1 0 d, f 1 12 << CLOSING>> 13
© Copyright 2024 Paperzz