Вы находитесь на странице: 1из 5

TEORI BAHASA DAN OTOMATA Pertemuan 10 Dosen : Tri Ari Cahyono, S.Kom, M.

Kom -----------------------------------------------------------------------------ATURAN PRODUKSI REKURSIF KANAN Aturan Produksi yang rekursif memiliki ruas kanan (hasil produksi) yang memuat simbol varibel pada ruas kiri. Sebuah aturan produksi dalam bentuk : A A Merupakan aturan produksi yang rekursif kanan. Contoh aturan produksi yang rekursif kanan : S dS B adB ATURAN PRODUKSI REKURSIF KIRI Produksi dalam bentuk A A Merupakan aturan produksi yang rekursif kiri, contoh : S Sd B Bad Produksi yang rekursif kanan menyebabkan pohon penurunan tumbuh ke kanan, sebaliknya produksi yang rekursif kiri menyebabkan pohon penurunan tumbuh ke kiri. Bisa dilihat dari aturan produksi berikut : S aAc A Ab | Dalam banyak penerapan tata bahasa, rekursif kiri tak diinginkan. Untuk menghindari penurunan yang bisa mengakibatkan loop kita perlu menghilangkan sifat rekursif kiri dari aturan produksi.

PENGHILANGAN REKURSIF KIRI Tahapan penghilangan rekusif kiri : Aturan produksi yang tidak rekursif kiri

CFG mengandung aturan produksi yang rekursif kiri

Aturan produksi yang rekursif kiri

Lakukan penggantian, munculkan aturan produksi baru dan simbol variable baru

CFG bebas konteks dari aturan produksi yang rekursif kiri

Contoh : Lakukan penghilangan rekursif kiri S Sab|aSc|dd|ff|Sbd Penyelesaian : 1. Aturan rekursif kiri S Sab| Sbd S : 1=ab, 2=bd 2. Aturan tidak rekursif kiri S aSc|dd|ff S : 1=aSc, 2=dd, 3=ff 3. Penggantian rekursif kiri S Sab| Sbd digantikan oleh : S aScZ1|ddZ1|ffZ1 Z1 ab | bd Z1 abZ1 | bdZ1 4. Hasil akhir S aSc|dd|ff S aScZ1|ddZ1|ffZ1 Z1 ab | bd Z1 abZ1 | bdZ1

Contoh : Lakukan penghilangan rekursif kiri S Sab|Sb|cA A Aa|a|bd Penyelesaian : 1. Aturan rekursif kiri S Sab| Sb A Aa S : 1=ab, 2=b A : 1=a 2. Aturan tidak rekursif kiri S cA A a|bd S: 1=cA A: 1=a, 2=bd 3. Penggantian rekursif kiri S Sab| Sb digantikan oleh : S cAZ1 Z1 ab | b Z1 abZ1 | bZ1 Penggantian rekursif kiri A Aa digantikan oleh : A aZ2|bdZ2 Z2 a Z2 aZ2 4. Hasil akhir S cA A a|bd S cAZ1 Z1 ab | b Z1 abZ1 | bZ1 A aZ2|bdZ2 Z2 a Z2 aZ2 Catatan : Penghilangan rekursif kiri memunculkan simbol variabel baru dan aturan produksi baru yang rekursif kanan.

Soal : Lakukan penghilangan rekursif kiri A Aa|aBc

Soal : Lakukan penghilangan rekursif kiri S SBa|Ab A Sa|AAb|a B Sb|BBa|b