Otomata dan Pengantar Kompilasi Ekuivalensi NFA e move
- Slides: 17
Otomata dan Pengantar Kompilasi Ekuivalensi NFA e move - NFA Heru Cahya R. S. Si. , M. T Paryati, S. T. , M. Kom. Rifki Indra, S. Kom. , M. Eng. 1
Tujuan Instruksional Khusus (TIK) 2 menjelaskan konsep e-move menjelaskan algoritma konversi dari e-move ke tanpa emove
Pre History NFA sulit diimplementasikan ke komputer karena komputer sepenuhnya deterministik Apalagi utk NFA dengan e move yang mana tanpa input atau dengan string kosong mampu berpindah dari satu state ke state lain Merupakan kasus langka tapi kasus ini ada.
Pendahuluan NFA dengan move Def 1. e-move adalah suatu transisi antara 2 state tanpa adanya input terminal atau ( ) Def 2. e-closure adalah himpunan state yang dapat dicapai dengan e-move. Def 3. State yg tidak memiliki transisi -move, maka -closurenya adalah state itu sendiri. 4
NFA dengan -move Contoh ilustrasi : -closure(q 0) = [q 0, q 1, q 3] -closure(q 1) = [q 1, q 3] -closure(q 2) = [q 2, q 4] -closure(q 3) = [q 3] -closure(q 4) = [q 4] q 0 e - move q 1 q 2 e - move ɛ b q 3 5 a q 4
Algoritma Ekuivalensi 1. Buat tabel transisi NFA -move sesuai soal 2. Tentukan -closure untuk setiap state 3. Carilah setiap fungsi transisi hasil perubahan dari NFA dengan move ke NFA tanpa -move (kita sebut saja sebagai ’) dimana ’ didapatkan dengan rumus: ’(state, input) = _closure ( ( _closure(state, input)) 4. Berdasarkan hasil diatas, kita bisa membuat tabel transisi dan diagram transisi dari NFA tanpa -move yang ekivalen dengan NFA dengan move tersebut. 5. Jangan lupa menentukan state-state akhir untuk NDFA tanpa -move tersebut, yaitu state-state akhir semula ditambah dengan state-state yang _closure –nya mengandung state akhir. 6
Contoh kasus Diketahui NDFA e-move sbb : a q 0 q 1 b Carilah NDFA tanpa e-move-nya q 2 b 7
Jawaban kasus 1. Tabel transisi dari gambar soal : a b q 0 q 1 q 2 q 2 2. Tentukan closure tiap state -closure dari NFA tersebut untuk masing state : -closure(q 0) = [q 0, q 1] -closure(q 1) = [q 1] -closure(q 2) = [q 0, q 1, q 2] 8
3. Kita cari transisi baru utk semua pasangan (state, input) dengan bantuan point 1 dan 2. q ’(q 0, a) = _closure ( ( _closure(q 0, a)) = _closure ( ( q 0, q 1 , a)) = _closure ((q 0, a) ∪ (q 1, a)) = _closure (q 0 ∪ {}) = q 0. sehingga _closure (q 0) = q 0, q 1 q ’(q 0, b) = _closure ( ( _closure(q 0, b)) = _closure ( ( q 0, q 1 , b)) =(q 0, b) ∪ (q 1, b)= {} ∪ q 2 = q 2. sehingga _closure (q 2)= q 0, q 1, q 2 q ’(q 1, a) = _closure ( ( _closure(q 1, a)) = _closure ( ( q 1 , a)) = {}. sehingga _closure ({}) = {} 9
q ’(q 1, b) = _closure ( ( _closure(q 1), b)) = _closure ( ( q 1 , b)) = q 2 sehingga _closure (q 2) = q 0, q 1, q 2 q ’(q 2, a) = _closure ( ( _closure(q 2), a)) = _closure ( ( q 0, q 1, q 2 , a)) = (q 0, a) ∪ (q 1, a) ∪ (q 2, a) = q 0 ∪ {} = q 0. sehingga _closure (q 0) = q 0, q 1 q ’(q 2, b) = _closure ( ( _closure(q 2), b)) = _closure ( ( q 0, q 1, q 2 , b)) = (q 0, b) ∪ (q 1, b) ∪ (q 2, b) = {} ∪ q 2 = q 2. sehingga _closure (q 2) = {q 0, q 1, q 2
4. Membuat tabel transisi baru dari hasil no 3: δ a b q 0 {q 0, q 1} {q 0, q 1, q 2} q 1 {} {q 0, q 1, q 2} q 2 {q 0, q 1} {q 0, q 1, q 2} 5. Tentukan final state yaitu state F awal ditambah dengan state-state yang - closure –nya mengandung state akhir. F semula = q 0 - closure q 0 = {q 0, q 1} a dan {q 0, q 1}b (q 0, a) ∪ (q 1, a) dan (q 0, b) ∪ (q 1, b) q 0 ∪ {} = q 0 dan {} U q 2 = q 2 Sehingga F fix : q 0 dan q 2 = qo dan q 2 11
Sehingga NFA tanpa e move adalah sbb: b q 0 a a, b q 1 b b b q 2 b {} a, b
Bagaimana jika ditanyakan DFA? b q 0 a a, b q 1 b b b q 2 b {} a, b
Tugas : Konversikan ke DFA (utk NIM mhs berakhiran 1, 2, 3 0 q 0 14 1 q 1 2 q 2
TUGAS : untuk NIM mhs berakhiran 4, 5, 6 Konversikan ke DFA 0 ɛ q 0 1 q 1
Tugas : (utk NIM mhs berakhiran 7, 8, 9, 0) Konversikan ke DFA : a ɛ q 0 q 1 q 2 b q 3
Referensi 17 Utama Firrar Utdirartatmo, Teori Bahasa dan Otomata, JJ Learning, 2001 Firrar Utdirartatmo, Teknik Kompilasi, JJ Learning, 2001 Pendamping Aho, Ulman. The Teory of Parsing Translation And Compiling. Prentice-Hall. 1972 Grune , Modern Compiler Design, John Wiley and Sons , 2002 Peter Linz, An Introduction to Formal Language and Automata, DC Healt & Co, 1990
- Contoh ekuivalensi nfa ke dfa
- Contoh soal ekuivalensi dfa ke nfa
- Tentukan dfa hasil ekuivalensi dari nfa tersebut
- Translator teknik kompilasi
- Materi teknik kompilasi
- Ndfa
- Operasi dasar string
- Contoh soal dan jawaban aturan produksi fsa
- Aq0q
- Download buku teori bahasa dan otomata firrar utdirartatmo
- Teori graf dan otomata
- Konsep dan notasi bahasa teknik kompilasi
- Lateral thinking riddle
- Contoh tautologi matematika
- Sebelum komputer ada otomata bermula pada teori di bidang
- Otomata berhingga deterministik
- Tata bahasa formal
- Untai terminal