Pertemuan 4 Non Deterministic Finite Automaton (NFA) Matakuliah : T0162/Teori Bahasa dan Automata Tahun : 2009 Pertemuan 4 Non Deterministic Finite Automaton (NFA)
<< TIK-99 >> << TIK-99>> Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : << TIK-99 >> << TIK-99>>
Outline Materi Materi 1 Materi 2 Materi 3 Materi 4 Materi 5
Non Deterministic Finite Automata (NFA) Terdapat lebih dari satu transisi untuk input yang sama dari suatu state. Contoh :
Non Deterministic Finite Automaton (NFA) String w diterima : Bila ada suatu path berlabel w dari start state ke salah satu final state, maka w diterima. Contoh : Input : 01001
Non Deterministic Finite Automaton (NFA) Catatan : mungkin ada lebih dari satu path yang berlabel w tapi, harus ada salah satu path yang berakhir di final state, agar w diterima oleh NFA.
Non Deterministic Finite Automaton (NFA) Definisi Formal NFA : M = (Q, , , q0, F) dimana: Q, , q0, F : seperti pada FA : Q 2Q (q,a) : himpunan state p sehingga ada transisi berlabel a dari q ke p.
Non Deterministic Finite Automaton (NFA) NFA di atas
Non Deterministic Finite Automaton (NFA) Transisi atas String : : Q * 2Q 1. (q,) = {q} 2. (q,wa) = {pr dalam (q,w), p dalam (r,a)} : 2Q * 2Q : (P,w) = {q,w}, P Q
Non Deterministic Finite Automaton (NFA) Catatan : untuk input w = a (q,a) = (q,a) Language Accepted / diterima : NFA M = (Q, , , q0, F), L (M) = {w (q0,w) F}
Non Deterministic Finite Automaton (NFA) Contoh : NFA di atas dengan input : 01001 (q0,0) = {q0,q3} (q0,01) = ( (q0,0),1) = ({q0,q3},1) = (q0,1) (q3,1) = {q0,q1} (q0,010) = {q0,q3} (q0,0100) = {q0,q3,q4} (q0,01001) = {q0,q1,q4}
KONVERSI NFA MENJADI DFA Theorem : Bila L adalah L(M) untuk suatu NFA, maka L diterima suatu DFA. Setiap NFA M = (Q, , , qo, F) dapat dicari DFA ekuivalennya M1 = (Q1, 1, 1, q1o, F1), yaitu yang mempunyai language yang sama.
KONVERSI NFA MENJADI DFA Dimana : Q1 = Q = Himpunan subset dari Q 1 = q1o = qo 1 = 1([q1, q2, …, qi] a) = [p1, p2, …, pj] jika dan hanya jika ({q1, q2, …, qi}, a) = {p1, p2,…, pj} F1 = Dibentuk dari seluruh state dalam Q1 yang mengandung salah satu state dalam F
(q1, 0)= ; (q1, 1) = { q0, q1} Konversi NFA ke DFA Contoh : Ubah NFA berikut menjadi suatu DFA NFA M = ({q0, q1}, {0, 1}, , q0, { q1}) Dimana fungsi transisi : (q0, 0)={ q0, q1}; (q0, 1) = { q1 } (q1, 0)= ; (q1, 1) = { q0, q1}
Fungsi transisi pada DFA: Diagram transisi DFA: Konversi NFA ke DFA Fungsi transisi pada DFA: Diagram transisi DFA: STATE Input 0 Input 1 {q0} {q0,q1} {q1} 1 {q0,q1} {q0} {q0} 1 {q1} 0,1
<< CLOSING>>