MODUL VI TEORI BAHASA DAN AUTOMATA Tujuan : Mahasiswa dapat malakukan operasi gabungan/konkatenasi, dan membangun FSA optimal Materi : Operasi Gabungan Operasi Konkatenasi Alur Pengembangan FSA Contoh-contoh
PENGGABUNGAN 2 FINITE STATE AUTOMATA Pada dua mesin Finite Automata kita dapat melakukan penggabungan, disebut union serta konkatensi. Misalkan kita mempunyai dua mesin, M pada gambar 9 dan M2 pada gambar q A q A Gambar. Mesin M q B q B Gambar 2. Mesin M 2 Bila diketahui L(M) adalah bahasa yang diterima oleh M dan L(M2) adalah bahasa yang diterima olehm2. Dilakukan operasi union berikut: L(M3) = L(M) L(M2) (atau dengan notasi lsin: L(M3) = L(M) + L(M2) ). Kita bisa membuat mesin M3 yang menerima bahasa L(M3) dengan cara: Tambahkan state awal untuk M3, hubungkan dengan state awal M dan state awal M2 menggunakan transisi Tambahkan state akhir untuk M3, hubungkan dengan state-state akhir M dan state-state akhir M2 menggunakan transisi Kita lihat operasi union ini pada gambar qs da qf adalah state awal dan state final mesin baru kita.
q A q A q S q q B q B Gambar 3. Mesin M 3 KONKATENASI 2 FINITE STATE AUTOMATA Ditentukan L(M4) = L(M) L(M2). Kita bisa membuat mesin M4 yang menerima bahasa L(M4) dengan cara: State awal M menjadi state awal M4 State-state akhir M2 menjadi state akhir M4 Hubungan state-state akhir M dengan state awal M2 menggunakan transisi. Kita lihat hasil operasi konkatensi ini pada gambar 2. q S q A q B q f Gambar 4. Mesin M 4
ALUR PENGEMBANGAN FSA FSA hasil operasi gabungan atau konkatenasi adalah sebuah -move. Untuk selanjutnya harus diubah menjadi tanpa -move. Secara lebih lengkap alur pengembangan FSA dapat digambarkan sebagai berikut : Analisa masalah dan perancangan FSA awal Sub Sub Sub Operasi Gabungan atau operasi konkatenasi -move -move -move -move Reduksi -move Penyederhanaan FSA Sederhana Ekivalensi to DFA DFA Reduksi useless state DFA Optimal
SOAL-SOAL UNTUK PERSIAPAN UTS Soal A : Diberikan mesin automata sebagai berikut : Q = {p, q, r, s}; Σ = {, }; S = p ; F = {s} Untuk setiap tabel transisi gambarkan diagram mesinnya (diagram state) lembar jawaban anda, dan jawablah soal dikolom sampingnya Tabel transisi Soal I.. tentukanlah apakah diterima atau ditolak p p, q p 2. tentukanlah apakah diterima atau ditolak q r r 3. tentukanlah apakah diterima atau ditolak 4. tentukanlah apakah diterima atau ditolak r s - 5. tentukanlah apakah diterima atau ditolak s s s 6. tentukanlah apakah diterima atau ditolak 7. tentukanlah apakah diterima atau ditolak II. 8. tentukanlah apakah diterima atau ditolak p q p 9. tentukanlah apakah diterima atau ditolak q r s. tentukanlah apakah diterima atau ditolak. tentukanlah apakah diterima atau ditolak r s q 2. tentukanlah apakah diterima atau ditolak s p s 3. tentukanlah apakah diterima atau ditolak 4. tentukanlah apakah diterima atau ditolak III p q r q r p r s r s q s 5. tentukanlah apakah diterima atau ditolak 6. tentukanlah apakah diterima atau ditolak 7. tentukanlah apakah diterima atau ditolak 8. tentukanlah apakah diterima atau ditolak 9. tentukanlah apakah diterima atau ditolak 2. tentukanlah apakah diterima atau ditolak 2. tentukanlah apakah diterima atau ditolak Bagian B : Untuk setiap diagram mesin (diagram state) berikut tuliskanlah definisi formal 5 tuple dan tabel transisinya pada lembar jawaban anda, dan jawablah soal dikolom sampingnya Diagram state soal I. Tentukanlah apakah string berikut dapat diterima atau q ditolak : q. 2. 3.
q 2 q 3 4. 5. II. q q 2 q q 4 q 3 q 5,, Tentukanlah apakah string berikut dapat diterima atau ditolak 6. 7. 8. 9.. III. q q 2 q q 4 q 3 q 5, Tentukanlah apakah string berikut dapat diterima atau ditolak. 2. 3. 4. 5. Bagian C :. Buatlah Deterministic Finite Automata yang ekivalen dengan Non-deterministic Finite Automata berikut : Q = {p, q, r, s}; Σ = {, } ; S = p ; F = {s} p p, q p Fungsi transisinya dinyatakan dalam tabel transisi : q r r, p r s - s - s 2. Buatlah Deterministic Finite Automata yang ekivalen dengan Non-deterministic Finite Automata berikut : Q = {q, q, q 2 }; Σ = {, }; S = q ; F = {q } Fungsi transisinya dinyatakan dalam tabel transisi : q q q q, q 2 - q 2 q 2 q q, q 2