2 2
Review:
Klasifikasi Chomsky (2)
3 3
Review: Mesin
Pengenal Bahasa
4
Review: Finite State
Automata (FSA)
a. Deterministik Finite Automata
a. Dari suatu state ada tepat satu state berikutnya untuk
setiap simbol input yang diterima.
b. Sebuah kalimat diterima oleh suatu DFA jika tracingnya
berakhir di state AKHIR.
b. Nondeterministik Finite Automata
a. Pada Non-deterministic Finite Automata (NFA), suatu
state bisa terdapat 0, 1, atau lebih busur keluar (transisi)
berlabel simbol input yang sama.
b. String diterima oleh NFA bila terdapat suatu urutan
transisi sehubungan dengan input string dari state awal
menuju state akhir. 5
Pokok Bahasa
Selanjutnya
6
Ekivalensi DFA (1)
Dua buah DFA disebut ekivalen apabila kedua DFA tersebut
menerima bahasa yang sama
q4 a q4 q4
7
Ekivalensi DFA (2)
Algoritma Moore :
Langkah-langkah Untuk menetapkan apakah 2 DFA
(A dan A’) ekivalen. Yaitu :
1. Vertex dari A dan A’ diberi nama yang semuanya berbeda.
2. Buat tabel perbandingan (3 kolom) dengan elemen-
elemennya pasangan terurut (v, v’), vA dan v’A’.
Elemen baris pertama, kolom pertama adalah pasangan
vertex-vertex awal (start). (v, v’) dikolom 1, kita tempatkan
(va,va’) dikolom 2 edge berlabel a mengarah dari v ke va
dan dari v’ ke va’. Demikian pula pada kolom 3 untuk (vb,
vb’).
8
Ekivalensi DFA (3)
3. Jika (va, va’) belum pernah muncul sebelumnya pada
kolom 1, tempatkan dia pada kolom 1. Demikian pula
untuk (vb, vb’)
4. Jika selama proses, muncul pasangan (v, v’) dengan v =
vertex akhir dan v’ bukan vertex akhir, atau sebaliknya.
Maka ke-2 DFA tidak ekivalen. Proses berhenti.
Dalam hal lain, proses berhenti bila tidak ada lagi
pasangan baru di kolom 2 atau di kolom 3. Maka ke-2
DFA ekivalen.
9 9
Ekivalensi DFA :
Contoh
b
b
Moore
DFA - A DFA - B
10
Reduksi Jumlah State
pada DFA (1)
11
Reduksi Jumlah
State pada DFA (2)
State p dan q dikatakan distinguishable jika ada
string w* sedemikian sehingga :
(q, w)F sedang (p, w)F
12
Tahapan Reduksi
State DFA (1)
1. Hapuskan semua state yang tidak dapat dicapai dari
state awal, dengan jalan manapun.
2. Buat semua pasangan state (p, q) yang distinguishable,
dimana pF, dan qF. Catat pasangan state-state
tersebut.
3. Untuk semua state lakukan pencarian state yang
distinguishable dengan aturan :
“Untuk semua (p, q) dan semua a, hitunglah (p, a)= pa, dan
(q, a)= qa. Jika pasangan (pa, qa) telah tercatat sebagai
distinguishable, maka pasangan (p, q) juga dimasukkan sebagai
distinguishable.”
13
Tahapan Reduksi
State DFA (2)
4. Dari hasil nomor 3, didapat pasangan state-state
yang distinguishable. Pasangan-pasangan state lain
yang tidak termasuk di dalamnya dapat ditentukan
sebagai state yang indistinguishable.
5. Beberapa state yang saling indistinguishable dapat
digabungkan ke dalam satu state.
6. Sesuaikan transisi dari dan ke state-state gabungan
tersebut.
14
Tahapan Reduksi State
DFA : Contoh (1)
0
0 2. Pasangan
1
q0 q2 q4 distinguishable (q0,q4),
0
(q1,q4), (q2,q4), (q3,q4).
1 1
q3 3. Pasangan sisanya
(q0,q1), (q0,q2), (q0,q3),
(q1,q2) (q1,q3) (q2,q3)
15
Tahapan Reduksi State
DFA : Contoh (2)
state 1 state 2
Pasangan Hasil
0 1 0 1
(q0,q1) q1 q3 q2 q4 Distinguishable
(q0,q2) q1 q3 q1 q4 Distinguishable
(q1,q2) q2 q4 q1 q4 Indistinguishable
(q0,q3) q1 q3 q2 q4 Distinguishable
(q1,q3) q2 q4 q2 q4 Indistinguishable
(q2,q3) q1 q4 q2 q4 Indistinguishable
0, 1 1
q q123 q4
0
16