TEORI BAHASA DAN OTOMATA PERTEMUAN KE-2.pdf

Preview:

Citation preview

GRAMMAR DAN BAHASAGRAMMAR DAN BAHASA

MATERI MINGGU KEMATERI MINGGU KE

GRAMMAR DAN BAHASAGRAMMAR DAN BAHASA

MATERI MINGGU KEMATERI MINGGU KE--22

TATA BAHASATATA BAHASA

• Dalam pembicaraan tata bahasa,terminal atau token.

• Kalimat adalah deretan hingga simbo

• Bahasa adalah himpunan kalimathingga kalimat.

11 Maret 2015 Teori Bahasa dan Otomata

TATA BAHASATATA BAHASA

, anggota alfabet dinamakan simbol

simbo-lsimbol terminal.

kalimat-kalimat. Anggota bahasa bisa tak

Teori Bahasa dan Otomata

22

TATA BAHASATATA 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,

11 Maret 2015 Teori Bahasa dan Otomata

TATA BAHASATATA BAHASA

misalnya : a, b, c

misalnya : +, −, dan ×

misalnya : ( ) ,, dan ;

tebal, misalnya : if, then dan else

Non Terminal:

, misal: A, B, C

simbol awal

miring, misalnya : expr dan stmt.

Teori Bahasa dan Otomata

33

TATA BAHASATATA BAHASA

• Huruf besar akhir alfabet melambangkanterminal, misalnya : X, Y, Z.

• Huruf kecil akhir alfabet melambangkansimbol-simbol terminal, misalnya

• Huruf yunani melambangkan stringsimbol terminal atau simbol-simbolkeduanya, misalnya : α, β, dan γ.

11 Maret 2015 Teori Bahasa dan Otomata

TATA BAHASATATA BAHASA

melambangkan simbol terminal atau non

melambangkan string yang tersusun atasmisalnya : xyz

string yang tersusun atas simbol-simbol non terminal atau campuran

Teori Bahasa dan Otomata

44

TATA BAHASATATA BAHASA

Sebuah produksi dilambangkan sebagaiderivasi dapat dilakukan penggantian

Simbol α dalam produksi berbentuksedangkan simbol β disebut ruas kanan

11 Maret 2015 Teori Bahasa dan Otomata

α

TATA BAHASATATA BAHASA

sebagai α → β, artinya : dalam sebuahpenggantian simbol α dengan simbol β.

berbentuk α → β. α disebut ruas kiri produksikanan produksi.

Teori Bahasa dan Otomata

55

β

TATA BAHASATATA BAHASA• Derivasi adalah proses pembentukan sebuah

dilambangkan sebagai : α⇒β.

• Sentensial adalah string yang tersusun atas simbolterminal atau campuran keduanya.

• Kalimat adalah string yang tersusun atasmerupakan kasus khusus dari sentensial.

• Terminal berasal dari kata terminate (berakhiryang dihasilkan adalah sebuah kalimat (yang

• Non Terminal berasal dari kata not terminatebelum/tidak berakhir jika sentensial yang dihasilkan

11 Maret 2015 Teori Bahasa dan

TATA BAHASATATA BAHASAsebuah 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 derivasidihasilkan mengandung simbol non terminal.

dan Otomata

66

TATA BAHASATATA BAHASAATURAN 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 disymbolkansedangkan untuk symbol non terminal disymbolkandsb)

Contoh:

T → a “T menghasilkan

T → E | E + A “ T menghasilkan

11 Maret 2015 Teori Bahasa dan Otomata

TATA BAHASATATA 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”

menghasilkan E atau T menghasilkan E + A

Teori Bahasa dan Otomata

77

GRAMMARGRAMMARGrammar G didefinisikan sebagai pasangandituliskan sebagai G(VT , VN , S, Q), dimana

• VT : himpunan simbol-simbol

atau alfabet)

• VN : himpunan simbol-simbol

• S VN : 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

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

:

simbol terminal (atau himpunan token - token,

simbol non terminal

simbol start)

aSa}

Teori Bahasa dan Otomata

88

GRAMMARGRAMMAR

Tipe sebuah grammar (atauaturan sebagai berikut :

A language is said to be typecan be specified by a typespecified any type-(i+1) grammar

11 Maret 2015 Teori Bahasa dan Otomata

GRAMMARGRAMMAR

bahasa) ditentukan dengan

type-i (i = 0, 1, 2, 3) language if ittype-i grammar but can’t be

grammar.

Teori Bahasa dan Otomata

99

