• Tidak ada hasil yang ditemukan

IF-UTAMA 1. Definisi. Grammar. Definisi

N/A
N/A
Protected

Academic year: 2021

Membagikan "IF-UTAMA 1. Definisi. Grammar. Definisi"

Copied!
5
0
0

Teks penuh

(1)

IF-UTAMA 1

Grammar

Pertemuan : 4

Dosen Pembina :Danang Junaedi

IF-UTAMA 2

Definisi

• Bahasa adalah himpunan kata-kata atau kalimat yang

telah disepakati, contoh :

– {makan, tidur, bermain, belajar} ⊂ Bahasa Indonesia

– {shit, sheet, damn, kiss, smell} ⊂ Bahasa Inggris

– {konichiwa, kombanwa, arigato, hon, susumu} ⊂ Bahasa

Jepang

– {qirdun, asamaun, samaun, adzab} ⊂ Bahasa Arab

• Tata Bahasa adalah

– Himpunan dari aturan-aturan struktural yang didefinisikan

dan berlaku pada suatu kalimat yang dibentuk dalam suatu

bahasa

[2]

– Cara mendeskripsikan bahasa

[5]

Definisi

• Tata Bahasa adalah (contd)

– Kumpulan dari himpunan –himpunan variabel,

simbol – simbol terminal, simbol awal dan

aturan-aturan produksi, dimana

• Simbol terminal : simbol yg tidak dapat diturunkan lagi

(biasanya ditulis dalam huruf kecil)

• Aturan produksi : Menspesifikasikan bagaimana suatu

tata bahasa melakukan transformasi suatu string ke

bentuk lainnya.

• Simbol Non terminal (Variabel) : simbol yang masih

bisa diturunkan lagi (biasanya ditulis dalam huruf

kapital)

Dua sifat penting yang harus dipenuhi oleh

suatu tata bahasa

[2]

• Simbol terminal dan non terminal harus disjoint

(tidak memiliki elemen yang sama)

• Setiap aturan produksi harus memuat paling

sedikit satu simbol nonterminal pada anggota

bagian kiri.

(2)

IF-UTAMA 5

Manfaat & Motivasi Tata Bahasa

Motivasi  menjelaskan bahasa alami, contoh

bahasa alami

<kalimat>

 <subyek> <predikat> <obyek>

<subyek>

 <kata benda>

<predikat>

 <kata kerja>

<obyek>

 <kata benda>

<kata benda>  dosen, mahasiswa

<kata kerja>  mengajar

kalimat atau bahasa alami yang dihasilkan salah

satunya adalah dosen mengajar mahasiswa

Manfaat  mendeskripsikan aturan tata bahasa

sebuah bahasa pemrograman seperti C, Pascal

dts.

IF-UTAMA 6

Bahasa Mesin Otomata Batasan aturan produksi

Regular / tipe 3 Finite State Automata

meliputi Deterministic

Finite Automata (DFA) & Non Detereministik Finite Automata (NFA)

• α adalah sebuah simbol variabel

• β maksimal memiliki sebuah simbol variabel yang bila ada terletak diposisi paling kanan

Bebas Konteks /

context free / tipe2

Push Down Automata

(PDA)

αberupa sebuah simbol variabel

Context Sensitive /

tipe 1

Linier Bounded Automata |α | ≤ |β|

Unrestricted / Phase structure / Natural languange / tipe 0

Mesin Turing Tidak ada batasan

Tahun 1959 ahli bahasa bernama Noam Chomsky melakukan

penggolongan tingkat bahasa (Hirarki Chomsky) :

IF-UTAMA 7

Definisi Formal Regular Grammar

[3]

G = (Vn, Vt, S, P)

• Bahasa G di atas terdiri dari 4 tuple, yaitu :

– Vn = simbol non terminal (variabel)

– Vt = simbol terminal

– S = simbol awal ∈ Vn

– P = himpunan aturan produksi

• Setiap aturan produksi berbentuk :

A  B (dibaca A menghasilkan B atau A menurunkan B)

– A = minimal mengandung 1 simbol non terminal

– B = (Vt)* U Vn

• Kumpulan aturan produksi :

A → B

1

A → B

2 …..

A → B

k

