• Tidak ada hasil yang ditemukan

TEORI BAHASA DAN OTOMATA PERTEMUAN KE 2

N/A
N/A
Protected

Academic year: 2018

Membagikan "TEORI BAHASA DAN OTOMATA PERTEMUAN KE 2"

Copied!
24
0
0

Teks penuh

(1)

GRAMMAR DAN BAHASA

GRAMMAR DAN BAHASA

MATERI MINGGU KE

MATERI MINGGU KE

GRAMMAR DAN BAHASA

GRAMMAR DAN BAHASA

(2)

TATA BAHASA

TATA BAHASA

Dalam pembicaraan tata bahasa,

terminal atau token.

Kalimat adalah deretan hingga simbo

Bahasa adalah himpunan kalimat

hingga kalimat.

11 Maret 2015 Teori Bahasa dan Otomata

TATA BAHASA

TATA BAHASA

, anggota alfabet dinamakan simbol

simbo-lsimbol terminal.

kalimat-kalimat. Anggota bahasa bisa tak

Teori Bahasa dan Otomata

(3)

TATA BAHASA

TATA BAHASA

Simbol-Simbol Terminal:

huruf kecil awal alfabet, misalnya

simbol operator, misalnya

simbol tanda baca, misalnya

string yang tercetak tebal

Simbol-Simbol Non Terminal:

huruf besar awal alfabet,

huruf S sebagai sebagai

String yang tercetak miring,

TATA BAHASA

TATA BAHASA

misalnya : a, b, c

misalnya : +, −, dan ×

misalnya : ( ) ,, dan ;

tebal, misalnya : if, then dan else

Non Terminal:

, misal: A, B, C

simbol awal

(4)

TATA BAHASA

TATA BAHASA

Huruf besar akhir alfabet melambangkan

terminal, misalnya : X, Y, Z.

Huruf kecil akhir alfabet melambangkan

simbol-simbol terminal, misalnya

Huruf yunani melambangkan string

simbol terminal atau simbol-simbol

keduanya, misalnya : α, β, dan γ.

11 Maret 2015 Teori Bahasa dan Otomata

TATA BAHASA

TATA BAHASA

melambangkan simbol terminal atau non

melambangkan string yang tersusun atas

misalnya : xyz

string yang tersusun atas

simbol-simbol non terminal atau campuran

Teori Bahasa dan Otomata

(5)

TATA BAHASA

TATA BAHASA

Sebuah produksi dilambangkan sebagai

derivasi dapat dilakukan penggantian

Simbol α dalam produksi berbentuk

sedangkan simbol β disebut ruas kanan

α

TATA BAHASA

TATA BAHASA

sebagai α → β, artinya : dalam sebuah

penggantian simbol α dengan simbol β.

berbentuk α → β. α disebut ruas kiri produksi

kanan produksi.

(6)

TATA BAHASA

TATA BAHASA

Derivasi adalah proses pembentukan sebuah dilambangkan sebagai : αβ.

Sentensial adalah string yang tersusun atas simbol terminal atau campuran keduanya.

Kalimat adalah string yang tersusun atas merupakan kasus khusus dari sentensial.

Terminal berasal dari kata terminate (berakhir yang dihasilkan adalah sebuah kalimat (yang

Non Terminal berasal dari kata not terminate

belum/tidak berakhir jika sentensial yang dihasilkan

11 Maret 2015 Teori Bahasa dan

TATA BAHASA

TATA BAHASA

sebuah kalimat atau sentensial. Sebuah derivasi

simbol-simbol terminal atau simbol-simbol non

atas simbol-simbol terminal, sehingga kalimat

berakhir), maksudnya derivasi berakhir jika sentensial (yang tersusun atas simbol-simbol terminal itu).

terminate (belum/tidak berakhir), maksudnya derivasi dihasilkan mengandung simbol non terminal.

dan Otomata

(7)

TATA BAHASA

TATA BAHASA

ATURAN PRODUKSI

Aturan produksi dinyatakan dalam bentuk

• α menghasilkan atau menurunkan β

• α symbol-symbol untuk ruas kiri, β symbol

• Symbol-symbol dapat berupa terminal dapat diturunkan menjadi symbol yang

• Umumnya symbol terminal disymbolkan

sedangkan untuk symbol non terminal disymbolkan dsb)

Contoh:

T → a “T menghasilkan

T → E | E + A “ T menghasilkan

TATA BAHASA

TATA BAHASA

α → β

symbol-symbol untuk ruas kanan

terminal dan non terminal dimana non terminal symbol yang lainnya.

disymbolkan dengan huruf kecil (a,b,c, dsb),

disymbolkan dengan huruf besar (A,B,C,

menghasilkan a”

(8)

GRAMMAR

GRAMMAR

Grammar G didefinisikan sebagai pasangan dituliskan sebagai G(VT, VN, S, Q), dimana

VT : himpunan simbol-simbol

atau alfabet)

