1 / 32

TEORI BAHASA DAN OTOMATA

TEORI BAHASA DAN OTOMATA. POKOK BAHASAN PENDAHULUAN OTOMATA KEADAN HINGGA ( FINITE STATE AUTOMATA ) 3. EKIVALENDI DETERMINISTIK OTOMATA DENGAN NON-DETERMINISTIK OTOMATA 4. NON-DETERMINISTIK OTOMATA DENGAN -MOVE EKSPRESI REGULER ATURAN PRODUKSI OTOMATA KEADAAN HINGGA

Download Presentation

TEORI BAHASA DAN OTOMATA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TEORI BAHASA DAN OTOMATA

  2. POKOK BAHASAN PENDAHULUAN OTOMATA KEADAN HINGGA (FINITE STATE AUTOMATA) 3. EKIVALENDI DETERMINISTIK OTOMATA DENGAN NON-DETERMINISTIK OTOMATA 4. NON-DETERMINISTIK OTOMATA DENGAN -MOVE EKSPRESI REGULER ATURAN PRODUKSI OTOMATA KEADAAN HINGGA 7. OTOMATA KEADAAN HINGGA DENGAN OUTPUT

  3. POKOK BAHASAN ( lanjutan) 8. POHON PENURUNAN 9. PENYEDERHAAN TATA BAHASA BEBAS KONTEKS 10. BENTUK NORMAL CHOMSKY 11. PENGHILANGAN REKURSIF KIRI 12. BENTUK NORMAL GREIBACH 13. PUSH DOWN AUTOMATA 14. MESIN TURING

  4. BUKU WAJIB TEORI BAHASA DAN OTOMATA FIRRAR UTDIRARTATMO BUKU PENDUKUNG TEORI BAHASA DAN OTOMATA JOHN E. HOPCROFT

  5. KONSEP BAHASA

  6. TeoribahasadanOtomatamerupakan model gagasandasarmengenaikomputasi Bahasaalami (natural language) didefinisikansebagaikumpulankata-katadanmetodepenggabungankata-kata yang digunakandandimengertisuatukomunitas. Bahasa formal (formal language) digunakanuntukmembentukbahasaalamidanuntukberkomunikasidengankomputer Otomataadalahmesinabstrakuntukmemodelkan komputer yang menerimainput, menghasilkanoutput, memilikimemorisementaradanmampu mentransformasikaninputkeoutput.

  7. 1.1 AbjadatauAlfabet (Alpabet) Abjad , yang dilambangkandengansimbol, adalahhimpunanberhinggatakkosongdari simbol-simbol. Contoh 1.1 Alfabetbineradalah  = { 0, 1} Alfabethurufkeciladalah  = {a, b, c, … , z} Alfabetbilanganasli < 9 adalah  = {1, 2, 3, …, 8} 1.2 Untai (String) Untai, kadang-kadangdisebutkataatauword, adalahbarisanberhinggasimbol-simbol yang berasaldarisuatualfabet.

  8. Contoh 1.2 • 1011adalahuntai yang berasaldarialfabet •  = { 0, 1} • stmik, kelas, sttrqwadalahuntai yang berasaldari • alfabet  = {a, b, c, …, z} • 200929001adalahuntai yang berasaldarialfabet • = {1, 2, 3, 4, … , 9} • Untaikosong • Untaikosongadalahuntai yang tidakmempunyaisimbol yang berasaldarialfabet. • Untaikosong (null string) dilambangdengan. •  adalahuntai yang berasaldarisembarangalfabet

  9. Panjanguntai Panjanguntaiadalahjumlahsimbol yang membentuknya. Contoh 1.3 Panjanguntai1011, ditulis |1011|= 4 Panjanguntaisttrqw, , ditulis |sttrqw|= 6 Panjanguntai , ditulis |  |= 0

  10. PangkatAlfabet Himpunanseluruhuntai yang berasaldarialfabet tertentudapatdinyatakandalamnotasieksponensial. kdidefinisikansebagaihimpunanuntaidengan panjang k, ygmasing-masingsimbolnyaberasaldari . * (Kleen Star) didefinisikansebagaihimpunanseluruhuntaimulaidariuntaikosongsampaiuntaidenganpanjangtertentu. * = 0 + 1 + 2 + 3 + … = 0 1 2 3… +didefinisikansebagaihimpunanseluruhuntai dengantanpauntaikosong (null string) + = 1 + 2 + 3 + … = 1 2 3…

  11. Contoh 1.5 Jika  = { 0, 1}, maka: 0 = {  } 1 = {0, 1} 2 = {00, 01, 10, 11} 3 = {000, 001, 010, 011, 100, 101, 110, 111} * = { , 0, 1, 00, 01, 10, 11, 000, …} + = {0, 1, 00, 01, 10, 11, 000, …}

  12. Perbedaanantara dan kadalah: • adalahabjad yang merupakanhimpunantakkosong • yang terdiridarisimbol-simbol. • kadalahhimpunanuntaidenganpanjangmasing-masinguntaiadalah k. Simboldarisetiapuntaipada k berasaldari  • Rentenganuntai (String Concatenation) • Misal w1dan w2adalahuntai. Rentenganuntai • w1 dan w1 menghasilkanuntai w1 w2

  13. Contoh 1.6 Misal w1 = xx w2 = xyx, maka w1 w2 = xxxyx w1 = aab w2 = abb, maka w1 w2 = aababb w1 =  w2 = xy, maka w1 w2 = xy w1 = abba w2 = , maka w1 w2 = abba w1 =  w2 = , maka w1 w2 =  1.3 Bahasa Formal (Formal Language) Bahasa formal adalahhimpunan yang mempunyai anggota-anggotaberasaldari*. Jika adalahalfabet, dan L  *maka L adalahbahasa. Untai-untai yang membentuksuatubahasaberasaldarisuatualfabet .

  14. Contoh 1.7 • Bahasapemrograman C++, atau Java, ataulainnyatermasukbahasa formal yang berasaldarialfabet • = {a, b, c, … , z, A, B, C, …, Z, 0, 1, 2, 9,< , >, =, • +, – , *, / , ( , ) , . , & , ! , % , ^ , { , } , | , ‘ , : , ;} • Contoh 1.8 • Berikutadalahbeberapacontoh lain bahasa formal. • Himpunanseluruhuntai yang terdiridari n • buah 0 dandiikutioleh n buah 1, untuk n  0 adalah L = {, 01, 0011, 000111, …} • b) Himpunanseluruhuntaiterdiridarijumlahsimbol 0 dan 1 yang samaadalah • L = {, 01, 0011, 0101, 1010, 1100, 0110, …}

  15. c) Himpunanbilanganbiner yang nilainyasamadenganbilangan prima adalah L = {10, 11, 101, 111, 1011, 1101, …} d) *adalahbahasaatasseluruhalfabet  e)  adalahbahasakosongmerupakanbahasaatassembarangalfabet f) {} adalahbahasa yang hanyaterdiridariuntaikosong, jugamerupakanbahasaatassembarangalfabet

  16. Perhatikanbahwa: •  {} • tidakmemilikiuntai • {} memilikisatuuntai • Bahasadapatdidefinisikandenganmenggunakannotasipembentukhimpunan (set-builder notation). • L = {w| sifat-sifat w} • Dibaca: L adalahhimpunanuntai w sedemikianrupa, sehinggamemenuhisifat-sifat w

  17. Contoh 1.9 L = {w | w terdiridarisimbol-simbol 0 dan 1 yang jumlahnyasama} b) L = { w| w adalahbilanganbulatbiner yang nilainya prima} c) L = {w| w adalah program C++ yang benarsintaksnya}

  18. 1.4 OPERASI – OPERASI PADA BAHASA a) Perangkaian (Concatenation) Misal L1dan L2merupakanbahasa-bahasaberdasarkanalfabet. Perangkaian L1dan L2ditulis: L1 . L2 = {w1.w2 | w1 ∈ L1 dan w2 ∈ L2 } Contoh 1.10 Diketahui L1 = {ayam, kucing} dan B {gajah}, Maka L1 . L2 = {ayamgajah, ayamgajah}

  19. b) Eksponensiasi (Exponentiation) Misalkan L merupakansuatubahasaberdasarkanalfabetΣ. Contoh 1.11 Jika L = {ab} berdasarkanalfabetΣ , maka: Lo = {} L1 = L = {ab} L2 = L.L1 = {abab} L3 = L.L2 = {ababab}

  20. c) Gabungan (Union) Misalkan L1dan L2adalahbahasa-bahasaberdasarkansuatuabjadΣ. Gabungandari L1dan L2 , ditulis L1 ∪ L2,terdiridarisemuauntai yang munculsekurang-kurangnyasekalidalam L1dan L2 . L1 ∪ L2 = {x|x ∈ L1 atau x ∈ L2} Contoh 1.12 Misal Σ = {0,1} L1 = {ε,0,1,10,11} L2 = {ε,1,0110,11010} L1 ∪ L2 = {ε,0,1,10,11,0110,11010}

  21. d) Irisan (Intersection) Misalkan L1dan L2adalahbahasa-bahasaberdasarkansuatuabjadΣ. Irisandari L1dan L2 , ditulis L1  L2,terdiridarisemuauntai yang munculbaikdi L1 maupundi L2 . L1 L2 = {x|x ∈ L1 dan x ∈ L2} Contoh 1.13 Misal Σ = {0,1} L1 = {ε,0,1,10,11} L2 = {ε,1,0110,11010} L1 L2 = {ε,1}

  22. e) Sub Bahasa Misalkan L1 dan L2adalahbahasa-bahasaberdasarkansuatuabjadΣ danjikasemuauntaidi L1 jugamerupakanuntaidi L2, maka L1 disebutsebuah sub bahasadari L2 . Notasi L1 ⊆ L2 Contoh 1.14 Jika L1 = {a,aa,aaa} dan L2 = {a,aa,aaa,aaaa,aaaaa} maka A ⊆ B f) Equal (Sama) Duabuahbahasa L1dan L2dikatakansamajikakeduabahasatersebutsecarapersismempunyaiuntai-untai yang sama, artinyajikasebagaihimpunan-himpunankeduanyapersissama. Notasi : L1 = L2

  23. g) Star Closure dan Plus Closure • Jika L adalahsebuahbahasaberdasarkansuatuabjadΣ, didefinisikan: • • Star Closure dari L* • • Plus Closure dari L+

  24. Contoh 1.15 Jika L = {a, b} Maka: L0 = {  } L1 = L = {a, b} L2 = L.L1 = {aa, ab, ba, bb} L3 = L2.L = {aaa, aab, aba, abb, baa, bab, aab, bbb} L* = L0 + L1 + L2 + L3 + … L* = {, a, b, aa, ab, ba, bb, aaa, aab, aba, abb, baa,bab,aab,bbb. …} L+ = L1 + L2 + L3 + … L+ = {a, b, aa, ab, ba, bb, aaa, aab, aba, abb, baa,bab,aab,bbb. …}

  25. 1.5 Hirarki Chomsky Tata bahasa (grammar) didefinisikansebagai kumpulandarihimpunan-himpunanvariabel, simbol-simbol terminal, simbolawal, yang dibatasiolehaturan-aturanproduksi. Tahun 1959 Noam Chomsky melakukan Penggolongantingkatanbahasamenjadi 4 dan disebutHirarki Chomsky.

  26. Hirarki Chomsky

  27. Hirarki Chomsky

  28. Aturanproduksidinyatakandalambentuk  , • dibaca,  menghasilkan  atau  menghasilkan  • menyatakansimbol-simbolpadaruaskiri • aturanproduksi (sebelahkiritanda  ) •  menyatakansimbol-simbolpadaruaskanan • aturanproduksi (sebelahkanantanda  ) • Simbol-simbolpadaaturanproduksidapatberupa • simbol terminal atausimbol non-terminal/variabel • Simbol terminal adalahsimbol yang tidakdapat • diturunkanlagi • Simbol non-terminal adalahsimbol yang masihdapatditurunkan

  29. Simbol terminal biasanyamenggunakanhurufkecil, seperti, a, b, c, … Simbol non-terminal biasanyamenggunakanhurufbesarseperti A, B, C, … Aturanproduksi: T  a (dibaca “T menghasilkan a”) E  TT+E (dibaca “E menghasilkan T atau E menghasilkan T + E”) Simbol “” dibaca ‘atau’; digunakanuntukmempersingkataturanproduksi yang mempunyai ruaskiri yang sama.

  30. Jadipenulisanaturanproduksi E  TT+E adalahsingkatandariduabuahaturtanproduksi: E  T E  T+E Contoh-contohaturanproduksi (lihattabelberikut)

  31. KeterkaitanbahasapadaHirarkiChomski unrestricted kontekssensitif bebaskonteks regular

More Related