Professional Documents
Culture Documents
Pada dua mesin Finite Automata kita dapat melakukan penggabungan, disebut union serta konkatensi. Misalkan kita mempunyai dua mesin NFA, M1 pada gambar 9 dan M2 pada gambar 10
0
qA0
qA1
Gambar 1. Mesin M1
1
qB0
qB1
Gambar 2. Mesin M2 Bila diketahui L(M1) adalah bahasa yang diterima oleh M1 dan L(M2) adalah bahasa yang diterima olehM2. Dilakukan operasi union berikut: L(M3) = L(M1) L(M2) (atau dengan notasi lsin: L(M3) = L(M1) + L(M2) ). Kita bisa membuat mesin M3 yang menerima bahasa L(M3) dengan cara:
Tambahkan state awal untuk M3, hubungkan dengan state awal M1 dan state awal M2 menggunakan transisi
Tambahkan state akhir untuk M3, hubungkan dengan state-state akhir M1 dan state-state akhir M2 menggunakan transisi
Kita lihat operasi union ini pada gambar 11 qs da qf adalah state awal dan state final mesin baru kita.
0 1
qA0
qA1
qS
1
q1
qB0
qB1
Gambar 3. Mesin M3
State awal M1 menjadi state awal M4 State-state akhir M2 menjadi state akhir M4 Hubungan state-state akhir M1 dengan state awal M2 menggunakan transisi .
0 qS
1
qA
1
qB
0
1 qf 0
Gambar 4. Mesin M4
Problem Analisa masalah dan perancangan FSA awal Sub Problem Sub Problem Sub Problem
NFA -move
NFA -move
NFA -move
NFA Penyederhanaan FSA NFA Sederhana Ekivalensi NFA to DFA DFA Reduksi useless state DFA Optimal PUSAT PENGEMBANGAN BAHAN AJAR UMB
Puji Catur Siswipraptini S.Kom Teori Bahasa Otomata
II.
p q r s
0 q r s p
1 p s q s
III
p q r s
0 q r s q
1 r p r s
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 I. q0 0 0 q2 1 1 1 1 q1 0 q3 0 soal Tentukanlah apakah string berikut dapat diterima atau ditolak : 1. 1101 2. 0101 3. 1001 4. 1010 5. 0011
II. 0 q0 1 q2 0 III. 0 q0 1 0 q2
q1 0
q3
0, 1 Tentukanlah apakah string berikut dapat diterima atau ditolak 6. 1101 0 7. 0101 8. 1001 9. 1010 10. 0011
1 1 q4
q5
0, 1
q1 0 1
q3
0 0
1 1 q4
q5 0, 1
Tentukanlah apakah string berikut dapat diterima atau ditolak 11. 1101 12. 0101 13. 1001 14. 1010 15. 0011
Bagian C : 1. Buatlah Deterministic Finite Automata yang ekivalen dengan Non-deterministic Finite Automata berikut : Q = {p, q, r, s}; = {0, 1} ; S=p ; F = {s} Fungsi transisinya dinyatakan dalam tabel transisi :
p q r s 0 p, q r s 1 p r, p s
2. Buatlah Deterministic Finite Automata yang ekivalen dengan Non-deterministic Finite Automata berikut : Q = {q0, q1, q2}; = {0, 1}; S = q0 ; F = {q1} Fungsi transisinya dinyatakan dalam tabel transisi :
q0 q1 q2 0 q1 q1, q2 q0 1 q2 q1, q2
0 q2
1 1 q4 0, 1
5. Pelajarilah dengan seksama persoalan berikut ini : Sebuah rombongan yang terdiri dari 3 orang bikshu dan 3 orang kanibal tiba ditepi sebuah sungai yang dalam dan berbahaya. Satu-satunya cara untuk menyebrangi sungai adalah dengan sebuah perahu yang tertambat dipinggir sungai tersebut. Perahu hanya mampu memuat 2 orang penumpang. Perahu tidak memiliki tukang dayung sehingga mesti ada bikshu atau kanibal membawa perahu dari satu sisi ke-sisi lainnya. Persoalannya adalah jika disatu keadaan terdapat lebih banyak kanibal dibanding bikshu, maka bikshu tersebut akan dimakan oleh kanibal tersebut. a. b.
6.
Definisikanlah suatu mesin automata yang menggambarkan penyelesaian Definisikanlah bentuk formal 5 tuple dari mesin yang anda buat.
persoalan tersbut.
Bila diketahui L(M1) adalah bahasa yang diterima oleh M1 pada gambar 1, dan L(M2) adalah bahasa yang diterima oleh M2 pada gambar 2. Diketahui L(M3) = L(M1) + L(M2), serta L(M4) = L(M1)L(M2). Gambarkan : a. Mesin M3 yang menerima bahasa L(M3) b. Mesin M4 yang menerima bahasa L(M4)
0 1
q0
q1
0,1
Gambar 1
0
q1
q0
q1
Gambar 2
7.
Dari diagram NFA dengan moves berikut, gambarkan diagram NFA tanpa
q0
q1
q2
b
Pendahuluan Sasaran : Mahasiswa memahami pengertian dan kedudukan Teori Bahasa dan Otomata (TBO) pada ilmu komputer Bahan : Definisi dan Pengertian Teori Bahasa dan Otomata Teori bahasa dan otomata dalam ilmu komputer Tata bahasa Klasifikasi Tata Bahasa
2. Teknik Kompilasi Sasaran : Mahasiswa mengenal dan memahami struktur cara kerja kompilator Materi : Bahasa Pemrograman
PUSAT PENGEMBANGAN BAHAN AJAR UMB
Puji Catur Siswipraptini S.Kom Teori Bahasa Otomata
Translator Model Kompilator Penganalisa Leksikal Penganalisa Sintaksis 3. Finite State Automata Sasaran : Mahasiswa memahami Finite State Automata (FSA) dan dapat mengeksekusi suatu mesin otomata Materi :
Implemetasi FSA Deterministic Finite Automata (DFA) Non Deterministic Finite Automata (NFA) Ekivalensi Reduksi State Translasi NFA ke DFA NFA dengan -move
4. Ekspresi Reguler Sasaran : mahasiswa mamahami pengertian ekspresi Reguler dan menurunkan aturan produksi bahasa reguler dari suatu FSA Materi : implmentasi ekpresi reguler notasi ekspresi reguler hubungan ekspresi reguler dan FSA Aturan produksi bahasa reguler Rekonstruksi aturan produksi 5. FSA dengan Output Sasaran : Mahasiswa memahami model FSA dengan output Mesin Moore Mesin Meally Ekivalensi mesin Moore dan Mesin Meally
6. Pohon Penurunan Sasaran : mahasiswa memahamai pohon penurunan dari suatu tata bahasa.
PUSAT PENGEMBANGAN BAHAN AJAR UMB
Puji Catur Siswipraptini S.Kom Teori Bahasa Otomata
10
Materi : 7. CFG Materi : Mahasiswa memahamai dan dapat membangun suatu tata bahasa bebas konteks (CFG) Materi : Bentuk CFG Penyederhanaan CFG Produksi Useless Produksi unit Produksi Pohon penurunan Tata bahasa Parsing Ambiguitas
8. Bentuk Normal Sasaran : Mahasiswa mengenal dan memahamai bentuk normal Materi :
Pengertian bentuk normal Bentuk normal Chomsky Membangun bentuk normal Chomsky
9. Rekursif Kiri Sasaran : Mahasiswa memahamai pengertian rekursif kiri dan dapat mentranslasikan tata bahasa dengan rekursif kiri Materi : Aturan produksi rekursif Tahapan Reduksi Rekursif kiri 10. Mesin Turing Sasaran : mahasiswa mengenal dan memahamai konsep mesin turing Materi : Spesifikasi mesin turing Mekanisme kerja mesin turing Deskripsi seketika mesin turing
PUSAT PENGEMBANGAN BAHAN AJAR UMB
Puji Catur Siswipraptini S.Kom Teori Bahasa Otomata
11