Algoritma CYK CockeYoungerKasami Otomata dan Peng Kompilasi Algoritma
- Slides: 13
Algoritma CYK (Cocke-Younger-Kasami) Otomata dan Peng. Kompilasi
Algoritma CYK untuk Tata Bahasa Bebas Konteks • Algoritma parsing dan keanggotaan ( membership) untuk tata bahasa bebas konteks. • Diciptakan oleh J. Cocke, DH. Younger, dan T. Kasami. • Syarat : tata bahasa harus berada dalam bentuk normal Chomsky. • Obyektif : untuk menunjukkan apakah suatu string dapat diperoleh dari suatu tata bahasa. Teknik Informatika UPNVY 2
Bentuk CNF (Chomsky Normal Form) Aturan produksi dalam bentuk normal Chomsky ruas kanannya tepat berupa sebuah terminal atau dua variable (non terminal). Misalkan: A BC A b B a C BA | d
Kasus 1 : Diberikan aturan produksi P sbb : S AB | BC A BA | a B CC | b C AB | a Ditanyakan “baaba” dpt dihasilkan dari P tidak? S BC b. AB ba. CC ba. ABC baaba (terbukti bisa dihasilkan dari P dgn cara derivasi)
Alternatif algoritma CYK • Langkah-langkah CYK : 1. Siapkan tabel segitiga atas sesuai persoalannya (baaba punya 5 digit/satuan) 1 2 3 4 5 b a a b a 1 2 3 4 5
Alternatif algoritma CYK 2. Utk baris 1, Lihat ruas kiri pada aturan P dari persoalan “baaba” 1 2 3 4 5 b a a b a 1 2 3 4 5 B A, C
Alternatif algoritma CYK 3. Utk baris 2 dan seterusnya, gunakan tabel bantuan berikut ini. Gabung R. Kiri
4. Lakukan langkah turun dan naik kanan untuk menelusuri string/kalimat 2 b 1 1 B 2 A, S 3 4 5 Ø a 2 a 3 b 4 A, C B B S, C A, S B B a 5 A, C R. Kiri B A, C BA, BC A, S A, C AA, AC, CA, CC B A, C B AB, CB S, C B 3 Gabung A, C BA, BC B B A, S A, C BB AA, AC, SA, SC A, C S, C B B A, C A, S S, C AS, AC, CS, CC BB AA, AS, CA, CC SA, SC, CA, CC A, S Ø B B
5. Lanjutan sebelumnya b a 1 2 3 4 5 1 B A, C 2 A, S B S, C A, S 3 Ø B B 4 Ø S, C, A 5 A, S, C Gabung 4 5 B B A, S S, C Ø B A, C B B A, S B A, C BB AS, AC, SS, SC B AB, CB BA, BS BA, BC B S, C, A A, S B Ø A, S Ø A, C BS, BC, BA AB, SB A, S A, C R. Kiri Ø S, C, A A, S, C
Memastikan diterima atau tidak… Cara memastikan sebuah string/kalimat itu dihasilkan dari sebuah aturan produksi P adalah dengan melihat baris terakhir kolom pertama. Jika pada field tsb ada S (initial state) maka string/kalimat tsb diterima atau dihasilkan dari aturan produksi P. b a a b a 1 2 3 4 5 1 B A, C 2 A, S B S, C A, S 3 Ø B B 4 Ø S, A, C 5 A, S, C Ada S Teknik Informatika UPNVY 10
Algoritma CYK begin for i: = 1 to n do Vi 1 : = {A| A a aturan produksi dimana simbol ke- i adalah a }; for j: = 2 to n do for i: = 1 to (n-j+1) do begin Vij: =Ø; for k: =1 to (j – 1) do Vij: = Vij υ ( A | A BC adalah suatu produksi, dimana B di Vik dan C di Vi+k, j-k } end Teknik Informatika UPNVY 11
Renungkan, cermati, kerjakan dikumpulkan GRUP NIM GANJIL GRUP NIM GENAP S AB | b A BA | a B AS | b S AB | BC A BA | a B CC | b C AB | a Ditanyakan “aaab” Ditanyakan “aabab” Jika memang diterima/dihasilkan dari aturan produksi tsb, buktikan juga secara derivasi Teknik Informatika UPNVY 12
Referensi 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 S AB -> a. AS -> aa. AB -> aaab S AB -> a. CC -> a. ABC -> aab. AB -> aabab Teknik Informatika UPNVY 13
- Algoritma cyk
- Operasi dasar string
- Contoh soal dan jawaban teori bahasa dan automata
- Sejarah automata
- Download buku teori bahasa dan otomata firrar utdirartatmo
- Mesin turing ppt
- Notasi bnf
- Dr cyk
- Sebelum komputer ada otomata bermula pada teori di bidang
- Cyk algorithm
- Cyk algorithm java
- Cyk algorithm
- Pumping lemma for cfls
- Cyk algorithm