Penyederhanaan Bahasa Bebas Context

Slides:



Advertisements
Presentasi serupa
Teori Bahasa dan Automata
Advertisements

Teori Bahasa dan Automata
BENTUK NORMAL CHOMKY.
BENTUK NORMAL CHOMSKY Teori Bahasa dan Otomata
11. BENTUK NORMAL CHOMSKY.
Teori Bahasa dan Automata
Teori Bahasa dan Automata
Normal Chomsky Pertemuan 8
TEORI BAHASA & OTOMATA (KONSEP & NOTASI BAHASA)
Produksi yang rekursif kanan menyebabkan pohon penurunan tumbuh ke
PENGHILANGAN REKURSIF KIRI
12. PENGHILANGAN REKURSIF KIRI
Penghilangan Rekursif Kiri
Bentuk Normal Greibach (Greibach Normal Form)
Teori Bahasa dan Otomata 2 sks
Teori Bahasa & OTOMATA.
TATA BAHASA BEBAS KONTEKS (CONTEXT FREE GRAMMAR)
Teori Bahasa dan Otomata 2 sks
TEORI BAHASA DAN OTOMATA
Syntax Analyzer (Parser) - Dasar
Pohon penurunan dan Penyederhanaan Tata Bahasa Bebas Konteks
PENYEDERHANAAN TATA BAHASA BEBAS KONTEKS
10. PENYEDERHANAAN TATA BAHASA
7. ATURAN PRODUKSI.
Analisis Leksikal.
Pertemuan 12 CONTEXT FREE GRAMMAR (CFG) Lanjutan..
BAB X BENTUK NORMAL CHOMSKY.
CONTEXT FREE LANGUAGE Yang akan kita pelajari: Pohon Turunan
9. POHON PENURUNAN.
12. PENGHILANGAN REKURSIF KIRI Aturan Produksi Rekursif Aturan produksi yang rekursif adalah aturan produksi yang hasil produksinya (ruas kanan)
CONTEXT- FREE LANGUAGE Yenni Astuti Version
Teori Bahasa & OTOMATA.
TEORI BAHASA & AUTOMATA
Komponen sebuah Kompilator
1 Pertemuan 11 CONTEXT FREE GRAMMAR (CFG) Lanjutan.. Matakuliah: T0162/Teori Bahasa dan Automata Tahun: 2005 Versi: 1/0.
BENTUK NORMAL CHOMSKY Teori Bahasa dan Otomata CHAPTER 6
KONSEP GRAMMAR & HIRARKI CHOMSKY
Teori-Bahasa-dan-Otomata
Teori-Bahasa-dan-Otomata
Bentuk Normal Chomsky (CNF)
TEORI BAHASA DAN OTOMATA
PENYEDERHANAAN TATA BAHASA BEBAS KONTEKS
TATA BAHASA BEBAS KONTEKS (CONTEXT FREE GRAMMAR)
Bahasa Type 2 (CONTEXT FREE GRAMMAR)
By : Lisda Juliana Pangaribuan
Pengantar Teknik Kompilasi
Bentuk Normal Chomsky *YANI*.
Teori-Bahasa-dan-Otomata
GRAMMER ATAU TATA BAHASA
PENYEDERHANAAN TATA BAHASA BEBAS KONTEKS.
PENGHILANGAN REKURSIF KIRI
Bahasa Context Free.
Teori-Bahasa-dan-Otomata
TATA BAHASA BEBAS KONTEKS
2. Review Teori Bahasa Formal dan Otomata
ALGORITMA & PEMROGRAMAN 1C
BAB VIII POHON PENURUNAN.
Penyederhanaan Tata Bahasa Bebas Konteks
Istiqomah, S.Kom [Teknik Kompilasi UNIKOM 2013]
Penyederhanaan Tata Bahasa Bebas Konteks
Pertemuan 10 CONTEXT FREE GRAMMAR (CFG) Lanjutan..
TEORI BAHASA & AUTOMATA
Pengenalan Pola secara sintaktis (PPSint)
Pengenalan Kompilasi & Klasifikasi Tatabahasa Formal menurut Chomsky
Analisis Sintaksis By: Kustanto, S.T., M.Eng.
Brute force 2/16/2019 Materi ke 5.
Penghilangan Rekursif Kiri
Chomsky Normal Form (CNF) / Bentuk Normal Chomsky (BNC)
Chomsky Normal Form (CNF) / Bentuk Normal Chomsky (BNC)
OTOMATA DAN TEORI BAHASA.
Transcript presentasi:

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 CFG, tidak mempunyai batasan pada hasil produksinya. Pada aturan produksi    yang dibatasi hanya ruas kiri saja atau  yang merupakan sebuah simbol variabel. Contoh aturan produksi CFG, B  CDeFg D  BcDe

Tata bahasa bebas konteks digunakan sebagai cara untuk menunjukkan bagaimana menghasilkan untai-untai dalam sebuah bahasa. Pada saat menurunkan untai, simbol-simbol variabel akan mewakili bagian-bagian yang belum diturunkan dari untai tersebut. Bahasa bebas konteks menjadi dasar dalam membentuk suatu parser / proses analisis sintaksis.