VN : himpunan simbol-simbol

SVN : simbol awal (atau simbol

Q : himpunan produksi

Contoh :

G1 : VT = {a}, VN= {S}, Q= {S  aS S  aS

 aaS

 aaa

L(G1)={a, aa, aaa, aaaa,…}

L(G1) ={an n ≥ 1}

11 Maret 2015 Teori Bahasa dan Otomata

GRAMMAR

GRAMMAR

pasangan 4 tuple : VT , VN , S, dan Q, dan :

simbol terminal (atau himpunan token - token,

simbol non terminal simbol start)

aSa}

Teori Bahasa dan Otomata

(9)

GRAMMAR

GRAMMAR

Tipe sebuah grammar (atau

aturan sebagai berikut :

A language is said to be type

can be specified by a type

specified any type-(i+1) grammar

GRAMMAR

GRAMMAR

bahasa) ditentukan dengan

(10)

HIRARKI CHOMSKY

HIRARKI CHOMSKY

Ada 4(empat) kelas pengelompokan suatu

Hierarchy”. Hirarki atau tingkatan bahasa pada tahun 1959.

Berdasarkan komposisi bentuk ruas kiri dan Chomsky mengklasifikasikan 4 tipe grammar

11 Maret 2015 Teori Bahasa dan Otomata

HIRARKI CHOMSKY

HIRARKI CHOMSKY

suatu bahasa, yang dikenal dengan “Chomsky

bahasa ini dikembangkan oleh Noam Chomsky

dan ruas kanan produksinya (  ), Noam grammar :

Teori Bahasa dan Otomata

(11)

HIRARKI CHOMSKY

HIRARKI CHOMSKY

1. Grammar tipe ke-0 : Unrestricted Grammar (UG)

Ciri : Tidak ada batasan pada aturan produksi Mesin pengenal bahasa disebut : Mesin Turing

Contoh :

• Abc → De

• G = (V, T, P, S) V = {S, A, B, G} T = {a, b,d} Q : S  aSa

A  bdG AB  a

α, β

(V

T

| V

N

)*, |α|> 0

HIRARKI CHOMSKY

HIRARKI CHOMSKY

0 : Unrestricted Grammar (UG)

produksi

(12)

HIRARKI CHOMSKY

HIRARKI CHOMSKY

2. Grammar tipe ke-1 : Context Sensitive Grammar (CSG)

Ciri : Panjang string ruas kiri harus < (lebih kecil Mesin pengenal bahasa disebut : Linear Bounded Contoh :

G = {V, T, P, S}

V = {S, B, C} T = {a, b, c}

Q : S  aSBC | aBC | 

CB  BC aB ab bB  bb

bC  bc cC  cc

Keterangan : S  , karena S adalah simbol panjang S = 1 dan panjang  = 0

11 Maret 2015 Teori Bahasa dan Otomata

α, β

(V

T

| V

N

)*, 0 < |α

HIRARKI CHOMSKY

HIRARKI CHOMSKY

1 : Context Sensitive Grammar (CSG)

) atau = (sama dengan) ruas kanan.

Bounded Automata (LBA)

simbol awal, maka ini juga memenuhi Walau

Teori Bahasa dan Otomata

12 12

(13)

HIRARKI CHOMSKY

HIRARKI CHOMSKY

3. Grammar tipe ke-2 : Context Free Grammar (CFG)

Ciri : Ruas kiri haruslah tepat satu symbol variabel

Mesin pengenal bahasa disebut : Push Down Automata (PDA)

Contoh :

G = {V, T, P, S} V = {S, A, B} T = {a, b}

Q : S  aB | bA

A  a | aS | bAA B  b | bS | aBB

α

V

N

, β

(V

T

|V

HIRARKI CHOMSKY

HIRARKI CHOMSKY

2 : Context Free Grammar (CFG)

variabel, yaitu simbol non terminal

Push Down Automata (PDA)

(14)

HIRARKI CHOMSKY

HIRARKI CHOMSKY

4. Grammar tipe ke-3 :

Regular Grammar (RG)

Ciri :

• Ruas kiri hanya memiliki maksimal satu symbol non terminal

α adalah simbol nonterminal tunggal

•  maksimal memiliki maksimal satu simbol ditempatkan pada posisi paling kanan.

Mesin pengenal bahasa disebut : Finite State Automata (FSA) Contoh :

G = (V, T, P, S) V = {S, A, B} T = {0, 1}

Q : S  0A | 1B | 0 A  0A | 0S | 1B B  1B | 1 | 0 | 

11 Maret 2015 Teori Bahasa dan Otomata

α

V

N

, β

{V

T

, V

T

V

N

} atau

HIRARKI CHOMSKY

HIRARKI CHOMSKY

Regular Grammar (RG)

Ruas kiri hanya memiliki maksimal satu symbol non terminal

simbol non terminal tunggal dan

Finite State Automata (FSA)

Teori Bahasa dan Otomata

14 14

(15)

Contoh

Contoh Analisa

Analisa

Grammar

Grammar

1. Grammar G1 dengan Q1 = {S → aB, B →

• Ruas kiri semua produksinya terdiri tipe CFG atau RG.

• Karena semua ruas kanannya terdiri G1 adalah RG.

2. Grammar G2 dengan Q2 = {SBa, B

• Ruas kiri semua produksinya terdiri tipe CFG atau RG.

• Selanjutnya karena semua ruas kanannya VNVT maka G2adalah RG

Penentuan

Penentuan Type

Type

Grammar

Grammar

, B → bB, B → b}.

terdiri dari sebuah VN maka G1 kemungkinan

terdiri dari sebuah VT atau string VT VN maka

Bb, Bb}.

terdiri dari sebuah VN maka G2 kemungkinan

(16)

Contoh

Contoh Analisa

Analisa

Grammar

Grammar

3. Grammar G3 dengan Q3 = {S → aA, S →

• Ruas kirinya mengandung string yang maka G3 kemungkinan tipe CSG atau

• karena semua ruas kirinya lebih pendek maka G3 adalah CSG

4. Grammar G4 dengan Q4 = {aS → ab, SAc

• Ruas kirinya mengandung string kemungkinan tipe CSG atau UG

• Karena terdapat ruas kirinya yang lebih SAc) maka G4 adalah UG.

11 Maret 2015 Teori Bahasa dan Otomata

Penentuan

Penentuan Type

Type

Grammar

Grammar

→ aB, aAb → aBCb}.

yang panjangnya lebih dari 1 (yaitu aAb) atau UG

pendek atau sama dengan ruas kananya

SAc → bc}

yang panjangnya lebih dari 1 maka G4

lebih panjang daripada ruas kananya (yaitu

Teori Bahasa dan Otomata

(17)

DERIVASI KALIMAT DAN PENENTUAN BAHASA

DERIVASI KALIMAT DAN PENENTUAN BAHASA

Tentukan bahasa dari masing-masing gramar

1. G1 dengan Q1 = {1. S  aAa, 2. A  aAa

Jawab :

Derivasi kalimat terpendek :

S  aAa (1)

 aba (3)

Dari pola kedua kalimat disimpulkan : L1 (G

DERIVASI KALIMAT DAN PENENTUAN BAHASA

DERIVASI KALIMAT DAN PENENTUAN BAHASA

gramar berikut :

aAa, 3. A  b}.

Derivasi kalimat umum :

S  aAa (1)

 aaAaa (2)

 anAan(2)

 anban (3)

(18)

DERIVASI KALIMAT DAN PENENTUAN BAHASA

DERIVASI KALIMAT DAN PENENTUAN BAHASA

2. G2 dengan Q2 = {1. S  aS, 2. S  aB

Jawab :

Derivasi kalimat terpendek :

S  aB (2) S  aS

 abC (3) 

 aba (5)  a

n- anB

 anbC

 anbaC

  anba

 anba

Dari pola kedua kalimat disimpulkan : L (G

11 Maret 2015 Teori Bahasa dan Otomata

DERIVASI KALIMAT DAN PENENTUAN BAHASA

DERIVASI KALIMAT DAN PENENTUAN BAHASA

aB, 3. B bC, 4. C aC, 5. C a}.

Derivasi kalimat umum :

aS (1)

-1S (1)

B (2)

bC (3)

baC (4)

bam-1C (4)

bam (5)

: L (G2)={ anbam n 1, m1}

Teori Bahasa dan Otomata

(19)

DERIVASI KALIMAT DAN PENENTUAN BAHASA

DERIVASI KALIMAT DAN PENENTUAN BAHASA

3. G3 dengan Q3 = {1. S  aSBC, 2. S  abC cC cc}.

Jawab :

Derivasi kalimat terpendek 1: Derivasi

S  abC (2) S  aSBC

 abc (4)  aaSBCBC

Derivasi kalimat terpendek 2 :  aaabCBCBC

S  aSBC (1)  aaabBCCBC

 aabCBC (2)  aaabBCBCC

 aabBCC (5)  aaabBBCCC

 aabbCC (3)  aaabbBCCC

 aabbcC (4)  aaabbbCCC

 aabbcc (6) aaabbbcCC

 aaabbbccC

 aaabbbccc

DERIVASI KALIMAT DAN PENENTUAN BAHASA

DERIVASI KALIMAT DAN PENENTUAN BAHASA

abC, 3. bB  bb, 4. bC  bc, 5. CB  BC, 6.

Derivasi kalimat terpendek 3 :

(20)

Menentukan

Menentukan Grammar

Grammar

1. Tentukan sebuah gramar regular untuk bahasa Jawab :

Q1 (L1) = {S  aSa}

2. Tentukan sebuah gramar bebas konteks bulat non negatif ganjil

Jawab :

Langkah kunci : digit terakhir bilangan harus Buat dua buah himpunan bilangan terpisah Q2 (L2) = {S  JGSJS, G  02468, J

11 Maret 2015 Teori Bahasa dan Otomata

Grammar

Grammar Sebuah

Sebuah Bahasa

Bahasa

bahasa L1 = { an n 1}

untuk bahasa L2 : himpunan bilangan

harus ganjil.

terpisah : genap (G) dan ganjil (J) 8, J  13579}

Teori Bahasa dan Otomata

(21)

Menentukan

Menentukan Grammar

Grammar

3. Tentukan sebuah gramar bebas konteks

L3 = himpunan semua identifier yang sah dengan batasan : terdiri dari simbol huruf boleh lebih dari 8 karakter

Jawab :

Langkah kunci : karakter pertama identifier Buat dua himpunan bilangan terpisah : huruf Q3 (L3) = {S  HHT, T  ATHTHA,

H  abc…, A  012…}

Grammar

Grammar Sebuah

Sebuah Bahasa

Bahasa

untuk bahasa :

sah menurut bahasa pemrograman Pascal huruf kecil dan angka, panjang identifier

identifier harus huruf.

(22)

Menentukan

Menentukan Grammar

Grammar

4. Tentukan gramar bebas konteks untuk bahasa Q4 (L4) = {anbmn,m 1, n m}

Jawab :

Langkah kunci : sulit untuk mendefinisikan adalah dengan mengingat bahwa x  y berarti L4 = LA LB , LA ={anbmn > m 1}, L

B = {anb QA(LA) = {A  aAaC, C  aCbab}, Q(LB) = Q4 (L4) = {S AB, A  aAaC, C  aCbab

11 Maret 2015 Teori Bahasa dan Otomata

Grammar

Grammar Sebuah

Sebuah Bahasa

Bahasa

bahasa

mendefinisikan L4 (G4) secara langsung. Jalan keluarnya berarti x > y atau x < y.

bm1 n < m}.

= {B  BbDb, D aDbab} ab, B  BbDb, D aDbab}

Teori Bahasa dan Otomata

(23)

Menentukan

Menentukan Grammar

Grammar

5. Tentukan sebuah gramar bebas konteks L5 = bilangan bulat non negatif genap. Jika

atau lebih maka nol tidak boleh muncul

Jawab :

Langkah kunci : Digit terakhir bilangan harus Buat tiga himpunan terpisah : bilangan dengan nol (N), serta bilangan ganjil (J). Q5 (L5) = {S  NGAJA, A  NNAJA,

G 2468, N 02468

Grammar

Grammar Sebuah

Sebuah Bahasa

Bahasa

untuk bahasa :

Jika bilangan tersebut terdiri dari dua digit muncul sebagai digit pertama.

harus genap. Digit pertama tidak boleh nol. bilangan genap tanpa nol (G), bilangan genap

.

(24)

11 Maret 2015 Teori Bahasa dan Otomata

TERIMAKASIH

Teori Bahasa dan Otomata

24 24

TERIMAKASIH

Referensi

Dokumen terkait

Pengertian terminal berasal dari kata terminate (berakhir), maksudnya derivasi berakhir jika sentensial yang dihasilkan adalah sebuah kalimat (yang tersusun atas

Bentuk Normal Greibach / Greibach Normal Form adalah suatu tata bahasa bebas konteks di mana hasil produksinya (ruas kanan) diawali dengan satu simbol terminal,

• Bahasa yang didefinisikan oleh recoginzer adalah himpunan string masukan

Pengertian terminal berasal dari kata terminate (berakhir), maksudnya derivasi berakhir jika sentensial yang dihasilkan adalah sebuah kalimat (yang tersusun atas

string w dengan menghilangkan satu atau lebih simbol- simbol paling depan dan/atau simbol-simbol paling belakang dari string w tersebut. Contoh : ab, bc, a, b, c, dan  adalah

Dari gambar diatas dapat diketahui bahwa mesin FSA(Finite State Automata) tersebut memiliki inputan ‘a‘ dan ‘b‘ dan akan menjadi simbol terminal pada aturan produksi yang

• ProperSubstring string w adalah string yang dihasilkan dari string w dengan menghilangkan satu atau lebih simbol- simbol paling depan dan/atau simbol-simbol paling belakang

Pengertian terminal berasal dari kata terminate (berakhir), maksudnya derivasi berakhir jika sentensial yang dihasilkan adalah sebuah kalimat (yang tersusun atas