Bisa ditulis menjadi A → B

1

|B

2

|….. |B

k

|

IF-UTAMA 8

Contoh 1 :

Regular Grammar

G = {{S,A,B},{a,b,ε},S,P}

Dimana aturan produksi P adalah

S  aB

S  bA

S  ε

A  abaS

B  babS

atau dapat disederhanakan menjadi

S  aB | bA | ε

A  abaS

B  babS

Studi Kasus :

Mana yang termasuk alfabet

non terminal, alfabet terminal,

simbol awal, dan himpunan

aturan produksi dari bahasa

formal pada contoh ini ???

(3)

IF-UTAMA 9

Definisi Formal Context Free Grammar

[4]

G = (Vn, Vt, S, P)

• Bahasa G di atas terdiri dari 4 tuple, yaitu :

– Vn = simbol non terminal (variabel)

– Vt = simbol terminal

– S = simbol awal ∈ Vn

– P = himpunan aturan produksi

• Setiap aturan produksi berbentuk :

A  B (dibaca A menghasilkan B atau A

menurunkan B)

– A = minimal mengandung 1 simbol non terminal

– B = (Vn U Vt)*

IF-UTAMA 10

*

G

Context Free Languages (CFL)

[1]

The language generated by a CFG G, denoted by

L(G), is :

L(G) = {

ω

|

ω ∈

T* and S

⇒ ω

}

Therefore,

– every string consists solely of terminals, and

– every string can be derived from S

It is called a context free language (CFL).

Notice that:

– We must start with the start symbol

– We can use any production any number of times.

– The final string can only contain terminals.

Contoh 2 :

Context Free Grammar

G = {{S},{a,b},S,P}

Dimana aturan produksi P adalah

S  aSb

S  ab

atau dapat disederhanakan menjadi

S  aSb | ab

G = {{E},{E},E,P}

Dimana aturan produksi P adalah

E  E + E

E  E * E

E  (E)

E  id

atau dapat disederhanakan menjadi

E  E+E | E*E | (E) | id

Studi Kasus :

Mana yang termasuk alfabet non terminal, alfabet terminal, simbol awal, dan himpunan aturan produksi dari bahasa formal pada

contoh ini ???

Definisi Formal Context Sensitive Grammar

G = (Vn, Vt, S, P)

• Bahasa G di atas terdiri dari 4 tuple, yaitu :

– Vn = simbol non terminal (variabel) – Vt = simbol terminal

– S = simbol awal ∈ Vn – P = himpunan aturan produksi

• Setiap aturan produksi berbentuk :

A  B (dibaca A menghasilkan B atau A menurunkan B)

– A = minimal mengandung 1 simbol non terminal – B = (Vn U Vt)*, dimana panjang B ≥ A

• Contoh aturan produksi pada Context Sensitive Grammar

S  aS

S  ab

aSb  aSAb

(4)

IF-UTAMA 13

Aturan Ekspresi Reguler ke Tata Bahasa

Reguler Linier Kanan

4

1.

Bacalah ER dari kiri ke kanan, tulis X , X sebagai simbol awal.

2.

Jika yang terbaca adalah a, tuliskan a.

3.

Jika yang terbaca a*, tuliskan simbol non terminal baru, misalnya

Y, kemudian tuliskan ‘Y  aY |’.

4.

Jika yang terbaca (a + b), tuliskan Y, kemudian tuliskan ‘Y  aZ

| bZ |’ dan ‘Z ‘ . Y dan Z adalah simbol non terminal baru. Ruas

kanan dari ‘Z  …’ ditentukan oleh hasil pembacaan ER

berikutnya.

5.

Jika yang terbaca (a + b)*, tuliskan simbol non terminal baru,

misalnya Y, kemudian tuliskan ‘Y  aY | bY |’.

6.

Tuliskan

ε

jika seluruh ER sudah habis terbaca.

7.

Jika yang terbaca berbentuk (r + s), di mana r atau s berbentuk

a* atau (a + b)*, tuliskan RY | SY, kemudian tuliskan ‘Y  …‘, ‘R

 …’, dan ‘S  …’. Ruas kanan dari aturan ‘Y  …’ ditentukan

