Dosen: Yessy Fitriani, ST.,M.Kom
Konsep Dasar
1. Dalam pembicaraan grammar, anggota alfabet dinamakan simbol
terminal atau token.
2. Kalimat
adalah deretan hingga simbol-simbol terminal.
3. Bahasa
adalah himpunan kalimat-kalimat. Anggota bahasa bisa tak hingga kalimat.
4. Simbol-simbol berikut adalah simbol terminal :
- huruf kecil awal alfabet, misalnya : a, b, c
- simbol operator, misalnya : +, -, dan ´
- simbol tanda baca, misalnya : (, ), dan ;
- string yang tercetak tebal, misalnya : if, then, dan else.
5. Simbol-simbol berikut adalah simbol non terminal :
- huruf besar awal alfabet, misalnya : A, B, C
- huruf S sebagai simbol awal
- string yang tercetak miring, misalnya : expr dan stmt.
- Huruf besar akhir alfabet melambangkan simbol terminal atau non terminal, misalnya : X, Y, Z.
- Huruf kecil akhir alfabet melambangkan string yang tersusun atas simbol-simbol terminal, misalnya : x, y, z.
- Huruf yunani melambangkan string yang tersusun atas simbol-simbol terminal atau simbol-simbol non terminal atau campuran keduanya, misalnya : a, b, dan g.
- Sebuah produksi dilambangkan sebagai a ® b, artinya : dalam sebuah derivasi dapat dilakukan penggantian simbol a dengan simbol b.
- Simbol a dalam produksi berbentuk a ® b disebut ruas kiri produksi sedangkan simbol b disebut ruas kanan produksi.
- Derivasi adalah proses pembentukan sebuah kalimat atau sentensial. Sebuah derivasi dilambangkan sebagai : a Þ b.
- Sentensial adalah string yang tersusun atas simbol-simbol terminal atau simbol-simbol non terminal atau campuran keduanya.
- Kalimat adalah string yang tersusun atas simbol-simbol terminal. Jelaslah bahwa kalimat adalah kasus khusus dari sentensial.
- Pengertian terminal berasal dari kata terminate (berakhir), maksudnya derivasi berakhir jika sentensial yang dihasilkan adalah sebuah kalimat (yang tersusun atas simbol-simbol terminal itu).
- Pengertian non terminal berasal dari kata not terminate (belum/tidak berakhir), maksudnya derivasi belum/tidak berakhir jika sentensial yang dihasilkan mengandung simbol non terminal.
Aturan Produksi
- Aturan produksi dnyatakan dalam bentuk α → β, α menghasilkan atau menurunkan β
- α symbol-symbol untuk ruas kiri, β symbol-symbol untuk ruas kanan
- Symbol-symbol dapat berupa terminal dan non terminal dimana non terminal dapat diturunkan menjadi symbol yang lainnya
- Umumnya symbol terminal disymbolkan dengan huruf kecil (a,b,c, dsb), sedangkan untuk symbol non terminal disymbolkan dengan huruf besar (A,B,C, dsb)
- Contoh aturan produksi :
T → a, T menghasilkan a
E → T │ T + E, E menghasilkan T atau E menghasilkan T + E
Grammar dan Klasifikasi Chomsky
Grammar G didefinisikan sebagai pasangan 4 tuple : V, V, S,
dan Q, dan dituliskan sebagai G(V, V, S, Q), dimana :
V :
himpunan simbol-simbol terminal (atau himpunan
token -token, atau alfabet)
V : himpunan
simbol-simbol non terminal
S Î V : simbol awal (atau simbol start)
Q
: himpunan produksi
Berdasarkan komposisi bentuk ruas kiri dan ruas kanan
produksinya (a ® b), Noam Chomsky mengklasifikasikan 4 tipe grammar :
1. Grammar tipe ke-0
: Unrestricted Grammar (UG)
·
Tidak ada
batasan pada aturan produksi
·
Simbol ruas
sebelah kiri harus minimal ada sebuah variabel
Contoh:
Abc → De
T
→ aaBBcC
TT
→ b
2. Grammar tipe ke-1
: Context Sensitive Grammar (CSG)
·
Panjang
string ruas kiri harus < (lebih kecil) atau = (sama dengan) ruas kanan
Contoh:
Ab → DeF
CD → eF
Ab → aaab
T → BC
3. Grammar tipe ke-2
: Context Free Grammar (CFG)
·
Ruas kiri
haruslah tepat satu symbol variabel, yaitu simbol non terminal
Contoh :
B → CDeFg
D → BcDe
T → ABC
T → a
4. Grammar tipe ke-3
: Regular Grammar (RG)
Ruas kanan hanya memiliki maksimal satu symbol non terminal
Contoh
A → e
A → efg
A → efgH
C → D
sumber :
https://m24klik.wordpress.com