HIRARKI CHOMSKYHIRARKI CHOMSKYAda 4(empat) kelas pengelompokan suatuHierarchy”. Hirarki atau tingkatan bahasapada tahun 1959.

Berdasarkan komposisi bentuk ruas kiri danChomsky mengklasifikasikan 4 tipe grammar

11 Maret 2015 Teori Bahasa dan Otomata

HIRARKI CHOMSKYHIRARKI CHOMSKYsuatu bahasa, yang dikenal dengan “Chomsky

bahasa ini dikembangkan oleh Noam Chomsky

dan ruas kanan produksinya ( ), Noamgrammar :

Teori Bahasa dan Otomata

1010

HIRARKI CHOMSKYHIRARKI 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

11 Maret 2015 Teori Bahasa dan Otomata

α, β ∈ (VT | VN)*, |α|> 0

HIRARKI CHOMSKYHIRARKI CHOMSKY

0 : Unrestricted Grammar (UG)

produksi

Turing

Teori Bahasa dan Otomata

1111

HIRARKI CHOMSKYHIRARKI CHOMSKY2. 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 simbolpanjang S = 1 dan panjang = 0

11 Maret 2015 Teori Bahasa dan Otomata

α, β ∈ (VT | VN)*, 0 < |α

HIRARKI CHOMSKYHIRARKI CHOMSKY1 : Context Sensitive Grammar (CSG)

) atau = (sama dengan) ruas kanan.

Bounded Automata (LBA)

simbol awal, maka ini juga memenuhi Walau

Teori Bahasa dan Otomata

1212

α| ≤ |β|

HIRARKI CHOMSKYHIRARKI CHOMSKY3. 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

11 Maret 2015 Teori Bahasa dan Otomata

α ∈ VN, β ∈ (VT|V

HIRARKI CHOMSKYHIRARKI CHOMSKY2 : Context Free Grammar (CFG)

variabel, yaitu simbol non terminal

Push Down Automata (PDA)

Teori Bahasa dan Otomata

1313

|VN)*

HIRARKI CHOMSKYHIRARKI CHOMSKY4. 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 | 1BB 1B | 1 | 0 |

11 Maret 2015 Teori Bahasa dan Otomata

α ∈ VN, β ∈ {VT, VT VN} atau

HIRARKI CHOMSKYHIRARKI CHOMSKYRegular Grammar (RG)

Ruas kiri hanya memiliki maksimal satu symbol non terminal

simbol non terminal tunggal dan

Finite State Automata (FSA)

Teori Bahasa dan Otomata

1414

atau α ∈ VN, β ∈ {VT, VN VT}

ContohContoh AnalisaAnalisaGrammarGrammar

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

• Ruas kiri semua produksinya terdiritipe CFG atau RG.

• Karena semua ruas kanannya terdiriG1 adalah RG.

2. Grammar G2 dengan Q2 = {S Ba, B

• Ruas kiri semua produksinya terdiritipe CFG atau RG.

• Selanjutnya karena semua ruas kanannyaVN VT maka G2 adalah RG

11 Maret 2015 Teori Bahasa dan Otomata

PenentuanPenentuan Type Type GrammarGrammar

, B → bB, B → b}.

terdiri dari sebuah VN maka G1 kemungkinan

terdiri dari sebuah VT atau string VT VN maka

Bb, B b}.

terdiri dari sebuah VN maka G2 kemungkinan

kanannya terdiri dari sebuah VT atau string

Teori Bahasa dan Otomata

1515

ContohContoh AnalisaAnalisaGrammarGrammar

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

• Ruas kirinya mengandung string yangmaka G3 kemungkinan tipe CSG atau

• karena semua ruas kirinya lebih pendekmaka G3 adalah CSG

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

• Ruas kirinya mengandung stringkemungkinan tipe CSG atau UG

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

11 Maret 2015 Teori Bahasa dan Otomata

PenentuanPenentuan Type Type GrammarGrammar

→ 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

1616

DERIVASI KALIMAT DAN PENENTUAN BAHASADERIVASI 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

11 Maret 2015 Teori Bahasa dan Otomata

DERIVASI KALIMAT DAN PENENTUAN BAHASADERIVASI KALIMAT DAN PENENTUAN BAHASA

gramar berikut :

aAa, 3. A b}.

Derivasi kalimat umum :

S aAa (1)

aaAaa (2)

anAan (2)

anban (3)

(G1) = {anban n 1}

Teori Bahasa dan Otomata

1717

DERIVASI KALIMAT DAN PENENTUAN BAHASADERIVASI 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) an-