oleh hasil pembacaan ER berikutnya. Ruas kanan aturan ‘R 

…’ dan ‘S  ..’ ditentukan dengan jalan menganggap ekspresi r

dan s sebagai ekspresi terpisah.

IF-UTAMA 14

Contoh Ekspresi Reguler ke Tata

Bahasa Reguler Linier Kanan

4

• ER = 001*0

– Menurut aturan 2, 00 menghasilkan X  00. – Menurut aturan 3, 1* menghasilkan X  00Y, Y  1Y |. – Menurut aturan 2, 0 menghasilkan 0 sehingga Y  1Y | 0 – Menurut aturan 6, tuliskan εsehingga X  00Y, Y  1Y | 0.

– Jadi G = (Vn, Vt, S, P) ; Vn = {X, Y} ; Vt = {0, 1} ; S = X ; P = { X  00Y, Y 1Y | 0 }.

• ER = 00(0 + 1)*0

– Menurut aturan 2, 00 menghasilkan X  00.

– Menurut aturan 5, (0 + 1)* menghasilkan X  00Y, Y  0Y | 1Y |. Menurut aturan 2, 0 menghasilkan 0 sehingga Y  0Y | 1Y | 0. Menurut aturan 6, tulis εsehingga X  00Y, Y  0Y | 1Y | 0 ε.

– Jadi G = (Vn, Vt, S, P) ; Vn = {X, Y} ; Vt = {0, 1} ; S = X ; P = { X  00Y, Y  0Y | 1Y | 0 }.

• ER = 0(0 + 1)0*

– Aturan 2, 0 menghasilkan X  0.

– Aturan 4, (0 + 1) menghasilkan ‘X  0Y, Y  0Z | 1Z, Z ’. – Aturan 3, 0* menghasilkan ‘ A  0A |’.

– Aturan 6, tulis ε.

– Dengan demikian aturan produksi yang dihasilkan adalah

X  0Y, Y  0Z | 1Z, Z  A, A  0A | ε. Aturan produksi ini bisa disederhanakan menjadi X  0Y, Y  0Z | 1Z, Z  0Z | ε

IF-UTAMA 15

Contoh Konversi dari Tata Bahasa Linier

Kanan Reguler ke Ekspresi Reguler

4

1. Tuliskan ekspresi dari kiri ke kanan, mulai dari

simbol awal.

2. Jika aturan produksi berbentuk X  a, tuliskan a.

3. Jika aturan produksi berbentuk X  a | b, tuliskan

(a+b)

4. Jika aturan produksi berbentuk X  aX, tuliskan a*

5. Jika aturan produksi berbentuk X  aX | bX, tuliskan

(a + b)*

6. Jika aturan produksi berbentuk X  aY, dan terdapat

aturan produksi berbentuk Y  …., tuliskan aY,

kemudian Y diganti sesuai aturan 2 sampai 6.

7. Jika aturan produksi berbentuk X  aY | bZ, tuliskan

(aY + bZ), Y dan Z harus diganti sesuai dengan

aturan 2 sampai 7.

IF-UTAMA 16

Contoh Konversi dari Tata Bahasa Reguler

Linier Kanan ke Ekspresi Reguler

4

• G = (Vn, Vt, S, P) ; Vn = { X } ; Vt = {0, 1} ; S = X ; P = { X  0X | 1 }

– Menurut aturan 4, X  0X mengharuskan menulis 0* sehingga ER sekarang berisi 0*.

– Menurut aturan 2, X  1 mengharuskan menulis 1 sehingga ER sekarang berisi 0*1

G = (Vn, Vt, S, P) ; Vn = { X,Y } ; Vt = {0, 1, 2} ; S = X ; P = { X  1Y, Y  0Y | 1Y | 1 | 2 }

– Menurut aturan 6, X  1Y mengharuskan menulis 1Y sehingga ER sekarang berisi 1Y. Sekarang kita pikirkan pengganti Y.

– Menurut aturan 5, Y  0Y | 1Y mengharuskan menulis (0+1)*. – Menurut aturan 3, Y  1 | 2 mengharuskan menulis (1+2).

– Jadi Y pada ER 1Y harus diganti dengan (0+1)*(1+2) sehingga ER yang terbentuk sekarang adalah 1(0+1)*(1+2).

