Session 5 Finite Automata

Slides:



Advertisements
Presentasi serupa
Teori Bahasa dan Automata
Advertisements

Pertemuan 6 Minimisasi DFA
Review Materi Widodo.com
Penggabungan dan Penyambungan
Pertemuan 7 FINITE AUTOMATA DENGAN OUTPUT
Teori Bahasa dan Automata
Teori Bahasa dan Otomata 2 sks
Ekuivalensi NDFA ke DFA dan NDFA dengan E-move
Pertemuan 4 Finite Automata
Pertemuan 14 Pengantar ke Mesin Turing
Yenni Astuti Version Week-6NFA ke DFA Mengapa NFA ke DFA? NFA lebih mudah dimengerti dan didesain, dibanding DFA. Namun dalam prakteknya, DFA lebih.
Pertemuan 6 Ekspresi dan Bahasa Regular
Session 10 Context-free grammar
Pertemuan 12 Bentuk Normal untuk Grammar Bebas Konteks
Pertemuan 9 Sifat-sifat Bahasa Regular
SUATU FINITE STATE AUTOMATA
Pertemuan 11 PUSH DOWN AUTOMATA (PDA)
Oleh: BAGUS ADHI KUSUMA, ST
MODUL 9 -move Gambar 20. Mesin NFA HUBUNGAN ANTARA
-move Gambar 20. Mesin NFA HUBUNGAN ANTARA
Pertemuan 3 Konversi NFA - DFA dan Konversi ε-NFA - DFA
B. Deterministic Finite Automata(DFA) (Otomata Berhingga Deterministik) Pada DFA, dari suatu “state ada tepat satu state berikutnya untuk setiap simbol.
Session 11 Parse Tree, Application of Parse Tree, and Ambiguity
Session 12 Pushdown Automata
Pertemuan 4 Non Deterministic Finite Automaton (NFA)
Pertemuan 2 Konsep dalam Teori Otomata dan Pembuktian Formal
Ekivalensi -move pada Non Deterministik FSO ke Deterministik FSO
KONSEP DASAR TEORI BAHASA DAN OTOMATA
BAB II FINITE STATE AUTOMATA.
Pertemuan 3 Finite Automata
Pertemuan 2 FINITE AUTOMATA (DFA & NFA)‏
OTOMATA HINGGA.
Session 7 Regular Expression and Language
BAB II FINITE STATE AUTOMATA.
Teori Bahasa dan Otomata 2 sks
TEORI BAHASA DAN AUTOMATA
BAB III EKIVALENSI DFA KE NFA
NON DETERMINISTIC FINITE AUTOMATA DENGAN ε - MOVE
BAB II FINITE STATE AUTOMATA.
BAB II FINITE STATE AUTOMATA.
Pertemuan 3 FINITE AUTOMATA
PUSH DOWN AUTOMATA ( PDA )
NON DETERMINISTIC FINITE AUTOMATA DENGAN ε - MOVE
2. Mesin Turing (Bagian 2) IF5110 Teori Komputasi Oleh: Rinaldi Munir
Non Deterministic Finite Automata dengan є – Move
NDFA dengan ε-Move CSG3D3 | Teori Komputasi Agung Toto Wibowo
FINITE STATE AUTOMATA (FSA)
Teori-Bahasa-dan-Otomata
OTOMATA DAN TEORI BAHASA FORMAL
FINITE STATE AUTOMATA (FSA)
Teori Bahasa dan Automata
Teori-Bahasa-dan-Otomata
OTOMATA DAN TEORI BAHASA FORMAL
NON DETERMINISTIC FINITE AUTOMATA DENGAN ε - MOVE
OTOMATA DAN TEORI BAHASA FORMAL
BAB II FINITE STATE AUTOMATA.
NON DETERMINISTIC FINITE AUTOMATA DENGAN ε - MOVE
Pertemuan 6 KONVERSI NFA MENJADI DFA Lanjutan..
Teori-Bahasa-dan-Otomata
Finite State Automata ♦ model matematika yang dapat menerima input dan mengeluarkan output ♦ Memiliki state yang berhingga banyaknya dan dapat berpindah.
Otomata & Teori Bahasa ( Week 4 )
Pertemuan 4 Non Deterministic Finite Automaton (NFA)
Ekuivalensi NFA KE DFA *YANI*.
2. Mesin Turing (Bagian 2) IF5110 Teori Komputasi Oleh: Rinaldi Munir
Teori Bahasa dan Automata
Pertemuan4.
Tinjauan Instruksional Khusus:Mahasiswa akan dapat menjelaskan cara kerja Deterministic Finite Automata (DFA),Non-Deterministic Finite Automata (NDFA),Non.
Otomata & Teori Bahasa Finite State Automata: - Non Deterministic Finite Automata dengan -move - Penggabungan dan Konkatenasi FSA.
Otomata & Teori Bahasa ( Week 4 )
Otomata & Teori Bahasa ( Week 4 )
Transcript presentasi:

