13
Teori Bahasa & Otomata Fitri Nuraeni, M.Kom

Teori Bahasa & Otomata

Embed Size (px)

DESCRIPTION

Materi Teori bahasa dan automata

Citation preview

Page 1: Teori Bahasa & Otomata

Teori Bahasa & OtomataFitri Nuraeni, M.Kom

Page 2: Teori Bahasa & Otomata

TATA BAHASA BEBAS KONTEKS

Page 3: Teori Bahasa & Otomata

Tata Bahasa Bebas Konteks• TBBK adalah bahasa yang memiliki notasi

rekursif alamiah • TBBK memiliki peranan penting dalam teknologi

kompiler sejak tahun 1960, dengan mengubah implementasi parser (fungsi menemukan struktur suatu program)

• TBBK digunakan untuk mendeskripsikan format dokumen, melalui apa yang dikenal dengan definisi tipe dokumen (Document-type Definition DTD) yang digunakan pada komunitas XML untuk pertukaran informasi di Web

Page 4: Teori Bahasa & Otomata

Definisi TBBK• Terdapat himpunan hingga simbol-simbol yang

membentuk untai bahasa tersebut menjadi terdefinisi. Biasanya alfabet ini disebut terminal

• Terdapat himpunan hingga variabel-variabel atau yang disebut NonTerminal. Masing-masing variabel menyatakan suatu bahasa yaitu himpunan untai

• Salah satu Variabel mewakili bahasa yang telah didefinisi, ini disebut variabel awal

• Terdapat himpunan hingga “produksi” atau “aturan” yang mewakili definisi rekursif mengenai bahasa. Dimana ditulis dengan notasi : α β

Page 5: Teori Bahasa & Otomata

Definisi TBBK(2)

•TBBK bahasa G dapat dinyatakan dengan keempat komponennya, yaitu:

G= {V, T, S, P}•Contoh :

▫Suatu bahasa yang terdiri dari alfabet {0,1}

▫G = {{S,T},{0,1},S,P}▫P : S 0S0|1S1|T0|T1|T T 00

Page 6: Teori Bahasa & Otomata

DERIVASI (PENURUNAN)

Page 7: Teori Bahasa & Otomata

Jenis-jenis penurunan•Top – Bottom

▫Memperluas simbol awal menggunakan salah satu produksinya. Selanjutnya memperluas untai yang dihasilkan dengan mengganti salah satu variabel dengan badan salah satu dari produksinya dan seterusnya sampai menurunkan suatu untai yang terdiri dari terminal saja.

•Bottom – Up▫Melakukan perkiraan variabel yang

menghasilkan setiap terminal pada untai sampai mencapai pada variabel awal.

Page 8: Teori Bahasa & Otomata

Contoh :• G = ({E,L},{0,1,+,*,(,)}, E, P) dengan P :

▫ E L | E+E | E*E | (E)▫ L L1|L0|L|0|1

• Inferensi bahwa 1*(1+000) ada pada bahasa variabel E dapat tercermin dalam derivasi untaiitu, diawali dari E. Berikut penurunannya :

• E E * E 1 * E 1 * (E) 1 * (E + E) 1 * (1 + E) 1 * (1 + L0) 1 * (1 + L00) 1 * (1 + 000)

Page 9: Teori Bahasa & Otomata

Penuruan Paling Kanan• Penggantian Variable dengan badan salah satu

produksinya dimulai dari yang berada disebelah kanan satu per satu.

• G = ({E,L},{0,1,+,*,(,)}, E, P) dengan P :▫ E L | E+E | E*E | (E)▫ L L1|L0|L|0|1

• 1*(1+000), berikut penurunannya :• E E * E 1 * E 1 * (E) 1 * (E + E) 1 * (1 + E) 1 * (1 + L0) 1 * (1 + L00) 1 * (1 + 000)

Page 10: Teori Bahasa & Otomata

Penuruan Paling Kiri• Penggantian Variable dengan badan salah satu

produksinya dimulai dari yang berada disebelah kiri satu per satu.

• G = ({E,L},{0,1,+,*,(,)}, E, P) dengan P :▫ E L | E+E | E*E | (E)▫ L L1|L0|L|0|1

• 1*(1+000), berikut penurunannya :• E E * E E * (E) E * (E+E) E * (E + E) E * (E + L0) E * (E + L00) E * (E+ 000) E * (1 + 000) 1 * (1 + 000)

Page 11: Teori Bahasa & Otomata

Pohon UraiE

E * E

1 E( )

1 E+

L 0

L 0

0

Page 12: Teori Bahasa & Otomata

Penyederhanaan TBBKNext….

Page 13: Teori Bahasa & Otomata

LatihanLakukan pembuktian dengan pohon untai, derivasi paling

kiri, derivasi paling kanan1. Perhatikan tata bahasa :

S As|aSbS|є▫ Tunjukan bahwa untai ‘aab’ merupakan bagian dari

bahasa tersebut !2. Perhatikan tata bahasa :

E +EE|*EE|-EE|x|y▫ Tunjukan bahwa untai ‘+*-xyxy’ merupakan bagian dari

bahasa tersebut !3. Perhatikan tata bahasa :

E E+T | TT T*F | FF (E) | L

L a|b|La|Lb|L0|L1▫ Tunjukan bahwa untai ‘+*-xyxy’ merupakan bagian dari

bahasa tersebut !