Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

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

Presentasi serupa


Presentasi berjudul: "Session 5 Finite Automata Theory of Languages and Automata (KOM208) Credits: 3(3-0)"— Transcript presentasi:

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

2 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

3 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 - 

4 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

5 Contoh 9 Sebuah  -NFA menerima bilangan desimal yang terdiri dari: 1.Tanda  atau  (optional) 2.Sebuah string dari digit-digit 3.Sebuah titik desimal 4.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.

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

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

8 Contoh 10  -NFA dalam Contoh 9 direpresentasikan secara formal sebagai berikut : E = ({q 0, q 1, q 2, q 3, q 4, q 5 }, {., +, , 0, 1,...,9}, , q 0, {q 5 }) dimana  didefinisikan dalam tabel transisi berikut:  +, .0,1,2,...,9 q0q0 {q 1 }  q1q1  {q 2 }{q 1, q 4 } q2q2  {q 3 } q3q3 {q 5 }  {q 3 } q4q4   q5q5 

9 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 .

10 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,  ).

11 Contoh 11 Untuk  -NFA pada Contoh 9, setiap state adalah  - closure-nya sendiri, kecuali –ECLOSE(q 0 ) = {q 0, q 1 } –ECLOSE(q 3 ) = {q 3, q 5 } Perhatikan bahwa hanya dua transisi , salah satu yang menambahkan q 1 ke ECLOSE(q 0 ) dan yang lain menambahkan q 5 ke ECLOSE(q 3 ).

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

13 Fungsi Transisi yang Diperluas dan Bahasa untuk  -NFA Anggaplah E = (Q, , , q 0, 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 .

14 Menghitung 1.Misal {p 1, p 2,..., p k } 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.

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

16 Menghitung 3. 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.

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

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

19 Mengeliminasi Transisi -  (1) Misalkan E = (Q E, ,  E, q 0, F E ). Maka DFA yang ekuivalen D = (Q D, ,  D, q 0, F D ) didefinisikan sebagai berikut: 1.QD adalah himpunan dari subset-subset dari Q E. –Akan ditentukan bahwa semua state yang dapat diakses dari D adalah subset-subset  -closed dari Q E, dengan kata lain, himpunan-himpunan S  Q E 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.

20 Mengeliminasi Transisi -  (2) 2.q D = ECLOSE(q 0 ), 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. 3.F D adalah himpunan-himpunan dari state yang mengandung sedikitnya satu accepting state dari E. Dengan kata lain, F D = {S| S adalah dalam Q D dan S  F E   }.

21 Mengeliminasi Transisi -  (3) 4.  D (S, a) dihitung sebagai berikut, untuk semua a  dan himpunan-himpunan S  Q D a.Misal S = {p 1, p 2,..., p k } b.Hitung Misalkan himpunan tersebut adalah {r 1, r 2,..., r m }. c.Maka

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

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


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

Presentasi serupa


Iklan oleh Google