Deterministic Finite Automata

(DFA)
Non-Deterministic Automata
(NFA)

Pertemuan Ke-4

Sri Handayaningsih, S.T.,
M.T.
Email :
ning_s12@yahoo.com
Teknik Informatika 1

TIU dan TIK
1. Mengetahui perbedaan antara
DFA dan NFA
2. Perbedaan DFA dan NFA
3. Ekuivalensi antar FA
4. Definisi Formal NFA
5. Fungsi transisi NFA
6. Contoh-contoh NFA dengan
inputan string yang diterima dan
ditolak.

2

TEORI BAHASA OTOMATA

DFA FA di dalam (Deterministic menerima input mempuyai tepat Finite satu busur keluar. FA FA dibagi menjadi 2. yaitu : Jenis FA Definisi Bentuk Transisi 1. TEORI BAHASA OTOMATA 3 . Automata) 2. NFA FA di dalam (Non Deterministic menerima input mempuyai lebih Finite Automata) dari satu busur keluar atau tidak punya busur keluar.

Graph Transisi DFA a b q0 q0 q1 q1 q2 q2 q2 q2 q2 4 TEORI BAHASA OTOMATA .

q3} q1 q2 q2 - q3 - 5 TEORI BAHASA OTOMATA . Graph Transisi NFA a q0 {q1.

Ekuivalensi Antar FA Diberikan dua mesin FA M1 dan M2. Masing-masing menerima bahasa L(M1) dan L(M2). Kedua mesin tersebut disebut ekuivalen jika menerima bahasa yang sama yaitu : L(M1) = L(M2) 6 .

TEORI BAHASA OTOMATA .

q1} q0 q1 q1 . Graf Transisi M1 Graf Transisi M2 a a a q0 q1 a q0 q1 NFA M1 DFA M2 a a q0 {q0. q1 q1 n L(M1) = a a n L(M2) = aa 7 TEORI BAHASA OTOMATA .

F Q: Himpunana state. . q2 Inputan alphabet. b : Fungsi Transisi q : 0 State awal F: State akhir 8 TEORI BAHASA OTOMATA . mis : a. . Definisi Formal NFA M Q. q0 . q1. q0 . mis.

Fungsi Transisi q0 . 1 q1 0 q0 q1 0. 1 q2 1 9 TEORI BAHASA OTOMATA .

q2} 0 q0 q1 0.0) {q0 . 1 q2 1 10 TEORI BAHASA OTOMATA . (q1.

(q0 . 1 q2 1 11 TEORI BAHASA OTOMATA . q2} 0 q0 q1 0. ) {q0 .

1) 0 q0 q1 0. 1 q2 1 12 TEORI BAHASA OTOMATA . (q2 .

Nondeterministic Finite Automaton (NFA) Alphabet = {a} a q1 q2 a q 0 a q3 13 TEORI BAHASA OTOMATA .

Alphabet = {a} Dua Pilihan q1 a q2 a q 0 a q3 14 TEORI BAHASA OTOMATA .

Alphabet = {a} Dua Pilihan a Tdk ada q1 q2 a Transisi q 0 a q3 Tdk ada Transisi 15 TEORI BAHASA OTOMATA .

Pilihan Pertama a a a q1 q2 a q 0 a q3 16 TEORI BAHASA OTOMATA .

First Choice a a a q1 q2 a q 0 a q3 17 TEORI BAHASA OTOMATA .

First Choice a a a q1 q2 a q 0 a q3 18 TEORI BAHASA OTOMATA .

Pilihan Pertama a a Inputan sudah selesai a q1 q2 diterima a q 0 a q3 19 TEORI BAHASA OTOMATA .

Pilihan Kedua a a a q1 q2 a q 0 a q3 20 TEORI BAHASA OTOMATA .

Pilihan Kedua a a a q1 q2 a q 0 a q3 21 TEORI BAHASA OTOMATA .

Pilihan Kedua a a a q1 q2 a q0 a Tdk ada transisi: q3 automata error 22 TEORI BAHASA OTOMATA .

Pilihan Kedua a a Inputan belum selesai a q1 q2 a q 0 a q 3 “ditolak” 23 TEORI BAHASA OTOMATA .

Sebuah NFA menerima string. jika: Kamputasi pada NFA menerima string Komputasi adalah : Seluruh inputan dimasukkan dan automata dimulai dari state awal menuju ke state akhir 24 TEORI BAHASA OTOMATA .

Contoh 1 Apakah aa diterima oleh NFA: pilihan 1 pilihan 2 “diterima” q aq q1 a q2 1 2 a a q0 a q a 0 q3 q “ditolak” 3 Diagram transisi yang dipilih adalah pilihan 1. Karena komputasi dapat diterima aa 25 TEORI BAHASA OTOMATA .

Contoh yang Tidak Diterima a a q1 q2 a q 0 a q3 26 TEORI BAHASA OTOMATA .

Pilihan Pertama a a q1 q2 a q 0 a q3 27 TEORI BAHASA OTOMATA .

Pilihan Pertama a “ditolak” a q1 q2 a q 0 a q3 28 TEORI BAHASA OTOMATA .

Pilihan Kedua a a q1 q2 a q 0 a q3 29 TEORI BAHASA OTOMATA .

Pilihan Kedua a a q1 q2 a q 0 a q3 30 TEORI BAHASA OTOMATA .

Pilihan Kedua a a q1 q2 a q 0 a q3 “ditolak” 31 TEORI BAHASA OTOMATA .

jika: Tidak ada komputasi pada NFA yang menerima string.Sebuah NFA Menolak string. Untuk setiap komputasi: • seluruh inputan selesai dimasukkan dan automata tidak sampai pada State akhir. ATAU •Inputan belum selesai dimasukkan 32 TEORI BAHASA OTOMATA .

Contoh 2 Apakah a ditolak oleh NFA: “ditolak ” q aq 1 2 q1 q2 a a q0 a q a 0 q3 “ditolak” q3 Seluruh komputasi yang mungkin “ditolak” 33 TEORI BAHASA OTOMATA .

Contoh Yang Ditolak a a a a q1 q2 a q 0 a q3 34 TEORI BAHASA OTOMATA .

Pilihan Pertama a a a a q1 q2 a q 0 a q3 35 TEORI BAHASA OTOMATA .

Pilihan Pertama a a a a q1 q2 a a Tidak ada transisi: q0 q3 Automata error 36 TEORI BAHASA OTOMATA .

Pilihan Pertama a a a Inputan tidak terselesaikan a q1 q2 “ditolak” a q 0 a q3 37 TEORI BAHASA OTOMATA .

Pilihan Kedua a a a a q1 q2 a q 0 a q3 38 TEORI BAHASA OTOMATA .

Pilihan Kedua a a a a q1 q2 a q 0 a q3 39 TEORI BAHASA OTOMATA .

Pilihan Kedua a a a a q1 q2 a q0 a Tidak ada transisi: q3 Automata error 40 TEORI BAHASA OTOMATA .

Pilihan Kedua a a a Inputan tidak terselesaikan a q1 q2 a q 0 a q 3 “ditolak” 41 TEORI BAHASA OTOMATA .

aaa Ditolak oleh NFA “ditolak ” q aq q1 a q2 1 2 a a q0 a q a 0 q3 “ditolak” q3 Seluruh komputasi yang mungkin “ditolak” 42 TEORI BAHASA OTOMATA .

L(M)? a q1 q2 a q 0 a q3 43 TEORI BAHASA OTOMATA .

Bahasa yang menerima: L {aa} a q1 q2 a q 0 a q3 44 TEORI BAHASA OTOMATA .

Pustaka 1. Hopcroft John E. WS 2006/07. McGraw-Hill Internatioanal edition. 1998 6. Teknik Informatika UAD. Dulimarta Hans. Linz Peter. Magister Teknik Informatika ITB. 1990 5. Tedy Setiadi. 2005 2. Catatan Kuliah Matematika Informatika. Diktat Teori Bahasa dan Otomata.1991 4.. Jeffrey D. Martin C. 2rd. John. Rajeev Motwani. and Computation.2000 3. Sudiana. Languages. Ullman. DC Heath and Company. Addison-Wesley. Introduction to Languages and Theory of Computation. Uni Stuttgart.Introduction to Formal Languages & Automata. IMS. Introduction to Automata Theory. Slides based on RPI CSCI 2400 45 . Hinrich Schütze.

TEORI BAHASA OTOMATA .