Teori Bahasa & OTOMATA

22

description

Teori Bahasa & OTOMATA. BAB I. PENDAHULUAN. Ilmu komputer mempunyai 2 komponen utama : Model dan gagasan mendasar mengenai komputasi . Teknik rekayasa untuk perancangan sistem komputasi , meliputi perangkat keras dan perangkat lunak , khususnya penerapan rancangan dari teori . - PowerPoint PPT Presentation

Transcript of Teori Bahasa & OTOMATA

Page 1: Teori Bahasa & OTOMATA
Page 2: Teori Bahasa & OTOMATA

BAB I. PENDAHULUAN

Ilmu komputer mempunyai 2 komponen utama :• Model dan gagasan mendasar mengenai komputasi.Model dan gagasan mendasar mengenai komputasi.• Teknik rekayasa untuk perancangan sistem Teknik rekayasa untuk perancangan sistem

komputasi, meliputi perangkat keras dan perangkat komputasi, meliputi perangkat keras dan perangkat lunak, khususnya penerapan rancangan dari teori.lunak, khususnya penerapan rancangan dari teori.

Teori bahasa dan otomata merupakan bagian pertama.

A.KEDUDUKAN TEORI BAHASA DAN OTOMATAPADA ILMU KOMPUTER

Page 3: Teori Bahasa & OTOMATA

Secara teoritis ilmu komputer diawali dari sejumlah perbedaandisiplin ilmu.• Teknik elektro : Mengembangkan switching

sebagai tool untuk mendesainhardware.

• Matematika : Bekerja berdasarkan logika.• Ahli Bahasa : Menyelidiki tata bahasa untuk

natural language.• Ahli Biologi : Mempelajari neural network.

Spesifikasi dari sebuah bahasa pemrograman :

• Himpunan simbol-simbol (alphabet) yang bisa dipakai untuk membentuk program yang benar.

• Himpunan program yang benar secara sintaktik.• Makna dari program tersebut.

Page 4: Teori Bahasa & OTOMATA

1.1. Teori Bahasa Teori Bahasa adalah konsep-konsep pada "string alpabet “ dalam penyambungan karakter-karakter alpabet untuk membentuk suatu makna (bahasa).

2.2. Alpabet Alpabet a adalah himpunan simbol (karakter) tak kosong yang berhingga. Alpabet digunakan untuk membentuk kata-kata (string- string) di bahasa. Bahasa dimulai dengan alpabet. Alpabet dilambangkan dengan ΣΣ

3.3. String String adalah deretan simbol dari alpabet dimana perulangan simbol diijinkan.Contoh :V = {a,b,c,d}String pada alpabet V antara lain -> 'a','abcd','bbba'

B. Konsep Bahasa dan Otomata

Page 5: Teori Bahasa & OTOMATA

4.4. panjang string panjang string adalah jumlah simbol di dalam string bukan pada alpabet dan pengulangan kemunculan simbol dihitung. Panjang string dilambangkan |w| |w|

Contoh:|ε| = 0|a| = 1|aa| = 2|aaa| = 3|aaab| = 4

Page 6: Teori Bahasa & OTOMATA

5.5. Empty string(null string) Empty string(null string) adalah string yang tidak mengandung simbol apapun. Lambangnya atau

6.6. Regular expression Regular expression adalah cara untuk mengekspresikan bahasa dengan hanya menggunakan operasi :

• Concatenation• Superscript• Kleene closure• Positif closure

Page 7: Teori Bahasa & OTOMATA

Penyambungan (Concatenation - o)

Penyambungan dilakukan pada 2 karakter atau lebih membentuk 1 barisan karakter

(string simbol).

Contoh : 'a' o 'b' = 'ab'

'ab' o 'baab' = 'abbaab'

Page 8: Teori Bahasa & OTOMATA

SuperscriptSuperscript

Penyambungan dapat dianggap sebagai perkalian karena biasanya penulisannya

adalah bila x dan y string, maka x o y adalah xy. sehingga pemangkatan dapat digunakan

VoV = VV = V2 ----> Panjang string = 2

Page 9: Teori Bahasa & OTOMATA

Kleene closureKleene closureV* = {ε} U V+

adalah string pada V, termasuk string kosong dimana ε string kosong (string tanpa simbol)

ε mempunyai sifat identitas, yaitu:ε o x = xx o ε = x

Page 10: Teori Bahasa & OTOMATA

Positive closurePositive closureV+ = V1 U V2 U V3 U ...

adalah himpunan string pada V, tidak ada string kosong didalamnya.

V0 = {ε}adalah himpunan yang isinya hanya string

kosong, dimana String kosong ε tidak sama dengan himpunan kosong