Session 5 Finite Automata Theory of Languages and Automata (KOM208) Credits: 3(3-0)

TIK dan Waktu Penyajian Tinjauan Instruksional Khusus: Mahasiswa akan dapat menjelaskan cara kerja Deterministic Finite Automata (DFA), Non-Deterministic Finite Automata (NDFA), Non deterministic Finite Automata (NFA) dengan transisi ε. Waktu penyajian: 3 x 150 menit

Subtopik DFA: Definisi DFA, Bagimana DFA memproses string, Notasi-notasi untuk DFA, Fungsi transisi yang diperluas, Bahasa dari DFA NFA: Definisi NFA, Bagimana NFA memproses string, Fungsi transisi yang diperluas, Bahasa dari NFA, Ekuivalensi DFA dan NFA ε-NFA: Penggunaan transisi-ε, Notasi formal untuk ε-NFA, Epsilon-Closure, Fungsi transisi yang diperluas dan bahasa untuk ε-NFA, Mengeliminasi Transisi -

Finite Automata dengan Transisi- FA dengan transisi- adalah FA yang memungkinkan sebuah transisi pada  (string kosong). Dengan kata lain, sebuah NFA dimungkinkan membuat transisi tanpa menerima sebuah simbol input. NFA dengan transisi- dinotasikan -NFA

Contoh 9 Sebuah -NFA menerima bilangan desimal yang terdiri dari: Tanda  atau  (optional) Sebuah string dari digit-digit Sebuah titik desimal Sebuah string yang lain dari digit-digit. String dari digit-digit ini atau string (2) dapat kosong, tetapi sedikitnya satu dari 2 string dari digit harus tak kosong.

Contoh 9 (lanjutan) Diagram transisi -NFA yang dimaksud:

Notasi Formal untuk sebuah -NFA Secara formal, kita menyatakan -NFA A dengan A = (Q, , , q0, F) dimana semua elemen merepresentasikan hal yang sama dengan NFA, kecuali adalah fungsi transisi dengan argumen sebagai berikut: Sebuah state dalam Q, dan Sebuah elemen dari   {}, yaitu simbol input atau . Simbol untuk string kosong, , tak dapat manjadi anggota dari , sehingga tidak ada hasil-hasil yang membingungkan.

Contoh 10 -NFA dalam Contoh 9 direpresentasikan secara formal sebagai berikut : E = ({q0, q1, q2, q3, q4, q5}, {., +, , 0, 1, ...,9}, , q0 , {q5}) dimana  didefinisikan dalam tabel transisi berikut:   +, . 0,1,2,...,9 q0 {q1}  q1 {q2} {q1, q4} q2 {q3} q3 {q5} q4 q5

Epsilon-Closure (ECLOSE) (1) ECLOSE digunakan dalam menentukan fungsi transisi yang diperluas untuk -NFA. ECLOSE dari state q ditentukan dengan mengikuti semua transisi yang keluar dari q yang diberi label . Ketika mendapat state lain, dengan mengikuti  kita mengikuti transisi  keluar dari state-state tersebut, dan seterusnya, akhirnya menemukan setiap state yang dapat dicapai dari q sepanjang path yang memiliki arc-arc yang semuanya diberi label .

Epsilon-Closure (ECLOSE) (2) Definisi formal -closure ECLOSE(q) Basis: state q adalah dalam ECLOSE(q) Induksi: Jika state p adalah dalam ECLOSE(q), dan terdapat sebuah transisi dari state p ke state r yang diberi label , maka r adalah dalam ECLOSE(q). Dapat dinyatakan bahwa jika  adalah fungsi transisi dari -NFA, dan p adalah dalam ECLOSE(q), maka ECLOSE(q) juga mengandung semua state dalam (p, ).

