DFA Teori Bahasa dan Automata 1
DFA DFA: Deterministic Finite Automata Atau Automata Hingga Deterministik (AHD) Merupakan salah satu entuk dari Finite Automata Finite Automata merupakan salah satu dari mesin automata. FA tidak memiliki memory 2
Deterministic Finite Automata (DFA) Input Tape String Output Finite Automaton Terima atau Tolak 3
Graf Transisi a, a a a a a, q3 q4 State awal State penerima state transisi 4
Alfaet { a, } a, a a a a a, q3 q4 Untuk setiap state, akan ada transisi untuk setiap simol dalam alfaet 5
Kepala tape a Input Tape a Konfigurasi awal Input String a, q 0 a a a a a, q3 q4 State awal 6
Memaca input a a a, a a a a a, q3 q4 7
a a a, a a a a a, q3 q4 8
a a a, a a a a a, q3 q4 9
Input selesai diaca a a a, a, a a a a terima q3 q4 State yang paling terakhir menentukan hasil output 10
Kasus ditolak a a Input String a, q 0 a a a a a, q3 q4 11
a a a, a a a a a, q3 q4 12
a a a, a a a a a, q3 q4 13
Input finished a a a, a a a a tolak a, q3 q4 State yang paling terakhir menentukan hasil output 14
Kasus penolakan yang lain Input tape kosong () Input selesai (tidak ada simol diaca) a, q 0 a a a a a, q3 q4 tolak 15
Automaton ini hanya menerima satu string Jadi ahasa yang diterima: L aa a, a a a a a, q3 q4 16
Untuk menerima suatu string: semua input harus erhasil diaca dan state terakhir adalah state penerima Untuk menolak suatu string: semua input harus erhasil diaca dan state terakhir ukanlah state penerima 17
L, a, Contoh lain (1) aa a, a a a a a, q3 q4 State penerima State penerima State penerima 18
Input tape kosong () Input selesai diaca a, a a a a a, q3 q4 terima 19
Contoh lain (2) a a, a, State penerima State jeakan 20
a a Input String a a, a, 21
a a a a, a, 22
a a a a, a, 23
Input selesai diaca a a a accept a, a, 24
Kasus ditolak a Input String a a, a, 25
a a a, a, 26
a a a, a, 27
Input finished a a a, a, tolak 28
Jadi ahasa yang diterima: L { a : n 0} n a a, a, 29
Contoh lain (3) Alfaet: {1} 1 Bahasa yang diterima: q 0 1 1 q EVEN { x : x * and x is even} {,11,1111,111111, } 30
Definisi Formal DFA (Deterministic Finite Automata) M Q,,,, F Q q 0 F : Set/Kumpulan state : Alfaet input : Fungsi transisi : State awal : Set/kumpulan state penerima 31
Set/kumpulan state Q Q q 0 1, 2, 3, 4,, q q q q q 5 a, a a a a a, q3 q4 32
Alfaet Input Alfaet input tidak pernah terdiri dari: a, a, a a a a a, q3 q4 33
State awal a, q 0 a a a a a, q3 q4 34
Set dari state penerima F Q F q 4 a, a a a a q3 a, q 4 35
Fungsi transisi : Q Q ( q, x ) q q x q Menjelaskan hasil transisi dari state q dengan simol x 36
, a a, a a a q a 1 a, q3 q4 37
, q5 a, q 0 a a a a a, q3 q4 38
, q3 a, a a a a a, q3 q4 39
Tael transisi untuk: simol state a q q 0 q 1 q 2 q 3 5 q5 q5 q3 q4 q5 a, q 4 a a a a a, q3 q4 40
Fungsi transisi diperluas * : Q * Q * ( q, w) q Menjelaskan state yang terakhir setelah memaca string w dari state q 41
Contoh: * q, a q 0 2 a, a a a q a 2 a, q3 q4 42
* q, aaa q 0 5 a, q 0 a a a a a, q3 q4 43
* q, a q 1 4 a, a a a a a, q3 q4 44
Kasus khusus: Untuk setiap state q * q, q 45
Secara umumnya: * q, w q Mengimplikasikan ada suatu jalan transisi q 1 2 w 1 2 k k q State isa saja erulang q w q 46
Bahasa yang diterima oleh DFA Bahasa yang diterima oleh DFA M dinotasikan seagai L(M) dan mengandung semua string yang diterima oleh M Atau dapat dikatakan: M mengenali L(M) 47
Untuk suatu DFA M Q,,, q, 0 F Bahasa yang diterima oleh M L M w * : * q, w : 0 F w q q F 48
Bahasa yang ditolah oleh M L M w * * q, w : 0 F w q q F 49
Contoh DFA lainnya { a, } a, a, q 0 q 0 L( M ) Bahasa kosong {} L( M ) Semua string yang mungkin dari alfaet * 50
{ a, } a, a, q 0 L( M ) { } Bahasa yang terdiri dari string kosong 51
{ a, } L M = {semua string dengan prefix a } a, a a State penerima q 3 a, 52
{0,1} L M = {semua string yang mengandung sustring 001 } 1 0 1 0,1 0 0 00 1 001 0 53
L M {0,1} = {semua string yang tidak mengandung sustring 001 } 1 0 0,1 1 0 1 0 00 001 0 54
L( M ) awa : w a, * a a q3 a q 4 a, 55
Bahasa Regular Definisi: Suatu ahasa L merupakan ahasa regular jika ada DFA M yang menerimanya ( L(M) = L ) Bahasa yang diterima oleh DFA mementuk ahasa regular 56
Contoh ahasa regular: aa,a,aa { a n : n 0} { semua string dengan prefix a } awa : w a, { semua string dengan sustring 001 } { x : x {1} {} {} * and { a, x * } is even} * Sea wujud DFA yang menerima ahasa-ahasa di atas (lihat slide-slide seelumnya) 57
Dan wujud ahasa yang ukan regular L n n { a : n 0} ADDITION { x y z : x 1 n, y 1 m,z 1 k, n m k} Sea tidak ada DFA yang menerima ahasa terseut. Kita akan memuktikannya dengan pumping lemma 58