Page 11: Teori Bahasa & OTOMATA

• Otomata merupakan suatu sistem yang terdiri atas sejumlah berhingga state, dimana state menyatakan informasi mengenai input yang lalu, dan dapat pula dianggap sebagai memori mesin.

• Input pada mesin otomata dianggap sebagai bahasa yang harus dikenali oleh mesin.

• Selanjutnya mesin otomata membuat keputusan yang mengindikasikan apakah input itu diterima atau tidak.

• Sebuah string input diterima bila mencapai state akhir / final state yang digambarkan dengan lingkaran ganda.

Page 12: Teori Bahasa & OTOMATA

C. Hirarki Chomsky

• Tata bahasa (grammar) bisa didefinisikan secara formal sebagai kumpulan dari himpunan-himpunan variabel, simbol-simbol terminal, simbol awal yang dibatasi oleh aturan-aturan produksi.

Page 13: Teori Bahasa & OTOMATA

• Aturan produksi merupakan pusat dari tata bahasa, yang menspesifikasikan bagaimana suatu tata bahasa melakukan transformasi suatu string ke bentuk lainnya.

• Semua aturan produksi dinyatakan dalam bentuk : “ α→β “ ( alpha menghasilkan betha atau alpha menurunkan betha)

• α menyatakan simbol-simbol pada ruas kiri aturan produksi.

• β menyatakan simbol-simbol pada ruas kanan aturan produksi

Page 14: Teori Bahasa & OTOMATA

Penggolongan empat tingkatan bahasa berdasarkan hirarki Comsky dapat dilihat pada tabel berikut :

Page 15: Teori Bahasa & OTOMATA

BahasaBahasa Mesin OtomataMesin Otomata Batasan Aturan Batasan Aturan Produksi.Produksi.

Reguler

Type 3Type 3

Finite State Automata, meliputi :

• DFA

• NFA

α adalah sebuah simbol variabel.

β maksimal memiliki sebuah simbol variabel yang bila ada terletak di posisi paling kanan, boleh tidak ada.

Bebas Konteks (Context Free)

Tipe 2

Push Down Automata α adalah sebuah simbol variabel.

Context Sensitive

Tipe1

Linier Bounded Automata

|α | ≤ |β|

Unrestricted (Phase Structure) Natural Language

Tipe 0

Mesin Turing Tidak ada batasan.

Page 16: Teori Bahasa & OTOMATA

• Simbol variabel / non terminal adalah simbol yang masih bisa diturunkan lagi dan dinyatakan dengan huruf besar.

• Simbol terminal sudah tidak bisa diturunkan lagi, dan dinyatakan dengan huruf kecil.

• Dengan menerapkan aturan produksi, suatu tata bahasa bisa menghasilkan sejumlah string.

• Himpunan semua string adalah bahasa yang didefinisikan oleh tata bahasa tersebut.

Page 17: Teori Bahasa & OTOMATA

Contoh Aturan ProduksiT → a

dibaca “T menghasilkan a“E → T | T + E

dibaca “E menghasilkan T” atau “E menghasilkan T dan E“

Simbol | menyatakan ‘atau’, digunakan untuk mempersingkat penulisan aturan produksi yang mempunyai ruas kiri yang sama.

Page 18: Teori Bahasa & OTOMATA

Tipe 0 /Unrestricted /Natural Language

• Tidak ada batasan pada aturan produksinya.

Misal : Abc → De

ABC → b

Page 19: Teori Bahasa & OTOMATA

Tipe 1/ Conteks Sensitive

• Panjang string pada ruas kiri ≤ panjang string pada ruas kanan |α | ≤ |β|.

Misal :

Ab → DeF

CD → eF

exception : S → ε

Page 20: Teori Bahasa & OTOMATA

Tipe 2 / Bebas Konteks/ Context Free

• Ruas kiri harus tepat satu simbol variabel

Misal :

B → CDeFG

D → BcDe

Page 21: Teori Bahasa & OTOMATA

Tipe 3/Reguler

• Ruas kanan maksimal memiliki sebuah simbol variabel yang terletak di paling kanan, simbol terminal bisa berapa saja/ tak terbatas, tetapi bila terdapat simbol variabel harus terletak paling kanan.

Misal : A → eA → fghA → eHC → D

Page 22: Teori Bahasa & OTOMATA

Catatan :• Aturan produksi seperti :

ε → Abdbukan aturan produksi yang legal, karena simbol ε tidak boleh berada pada ruas kiri

• Aturan produksi yang ruas kirinya hanya memuat simbol terminal saja, seperti :

a → bd

ab → bdbukan aturan produksi yang legal, karena ruas kiri juga harus memuat simbol yang bisa diturunkan.