anB

anbC

anbaC

anba

anba

Dari pola kedua kalimat disimpulkan : L (G

11 Maret 2015 Teori Bahasa dan Otomata

DERIVASI KALIMAT DAN PENENTUAN BAHASADERIVASI 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, m1}

Teori Bahasa dan Otomata

1818

DERIVASI KALIMAT DAN PENENTUAN BAHASADERIVASI KALIMAT DAN PENENTUAN BAHASA

3. G3 dengan Q3 = {1. S aSBC, 2. S abCcC 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

Dari pola ketiga kalimat disimpulkan : L3 (G3) =

11 Maret 2015 Teori Bahasa dan Otomata

DERIVASI KALIMAT DAN PENENTUAN BAHASADERIVASI KALIMAT DAN PENENTUAN BAHASA

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

Derivasi kalimat terpendek 3 :

aSBC (1)

aaSBCBC (1)

aaabCBCBC (2)

aaabBCCBC (5)

aaabBCBCC (5)

aaabBBCCC (5)

aaabbBCCC (3)

aaabbbCCC (3)

aaabbbcCC (4)

aaabbbccC (6)

aaabbbccc (6)

= { anbncn n 1}

Teori Bahasa dan Otomata

1919

MenentukanMenentukan Grammar Grammar

1. Tentukan sebuah gramar regular untuk bahasa

Jawab :

Q1 (L1) = {S aSa}

2. Tentukan sebuah gramar bebas konteksbulat non negatif ganjil

Jawab :

Langkah kunci : digit terakhir bilangan harus

Buat dua buah himpunan bilangan terpisah

Q2 (L2) = {S JGSJS, G 02468, J

11 Maret 2015 Teori Bahasa dan Otomata

Grammar Grammar SebuahSebuah BahasaBahasa

bahasa L1 = { an n 1}

untuk bahasa L2 : himpunan bilangan

harus ganjil.

terpisah : genap (G) dan ganjil (J)

8, J 13579}

Teori Bahasa dan Otomata

2020

MenentukanMenentukan Grammar Grammar

3. Tentukan sebuah gramar bebas konteks

L3 = himpunan semua identifier yang sahdengan batasan : terdiri dari simbol hurufboleh lebih dari 8 karakter

Jawab :

Langkah kunci : karakter pertama identifier

Buat dua himpunan bilangan terpisah : huruf

Q3 (L3) = {S HHT, T ATHTHA,

H abc…, A 012…}

11 Maret 2015 Teori Bahasa dan Otomata

Grammar Grammar SebuahSebuah BahasaBahasa

untuk bahasa :

sah menurut bahasa pemrograman Pascalhuruf kecil dan angka, panjang identifier

identifier harus huruf.

huruf (H) dan angka (A)

Teori Bahasa dan Otomata

2121

MenentukanMenentukan Grammar Grammar

4. Tentukan gramar bebas konteks untuk bahasa

Q4 (L4) = {anbmn,m 1, n m}

Jawab :

Langkah kunci : sulit untuk mendefinisikanadalah dengan mengingat bahwa x y berarti

L4 = LA LB , LA ={anbmn > m 1}, LB = {anb

QA(LA) = {A aAaC, C aCbab}, Q(LB) =

Q4 (L4) = {S AB, A aAaC, C aCbab

11 Maret 2015 Teori Bahasa dan Otomata

Grammar Grammar SebuahSebuah BahasaBahasa

bahasa

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

bm1 n < m}.

= {B BbDb, D aDbab}

ab, B BbDb, D aDbab}

Teori Bahasa dan Otomata

2222

MenentukanMenentukan Grammar Grammar

5. Tentukan sebuah gramar bebas konteks

L5 = bilangan bulat non negatif genap. Jikaatau lebih maka nol tidak boleh muncul

Jawab :

Langkah kunci : Digit terakhir bilangan harusBuat tiga himpunan terpisah : bilangandengan nol (N), serta bilangan ganjil (J).

Q5 (L5) = {S NGAJA, A NNAJA,

G 2468, N 02468

11 Maret 2015 Teori Bahasa dan Otomata

Grammar Grammar SebuahSebuah BahasaBahasa

untuk bahasa :

Jika bilangan tersebut terdiri dari dua digitmuncul sebagai digit pertama.

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

.

, J 13579}

Teori Bahasa dan Otomata

2323

11 Maret 2015 Teori Bahasa dan Otomata

TERIMAKASIH

Teori Bahasa dan Otomata

2424

TERIMAKASIHLilis Setyowati

Recommended