G = (Vn, Vt, S, P) ; Vn = { X, Y, Z } ; Vt = {0, 1} ; S = X ; P = { X  Y | Z, Y  0Y | ε, Z  1Z | ε}

– Menurut aturan 7, X  Y | Z mengharuskan menulis (Y + Z) sehingga ER sekarang berisi (Y + Z). Apakah pengganti Y dan Z ? Menurut aturan 4, Y  0Y mengharuskan menulis 0*.

– Menurut aturan 2, Y  e mengharuskan menuliskan ε.

– Jadi Y pada ekspresi (Y + Z) diganti dengan 0* (e tidak perlu ditulis). Z  1Z | ε menghasilkan 1* sehingga Z pada (Y + Z) dapat diganti dengan 1*. – Dengan demikian ER untuk G di atas adalah ( 0* + 1* )

(5)

IF-UTAMA 17

1. Tulis Ekspresi Regular berdasarkan aturan produksi dari Context

Free Grammar berikut ini :

G = {{S,A,B,C,D},{0,1, ε}, S, P} Dimana P terdiri dari

S → BC B → AB | ε A → 011 | 1 C → DC | ε D → 01

2. Tulis Context Free Grammar berdasarkan bahasa berikut ini : Gh = ({K, H, N, T, X}, {a, b, c, d, e, f, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, H,P) Dimana P terdiri dari

H  X X  KT X  NT T  KT T  NT T  ε K  a | b | c | d | e | f N  0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

Studi Kasus

[1 & 4]

IF-UTAMA 18

Tulis Context Free Grammar berdasarkan bahasa

berikut ini :

3.

{0

i

1

i+k

0

k

| i, k ≥ 1}

4.

{0

i

1

j

0

k

| i, j, k ≥ 0, j ≥ i+k}

5.

(0 + 1)*1(0 + 1)*0

6.

(01)*(0 + 11)(01)*0

Studi Kasus

[1]

Referensi

1.

http://www.cse.cuhk.edu.hk/~csc3130/

2.

Swinglly

Purba, “Otomata

dan

Bahasa

Formal”, Graha Ilmu,Yogyakarta, 2008

3.

Firrar

Utdirartatmo, “Teori

Bahasa

dan

Otomata”, Graha Ilmu, Yogyakarta, 2005

4.

Roni Djuliawan, M.T., “Diktat & Handout

Kuliah Teori Bahasa & Otomata”, Teknik

Informatika – Universitas Widyatama, 2003

5.

http://idhaclassroom.com/download/Teknik-

Otomasi-Bahasa-Kompilasi/Bahasa-Kompilasi.pdf

Referensi

Dokumen terkait

13 Estimasi Regresi Kuantil pada Model Dinamis dengan Menggunakan Pendekatan Kalman Filter untuk Pemodelan Curah Hujan Ekstrim di Indonesia.. Nurjannah, S.Si., M.Phil,

4, 6, 8 ppm larutan standar nitrat yang ditambahkan ke dalam cuplikan diperoleh recovery berkisar antara 99,88 – 106,89 %, sehingga dapat dikatakan alat dan metode uji

Sedangkan perlakuan suhu 15°C dengan pengemas plastik polypropilen divakum (P5) dapat menghambat susut berat, kerusakan dan perubahan warna kulit buah tomat varietas Martha selama

Poros memutarkan rotor dengan idle speed  =((rpm sampai putaran men/apai !)((rpm. Putaran tersebut akan menghasilkan arus listrik akibat proses elektromagneti/ antara rotor 

Pihak pertama pada tahun 2013 ini berjanji akan mewujudkan target kinerja tahunan sesuai lampiran perjanjian ini dalam rangka mencapai target kinerja jangka menengah seperti yang

Pelayanan Kesehatan Lingkungan adalah kegiatan atau serangkaian kegiatan yang ditujukan untuk mewujudkan kualitas lingkungan yang sehat baik dari aspek fisik, kimia, biologi, maupun

Menurut Hapidin (1999), model pendidikan TK Atraktif adalah suatu model pembelajaran yang menarik, menyenangkan, merangsang dan menantang anak bermain sambil belajar yang