“The quick brown fox jumped over the lazy dog” Parsing Berikut sebuah pohon (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 noun phrase verb phrase article noun phrase verb adverbial phrase the adjective noun phrase jumped proposision noun phrase over adjective noun phrase quick adjective noun phrase brown noun the adjective noun phrase fox lazy noun dog

Pohon Penurunan Pohon penurunan berguna untuk memperoleh untai dengan cara menurunkan variabel-variabel menjadi simbol-simbol terminal. Contoh : Misal terdapat tata bahasa bebas konteks (simbol awal S) dengan aturan produksi: S  AB A  aA | a B  bB | b Gambarkan pohon penurunan untuk memperoleh untai ‘aabbb’

S  AB A  aA | a B  bB | b S A B a A b B a b B b

Proses penurunan ( parsing) Proses penurunan dapat dilakukan dengan cara: Penurunan terkiri (leftmost derivation) Penurunan terkiri dilakukan dengan menurunkan variabel terkiri terlebih dahulu. Penurunan terkanan (rightmost derivation) Penurunan terkanan dilakukan dengan menurunkan variabel terkanan terlebih dahulu. Contoh 9.2 Dari aturan produksi: S  aAS | a A  SbA| ba, gambarkan pohon penurunan terkiri dan terkanan untuk mendapatkan untai ‘aabbaa’

Penurunan terkiri Penurunan terkanan S S a A S a A S S b A S a b A a b Proses penurunan juga dapat dilakukan dengan cara: S  aAS  aSbAS  aabAS  aabbaS  aabbaa Atau: S  aAS  aAa  aSbAa  aSbbaa  aabbaa

Ambiguitas Jika dari aturan produksi tata bahasa bebas konteks terdapat lebih dari satu cara membuat pohon penurunan untuk memperoleh suatu untai, maka dikatakan bahasa bebas konteks tersebut ambigu. Contoh 9.3 Buktikan bahwa tata bahasa bebas konteks berikut ambigu, S  SbS | ScS | a Penyelesaian: Misal kita akan menurunkan untai ‘abaca’

Penurunan terkiri Penurunan terkanan S S S b S S c S a S c S S b S a a Proses penurunan juga dapat dilakukan dengan cara: S  SbS  abS  abScS  abacS  abaca Atau: S  ScS  Sca  SbSca  Sbaca  abaca

Karena bentuk pohon penurunan sebelah kiri berbeda dengan pohon penurunan sebelah kanan, maka dikatakan bahwa tata bahasa bebas konteks S  SbS | ScS | a ambigu

Latihan Dari aturan produksi: S  aS | bS | a | b, gambarkan pohon penurunan untuk mendapatkan untai ‘abbab’.

TUJUAN PENYEDERHANAAN Melakukan pembatasan sehingga tidak menghasilkan pohon penurunan yang memiliki kerumitan yang tak perlu atau aturan produksi yang tidak berarti. contoh : S  AB | a A  a Kelemahannya : aturan produksi AB menjadi tidak berarti karena B tidak memiliki penurunan.

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 menyebabkan kerumitan.

Penyederhanaan CFG Suatu tata bahasa bebas konteks dapat disederhanakan dengan melakukan cara berikut ini : Penghilangan produksi useless Penghilangan produksi unit Penghilangan produksi ℰ

Penghilangan Produksi Useless Produksi useless adalah : Produksi yang memuat simbol variabel yang tidak memiliki penurunan yang akan menghasilkan terminal-terminal seluruhnya. Produksi yang tidak akan pernah dicapai dengan penurunan apapun dari simbol awal.

Contoh : Terdapat aturan produksi sebagai berikut : S -> aBD B -> cD | Ab D -> ef A -> Ed F -> dc

 Analisa : 1) Pada aturan produksi A -> Ed, E tidak memiliki penurunan. sehingga dapat dihilangkan 2) Aturan produksi F -> dc, redudan. sehingga aturan produksi tersebut dapat dihilangkan Sisa aturan produksi yang telah disederhanakan adalah sebagai berikut : S -> aBD B -> cD | Ab D -> ef

Analisa kembali : aturan produksi B -> Ab, A tidak memiliki penurunan. sehingga didapat penyederhanaan lagi menjadi  S -> aBD B-> cD D -> ef Kesimpulannya adalah bahwa produk useless yang dihilangkan adalah : A-> Ed F -> dc B-> Ab

Penghilangan Produksi 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 lakukan penggantian berurutan mulai dari aturan produksi paling dekat menuju terminal- terminal C  D  C  dd S  C  S  dd | ef sehingga aturan produksi setelah penyederhanaan : S  Sb S  dd | ef C  dd C  ef D  dd

Penghilangan Produksi ℰ Produksi ℰ adalah produksi dalam bentuk 𝜶  𝜺 atau bisa dianggap sebagai produksi kosong. Penghilangan produksi 𝜺 dilakukan dengan penggantian produksi yang memuat variabel yang bisa menuju produksi 𝜺 atau biasa disebut nullable.

Contoh : S  bcAd A  𝜺 Pada kasus diatas A nullable, maka variabel A bisa ditiadakan. Hasil penyederhanaan S  bcd

Contoh : S  bcAd | bcd A  bd | 𝜺 Hasil penyederhanaan A  bd

Alur penyederhanaan Tata Bahasa Bebas Konteks CFG Penghilangan Produksi ℰ Penghilangan Produksi Unit Penghilangan produksi useless CFG yang sudah disederhanakan

Contoh : S  A A  B S  aBD B  CD| ab D  ef A  Ed C  𝜺 F  dc Sederhanakan.