PENYEDERHANAAN TATA BAHASA BEBAS KONTEKS
TEORI BAHASA DAN OTOMATA
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.
Suatu tata bahasa bebas konteks dapat disederhanakan dengan melakukan cara berikut ini :
1.Penghilangan produksi useless 2.Penghilangan produksi unit
3.Penghilangan produksi ℰ
Alur penyederhanaan Tata Bahasa Bebas
Konteks
Contoh : S -> dA I Bd A -> bc
A -> ε B -> c
Kondisi :
A nullable tapi A -> ε bukan penurunan satu- satunya dari A
• Maka :
S-> dA I d I Bd A -> bc
B -> c
• S -> AaCD A -> CD | AB B -> b | ε
C -> d | ε D -> ε
Jawab :
Var yang nullable : B, C, D.
D -> ε, maka
S-> AaCD => S -> AaC A -> CD => A -> C
D -> ε dihapus.
B -> ε, maka
A -> AB => A -> AB|A B -> ε dihapus
C-> ε, maka
S-> AaC =>S->AaC|aA C-> ε dihapus
• Setelah Penyederhanaan : S -> Aac|Aa
A-> C|AB|A B -> b
C -> d
Latihan
S→ BACa B→ AC A→ dC| ε C→ D| ε D→ d
S→ AaA|C|bd A→ Bb| ε
B→ AB| d C→ de
S→ aB|aaB A→ ε
B→ bA B→ ε
1. 2. 3.