Contoh 11 Untuk -NFA pada Contoh 9, setiap state adalah -closure-nya sendiri, kecuali ECLOSE(q0) = {q0, q1} ECLOSE(q3) = {q3, q5} Perhatikan bahwa hanya dua transisi , salah satu yang menambahkan q1 ke ECLOSE(q0) dan yang lain menambahkan q5 ke ECLOSE(q3).

Contoh lain Untuk -NFA sebagai berikut ECLOSE(1) = {1,2,3,4,6}

Fungsi Transisi yang Diperluas dan Bahasa untuk -NFA Anggaplah E = (Q, , , q0, F) adalah -NFA. Definisi untuk fungsi transisi yang diperluas ( ) pada -NFA adalah Basis: bahwa, jika label dari path adalah , maka kita hanya dapat mengikuti arc perluasan yang diberi label  dari state q. Induksi: Anggap bahwa w adalah bentuk xa dimana a adalah simbol terakhir dari w. Perhatikan bahwa a adalah anggota dari ; a bukanlah  yang tidak dalam .

Menghitung Misal {p1, p2, ..., pk} adalah . Bahwa pi untuk semua i adalah state-state dan hanya state-state yang dapat dicapai dari q mengikuti path yang diberi label x. Path ini dapat berakhir dengan 1 atau lebih transisi yang diberi label  dan juga dapat memiliki transisi-transisi  yang lain.

Menghitung Misalkan adalah himpunan {r1, r2, ..., rm}. Artinya bahwa ikuti semua transisi yang diberi label a dari state-state yang dapat dicapai dari q sepanjang path yang diberi label x. rj adalah state-state yang dapat dicapai dari q sepanjang path yang diberi label w. State-state tambahan yang dapat dicapai ditemukan dari rj dengan mengikuti arc-arc yang diberi label  pada langkah (3) berikut.

Menghitung Langkah closure tambahan ini meliputi semua path dari q yang diberi label w, dengan mempertimbangkan kemungkinan bahwa terdapat arc-arc tambahan berlabel  yang dapat kita ikuti setelah membuat sebuah transisi pada simbol final a.

Contoh 12 Karena Maka 5.6 diterima oleh -NFA pada Contoh 9.

Bahasa dari sebuah -NFA Bahasa dari sebuah -NFA E = (Q, , , q0, F), adalah

Mengeliminasi Transisi - (1) Misalkan E = (QE, , E, q0, FE). Maka DFA yang ekuivalen D = (QD, , D, q0, FD) didefinisikan sebagai berikut: QD adalah himpunan dari subset-subset dari QE. Akan ditentukan bahwa semua state yang dapat diakses dari D adalah subset-subset -closed dari QE, dengan kata lain, himpunan-himpunan S  QE sedemikian sehingga S = ECLOSE(S). Himpunan-himpunan -closed dari state-state S adalah himpunan-himpunan sedemikian sehingga suatu transisi- yang keluar dari satu state dalam S menuju ke sebuah state yang juga dalam S.  adalah himpunan -closed.

Mengeliminasi Transisi - (2) qD = ECLOSE(q0), yaitu kita mendapatkan start state dari D dengan menutup himpunan yang mengandung hanya start state dari E. Hal ini berbeda dengan konstruksi start state dalam NFA. FD adalah himpunan-himpunan dari state yang mengandung sedikitnya satu accepting state dari E. Dengan kata lain, FD = {S| S adalah dalam QD dan SFE  }.

Mengeliminasi Transisi - (3) D(S, a) dihitung sebagai berikut, untuk semua a dan himpunan-himpunan S  QD Misal S = {p1, p2, ..., pk} Hitung Misalkan himpunan tersebut adalah {r1, r2, ..., rm}. Maka

Contoh 13 Diperoleh DFA yang mengeliminasi transisi  dari NFA pada Contoh 9:

Daftar Pustaka John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman. 2001. Introduction to Automata Theory, Languange, and Computation. Edisi ke-2. Addison-Wesley.