Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

GRAMMER ATAU TATA BAHASA

Presentasi serupa


Presentasi berjudul: "GRAMMER ATAU TATA BAHASA"— Transcript presentasi:

1 GRAMMER ATAU TATA BAHASA

2 Grammer adalah sebagai kumpulan dari himpunan-himpunan variabel, simbol-simbol terminal, simbol awal, yang dibatasi oleh aturan-aturan produksi. Aturan produksi merupakan pusat dari grammer yang menspesifikasikan bagaimana suatu grammer melakukan transformasi suatu string atau karakter ke bentuk lainnya.

3 Semua aturan produksi dinyatakan dalam bentuk “ α  β “ (bisa dibaca α menghasilkan β, atau dibaca α menurunkan β) α merupakan simbol-simbol pada ruas kiri aturan produksi, sedangkan β merupakan simbol-simbol ruas kanan aturan produksi

4 Simbol-simbol tersebut dapat berupa simbol terminal (Vt) atau simbol NON-Terminal (Vn)/Variabel.
Simbol Vn adalah simbol yang masih dapat diturunkan, biasanya identik dengan huruf besar (‘A’,’B’,’C’) Simbol Vt adalah simbol yang sudah tidak dapat diturunkan lagi, biasanya identik dengan huruf kecil (‘a’,’b’,’c’)

5 Dengan menerapkan aturan produksi, suatu grammer bisa menghasilkan sejumlah string.
Contoh aturan produksi : E  T | T+E | T * E T  a

6 Dari aturan produksi di atas, menghasilkan suatu variabel a atau variabel ekspresi a+a atau a*a
E  T T  a E  T+E E  a+T E  a+a E  T*E E  a*T E  a*a

7 Grammar dan Klasifikasi Chomsky
Grammar G didefinisikan sebagai pasangan 4 tuple : VT , VN , S, dan Q, dan dituliskan sebagai G(VT , VN , S, Q), dimana : VT : himpunan simbol-simbol terminal (atau himpunan token-token, atau alfabet) VN : himpunan simbol-simbol non terminal S Є VN : simbol awal (atau simbol start) Q : himpunan produksi

8 Berdasarkan komposisi bentuk ruas kiri dan ruas kanan produksinya (α → β), Noam
Chomsky mengklasifikasikan 4 tipe grammar : Grammar tipe ke-0 : Unrestricted Grammar (UG) Ciri : α, β Є (VT | VN )*, |α|> 0 atau |α|> |β| Grammar tipe ke-1 : Context Sensitive Grammar (CSG) Ciri : α, β Є (VT | VN )*, 0 < |α| ≤ |β|

9 Grammar tipe ke-2 : Context Free Grammar (CFG)
Ciri : α Є VN , β Є (VT | VN )* Grammar tipe ke-3 : Regular Grammar (RG) Ciri : α Є VN , β Є {VT , VT VN } atau α Є VN , β Є {VT , VN VT }

10 Contoh Analisa Penentuan Type Grammar
Grammar G1 dengan Q1 = {S → aB, B → bB, B → b}. Ruas kiri semua produksinya terdiri dari sebuah VN maka G1 kemungkinan tipe CFG atau RG. Selanjutnya karena semua ruas kanannya terdiri dari sebuah VT atau string VT VN maka G1 adalah RG

11 Grammar G2 dengan Q2 = {S → Ba, B → Bb, B → b}. Ruas kiri semua
produksinya terdiri dari sebuah VN maka G2 kemungkinan tipe CFG atau RG. Selanjutnya karena semua ruas kanannya terdiri dari sebuah VT atau string VN VT maka G2 adalah RG

12 Grammar G3 dengan Q3 = {S → Ba, B → bB, B → b}. Ruas kiri semua
produksinya terdiri dari sebuah VN maka G3 kemungkinan tipe CFG atau RG. Selanjutnya karena ruas kanannya mengandung string VT VN (yaitu bB) dan juga string VN VT (Ba) maka G3 bukan RG, dengan kata lain G3 adalah CFG

13 Grammar G4 dengan Q4 = {S → aAb, B → aB}. Ruas kiri semua produksinya
terdiri dari sebuah VN maka G4 kemungkinan tipe CFG atau RG. Selanjutnya karena ruas kanannya mengandung string yang panjangnya lebih dari 2 (yaitu aAb) maka G4 bukan RG, dengan kata lain G4 adalah CFG

14 Grammar G5 dengan Q5 = {S → aA, S → aB, aAb → aBCb}. Ruas kirinya
mengandung string yang panjangnya lebih dari 1 (yaitu aAb) maka G5 kemungkinan tipe CSG atau UG. Selanjutnya karena semua ruas kirinya lebih pendek atau sama dengan ruas kananya maka G5 adalah CSG

15 Grammar G6 dengan Q6 = {aS → ab, SAc → bc}. Ruas kirinya mengandung
string yang panjangnya lebih dari 1 maka G6 kemungkinan tipe CSG atau UG. Selanjutnya karena terdapat ruas kirinya yang lebih panjang daripada ruas kananya (yaitu SAc) maka G6 adalah UG

16 Menentukan Grammar Sebuah Bahasa
Tentukan sebuah grammer regular untuk bahasa L1 = { an | n ≥ 1} Jawab : Q1 (L1 ) = {S → aS | a} S  a atau S  aS  aa atau S  aS  aaS  aaa

17 Tentukan sebuah grammer bebas konteks untuk bahasa :
L2 : himpunan bilangan bulat non negatif ganjil Jawab : Langkah kunci : digit terakhir bilangan harus ganjil. Buat dua buah himpunan bilangan terpisah : genap (G) dan ganjil (J) Q2 (L2 ) = {S → J|GS|JS, G → 0|2|4|6|8, J → 1|3|5|7|9}

18 Tentukan sebuah gramar bebas konteks untuk bahasa :
L3 = himpunan semua identifier yang sah menurut bahasa pemrograman Pascal dengan batasan : terdiri dari simbol huruf kecil dan angka, panjang identifier boleh lebih dari 8 karakter

19 Jawab : Langkah kunci : karakter pertama identifier harus huruf. Buat dua buah himpunan bilangan terpisah : huruf (H) dan angka (A) Q3 (L3 ) = {S → H|HT, T → AT|HT|H|A, H → a|b|c|…, A → 0|1|2|…}

20 Contoh : G1 : VT = {I, Love, Miss, You}, V = {S,A,B,C}, P = {S  ABC, A I, B Love | Miss, C You} S  ABC  I loveYou L(G1)={I love You, I Miss You}

21 Tentukan apakah produksi-produksi berikut memenuhi aturan grammer Reguler :
A  b B  bdB B  C B  bC B  Ad B  bcdef A  aSa A  aSS Ad  dB

22 Tentukan apakah produksi-produksi berikut memenuhi aturan grammer Bebas Konteks :
A  aSa B  Ace B  ab B  bcdef B  bcdefG B  aSS A  BCDEF A  AAAA Ad  dB

23 Tentukan apakah produksi-produksi berikut memenuhi aturan grammer Konteks Sensitive :
A  bcdefG B  aSa B  aSS B  BCDEF Ad  dB ad  b abC  DE abcDef  ghijkl AB  cde AAA  BBB

24 Tentukan apakah produksi-produksi berikut memenuhi aturan grammer Unrestricted :
ad  b abC  DE AB  cde ABCDEFG  h bA  CDEFG


Download ppt "GRAMMER ATAU TATA BAHASA"

Presentasi serupa


Iklan oleh Google