E N D
Bentuk normal Greibachmerupakanbentuk normal yang memilikibanyakkonsekuensiteoritisdanprkatis. Dalambentuk normal Greibachkitamembatasiposisimunculnyaterminal-terminal danvariabel-variabel. Suatutatabahasabebaskonteks (CFG) dikatakandalambentuk normal Greibach / Greibach Normal Form, selanjutnyakitasebutsebagai GNF, jikasetiapaturanproduksinyaadadalambentuk: A aα a:simbol terminal (tunggal), a ε T α: rangkaian simbol-simbol variabel (V*) Pengerian
Greibachbilahasilproduksinya (ruaskanan) diawalidengansatusimbolterminal, selanjutnyabisadiikutiolehrangkaiansimbolvariabel. Contohtatabahasabebaskonteksdalam bentuk bentuk normal Greibach: S a | aAB A aB B cS CONT’
Untuk dapat diubah ke dalam bentuk normaol Greibach, tata bahasa semula harus memenuhisyarat: Sudahdalambentuk normal Chomsky Tidakbersifatrekursifkiri Tidakmenghasilkanε Terdapatduacarapembentukanbentuk normal Greibach , yaitumelaluisubstitusidanperkalianmatriks. Cont’
Secaraumumlangkah-langkahuntukmendapatkanbentuk normal Greibach : 1. Tentukan urutan simbol-simbol variabel yang ada dalam tata bahasa. Misalkan terdapatm variabeldenganurutan A1, A2, ...., Am 2. Berdasarkanurutansimbol yang ditetapkanpadalangkah (1) seluruhaturanproduksiyang ruaskanannyadiawalidengansimbolvariabeldapatdituliskandalambentuk Ah Ai γ dimanah <> i (rekrusifkirisudahdihilangkan), γ bisaberupasimbol-simbolvariabel. PembentukanBentuk Normal GreibachdenganSubstitusi
a. Jikah < i, aturanproduksuinisudahbenar ( tidakperludiubah) b. Jikah > i, aturanproduksibelumbenar. Lakukansubstitusiberulang-ulangterhadap Ai (ganti Ai pada produksi ini dengan ruas kanan produksi dari variabel Ai ) sehinggasuatusaatdiperolehproduksidalambentuk Ah Ap γ (dimana h ≤ p ) i) Jika h = p , lakukan penghilangan rekursif kiri ii) Jikah < p, aturanproduksisudahbenar Cont’
3. Jikaterjadipenghilanganrekursifkiripadatahap (2b), sejumlahsimbolvariabelbaruyang munculdarioperasiinidapatdisisipkanpadaurutanvariabelsemuladimanasajaasalkanditempatkantidaksebelum Ah (dikiri) 4. Setelah langkah (2) & (3) dikerjakan maka aturan-aturan produksi yang ruas kanannyadimulaisimbolvariabelsudahberadadalamurutan yang benar Ax Ay γ ( dimana x < y ) Produksi-produksiyang lain adadalambentuk: Ax a γ ( a = simbol terminal ) Bx γ ( B2 = simbolvariabelbaru yang akanmunculsebagaiakibatdarioperasipenghilanganrekursifkiri) Cont’
5. Bentuk normal Greibachdiperolehdengancaramelakukansubstitusimundurmulai dari variabel Am, lalu Am-1, Am-2, ..... Dengan cara ini aturan produksi dalam bentukAx Ay γ dapatdiubahsehingaruaskanannyadimulaidengansimbol terminal. 6. ProduksidalambentukBx γ jugadapatdiubahdengancarasubstitusisepertipadalangkah (5) Cont’
Contoh (tatabahasabebaskontekssudahdalambentuk normal Chomsky danmemenuhisyaratuntukdiubahkebentuk normal Greibach), simbolawaladalah S: S CA A a | d B b C DD D AB Kita tentukanurutansimbolvariabel, misalnya S, A, B, C, D (S<A<B<C<D). *Perhatikan urutan tersebut boleh anda tentukan sendiri, buatlah urutan sedemikian sehinggamemudahkanuntukprosesselanjutnya.
Kita periksaaturanproduksi yang simbolpertamapadaruaskananadalahsimbolvariabel, apakahsudahmemenuhiketentuanurutanvariabel: S CA ( sudahmemenuhiaturankarena S<C) C DD (sudahmemenuhikarena C<D) D AB (tidakmemenuhi, karena D>A) Yang belummemenuhiurutan yang telahkitatentukanadalah: D AB, karenaruas kiri > simbol pertama pada ruas kanan. Maka kita lakukan sibstitusi pada simbol variabel A, aturan produksi menjadi: D aB | dB
Setelahsemuaaturanproduksisudahmemenuhiketentuanurutanvariabel, kitalakukansubstitusimundurpadaaturanproduksi yang belumdalambentuknormal Greibach(‘=>’ dibaca ‘menjadi’): C DD => C aBD | dBD S CA => S aBDA | dBDA *Perhatikansubstitusimundurdimulaidariaturanproduksi yang memilikiruaskiridenganurutanvariabel paling akhir ( kasusdiatas:S<A<B<C<D, maka C lebihduludisubstitusikandaripada S )
Hasilakhiraturanproduksi yang sudahdalambentuk normal Greibach : S aBDA | dBDA A a | d B b C aBD | dBD D aB | dB *Perhatikan: setiapsubstitusikitalakukanpadasimbolvariabelpertamapadaruaskanan ( padaaturanproduksi yang belumbentuk normal Greibachtentunya ).
Prinsipnya: Biarkan aturan produksi yang sudah dalam bentuk normal Greibach Tentukanpengurutansimbolvariabel, berdasarkankondisiaturanproduksiyang adabuatlahurutansedemikiansehinggamemudahkanuntukprosesselanjutnya. Mulailahterlebihdahuludariseimbolawal. Lakukanperubahanpadaaturanproduksi yang belummemenuhiketentuanurutantersebutdanbilaperluselamaprosesitubisadilakukansubstitusidanpenghilanganrekursifkiri Prinsip
Lakukansubstitusimundursedemikianrupasehinggasemuaaturanproduksiakandiawalidengantepatsebuahsimbol terminal. Prosessubstitusimundurdimulaidariaturanproduksidenganurutan paling akhir. Lakukansubstitusimundurjugapadaaturanproduksibaru yang munculsebagaihasilpenghilanganrekursifkiri. Cont’