280 likes | 572 Views
Penyederhanaan Bahasa Bebas Context. Kelompok 4. Nama Kelompok. Ragil Satria Wicaksana Arita Windi Astuti M. Salahudin Endra Setiawan Vidya Noer Firdausy Dinda Sigmawaty. Tata Bahasa Bebas Konteks (Context Free Grammar) Tata bahasa bebas konteks , selanjutnya disingkat
E N D
PenyederhanaanBahasaBebas Context Kelompok 4
NamaKelompok • RagilSatriaWicaksana • AritaWindiAstuti • M. Salahudin • EndraSetiawan • VidyaNoerFirdausy • DindaSigmawaty
Tata BahasaBebasKonteks (Context Free Grammar) Tata bahasabebaskonteks, selanjutnyadisingkat CFG, tidakmempunyaibatasanpadahasil produksinya. Padaaturanproduksi yang dibatasihanyaruaskirisajaatau yang merupakansebuahsimbolvariabel. Contohaturanproduksi CFG, B CDeFg D BcDe
Tata bahasabebaskonteksdigunakansebagaicarauntukmenunjukkanbagaimanamenghasilkanuntai-untaidalamsebuahbahasa. Padasaatmenurunkanuntai, simbol-simbolvariabelakanmewakilibagian-bagian yang belumditurunkandariuntaitersebut. Bahasabebaskonteksmenjadidasardalam membentuksuatuparser / prosesanalisissintaksis.
Parsing Berikutsebuahpohon (tree) yang menguraikan kalimat “The quick brown fox jumped over the lazy dog”
“The quick brown fox jumped over the lazy dog” sentence subject predicate verb phrase noun phrase verb article adverbial phrase noun phrase noun phrase proposision noun phrase adjective noun phrase adjective noun phrase adjective noun adjective noun phrase noun lazy over fox quick brown jumped the dog the
PohonPenurunan Pohonpenurunanbergunauntukmemperolehuntaidengancaramenurunkanvariabel-variabelmenjadisimbol-simbol terminal. Contoh : Misalterdapattatabahasabebaskonteks (simbolawal S) denganaturanproduksi: S AB A aA | a B bB | b Gambarkanpohonpenurunanuntukmemperolehuntai ‘aabbb’
S AB A aA | a B bB | b S B A B A b a b a B b
Prosespenurunan ( parsing) Prosespenurunandapatdilakukandengancara: Penurunanterkiri (leftmost derivation) Penurunanterkiridilakukandenganmenurunkanvariabelterkiriterlebihdahulu. Penurunanterkanan (rightmost derivation) Penurunanterkanandilakukandenganmenurunkanvariabelterkananterlebihdahulu. Contoh 9.2 Dari aturanproduksi: S aAS | a A SbA| ba, gambarkanpohonpenurunanterkiridanterkanan untukmendapatkanuntai ‘aabbaa’
Penurunanterkiri Penurunanterkanan S S A A a a S S A A a a b b S S a a b b a a Atau: S aAS aAa aSbAa aSbbaa aabbaa Prosespenurunanjugadapat dilakukandengancara: S aAS aSbAS aabAS aabbaS aabbaa
Ambiguitas Jikadariaturanproduksitatabahasabebaskonteksterdapatlebihdarisatucaramembuatpohonpenurunanuntukmemperolehsuatuuntai, makadikatakanbahasabebaskontekstersebutambigu. Contoh 9.3 Buktikanbahwatatabahasabebaskonteksberikutambigu, S SbS | ScS | a Penyelesaian: Misalkitaakanmenurunkanuntai ‘abaca’
Penurunanterkiri Penurunanterkanan S S S S S S b c c S S a S S b a a a a a Atau: S ScS Sca SbSca Sbaca abaca Prosespenurunanjugadapat dilakukandengancara: S SbS abS abScS abacS abaca
Karenabentukpohonpenurunansebelahkiriberbeda denganpohonpenurunansebelahkanan, maka dikatakanbahwatatabahasabebaskonteks S SbS | ScS | a ambigu
Latihan Dari aturanproduksi: S aS | bS | a | b, gambarkanpohonpenurunanuntuk mendapatkanuntai ‘abbab’.
TUJUAN PENYEDERHANAAN • Melakukanpembatasansehinggatidakmenghasilkanpohonpenurunan yang memilikikerumitan yang takperluatauaturanproduksi yang tidakberarti. contoh : S AB | a A a Kelemahannya : aturanproduksi AB menjaditidakberartikarena B tidakmemilikipenurunan.
Untuk CFG berikut : S A A B B C C D D a | A • Memiliki kelemahan terlalu panjang jalannya padahal berujung pada S a, produksi D A juga menyebabkankerumitan.
Penyederhanaan CFG Suatutatabahasabebaskonteksdapatdisederhanakandenganmelakukancaraberikutini : • Penghilanganproduksi useless • Penghilanganproduksi unit • Penghilanganproduksiℰ
PenghilanganProduksi Useless Produksi useless adalah : • Produksi yang memuatsimbolvariabel yang tidakmemilikipenurunan yang akanmenghasilkan terminal-terminal seluruhnya. • Produksi yang tidakakanpernahdicapaidenganpenurunanapapundarisimbolawal.
Contoh : Terdapataturanproduksisebagaiberikut : S -> aBDB -> cD | AbD -> efA -> EdF -> dc
Analisa :1) Padaaturanproduksi A -> Ed, E tidakmemilikipenurunan. sehinggadapatdihilangkan2) Aturanproduksi F -> dc, redudan. sehinggaaturanproduksitersebutdapatdihilangkanSisaaturanproduksi yang telahdisederhanakanadalahsebagaiberikut :S -> aBDB -> cD | AbD -> ef
Analisakembali :aturanproduksi B -> Ab, A tidakmemilikipenurunan. sehinggadidapatpenyederhanaanlagimenjadiS -> aBDB-> cDD -> efKesimpulannyaadalahbahwaproduk useless yang dihilangkanadalah :A-> EdF -> dcB-> Ab
PenghilanganProduksi Unit • Produksi Unit adalah produksi dimana ruas kiri dan kanan aturan produksi hanya berupa satu simbol variabel. Contoh : A -> B, C -> D Contoh : S Sb S C C D C ef D dd
Kita lakukanpenggantianberurutanmulaidariaturanproduksi paling dekatmenuju terminal- terminal C D C dd S C S dd | ef sehinggaaturanproduksisetelahpenyederhanaan : S Sb S dd | ef C dd C ef D dd
PenghilanganProduksiℰ • Produksiℰ adalahproduksidalambentuk 𝜶 𝜺 ataubisadianggapsebagaiproduksikosong. • Penghilanganproduksi𝜺 dilakukandenganpenggantianproduksi yang memuatvariabel yang bisamenujuproduksi𝜺 ataubiasadisebutnullable.
Contoh : S bcAd A 𝜺 Padakasusdiatas A nullable, makavariabel A bisaditiadakan. Hasilpenyederhanaan S bcd
Contoh : S bcAd | bcd A bd | 𝜺 Hasilpenyederhanaan S bcAd | bcd A bd
Contoh : S A A B S aBD B CD| ab D ef A Ed C 𝜺 F dc Sederhanakan.