PENYEDERHANAAN TATA BAHASA BEBAS KONTEKS. BAB IX PENYEDERHANAAN TATA BAHASA BEBAS KONTEKS.
Tujuan Penyederhanaan Penyederhanaan tata bahasa bebas konteks bertujuan untuk melakukan pembatasan sehingga tidak menghasilkan pohon penurunan yang memiliki kerumitan yang tak perlu atau aturan produksi yang tidak berarti.
Penghilangan produksi useless ( tidak berguna ). Suatu tata bahasa bebas konteks dapat disederhanakan dengan melakukan : Penghilangan produksi useless ( tidak berguna ). Penghilangan produksi unit. Penghilangan produksi ε .
1. Penghilangan produksi useless. Produksi useless didefinisikan sebagai : Produksi yang memuat simbol variabel yang tidak memiliki penurunan yang akan menghasilkan terminal-terminal (menuju terminal), produksi ini tidak berguna karena bila diturunkan tidak akan pernah selesai (masih ada simbol variabel yang tersisa). Produksi yang tidak akan pernah dicapai dengan penurunan apapun dari simbol awal, sehingga produksi itu redundant (berlebih)
Setiap kali melakukan penyederhanaan, periksa kembali aturan produksi yang tersisa, apakah semua produksi yang useless sudah dihilangkan.
2. Penghilangan Produksi Unit Produksi unit adalah produksi dimana ruas kiri dan kanan aturan produksi hanya berupa satu simbol variabel. Keberadaan produksi unit membuat tata bahasa memiliki kerumitan yang tak perlu atau menambah panjang penurunan. Penyederhanaan dilakukan dengan melakukan penggantian aturan produksi unit.
Penggantian aturan produksi unit dilakukan berturutan mulai dari aturan produksi yang paling dekat menuju ke penurunan terminal-terminal. dibaca ‘menjadi’ C → D C → dd ( C menghasilkan D menjadi C menghasilkan dd )
3. Penghilangan Produksi ε . Produksi ε adalah produksi dalam bentuk : → ε , atau bisa dianggap sebagai produksi kosong (empty). Penghilangan produksi ε dilakukan dengan melakukan penggantian produksi yang memuat variabel yang menuju produksi ε, atau biasa disebut nullable.
Ketiga penyederhanaan yang dilakukan bersama pada suatu tata bahasa bebas konteks, bertujuan menyiapkan tata bahasa bebas konteks tersebut untuk diubah ke dalam suatu bentuk normal Chomsky.
Penghilangan suatu tipe produksi bisa menghasilkan produksi tipe yang lain. Penghilangan produksi ε bisa menghasilkan produksi unit. Penghilangan produksi unit tidak menghasilkan produksi ε . Penghilangan produksi useless tidak menghasilkan produksi unit maupun produksi ε .
Urutan untuk menghapuskan semua produksi yang tidak diinginkan : Hilangkan produksi ε . Hilangkan produksi unit. Hilangkan produksi useless.