NonDeterministic Finite Automata -...

17
NonDeterministic Finite Automata © B.Very Christioko, S.Kom

Transcript of NonDeterministic Finite Automata -...

Page 1: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

NonDeterministic FiniteAutomata

©B.Very Christioko, S.Kom

Page 2: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Perbedaan DFA dan NFA• DFA (Deterministic Finite Automata)

FA di dalam menerima input mempunyai tepat satu busur keluar.

• NFA (Non Deterministic Finite Automata)FA di dalam menerima input mempuyai lebih dari satu busurkeluar atau tidak punya busur keluar.

©B.Very Christioko, S.Kom

Page 3: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Ekuivalensi antar FA• Terdapat dua mesin FA yaitu M1 dan M2. Dan masing-

masing menerima bahasa L(M1) dan L(M2).• Kedua mesin tersebut disebut ekuivalen jika menerima

bahasa yang sama yaitu : L(M1) = L(M2)

©B.Very Christioko, S.Kom

Page 4: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Definisi Formal NFA

•NFA dinyatakan oleh 5 tuple M=(Q , Σ ,δ , q0 , F )▫Q = himpunan state▫ Σ = himpunan simbol input▫ δ = fungsi transisi▫ q0 = state awal / initial state▫ F = state akhir

©B.Very Christioko, S.Kom

Page 5: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

contoh

• G = ({q0 , q1 , q2 , q3, q4 }, {0,1}, δ , q0 , { q2 , q4}}

©B.Very Christioko, S.Kom

Page 6: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

String diterima NFA bila terdapat suatu urutan transisiberdasar input, dari state awal ke state akhir harusmencoba semua kemungkinan.

©B.Very Christioko, S.Kom

Page 7: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Contoh :

• string 01001

©B.Very Christioko, S.Kom

Page 8: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

• Sebuah NFA menerima string, jika:Komputasi pada NFA menerima string.

Komputasi adalah :Seluruh inputan dimasukkan dan automatadimulai dari state awal menuju ke state akhir

• Sebuah NFA Menolak string, jika:Tidak ada komputasi pada NFA yang menerima string.

Untuk setiap komputasi: seluruh inputan selesai dimasukkan danautomata tidak sampai pada State akhir.Atau..

• Inputan belum selesai dimasukkan dan tidak terjadi transisi

©B.Very Christioko, S.Kom

Page 9: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Contoh Kasus

• Slide Sri Handayaningsih, S.T., M.T. -Deterministic Finite Automata (DFA) & Non-Deterministic Automata (NFA) (klik disini)

©B.Very Christioko, S.Kom

Page 10: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Reduksi Jumlah State pada FSA

• Dalam melakukan reduksi jumlah state pada FSA,dikenal dengan istilah:

a. Distinguishable (dapat dibedakan)Ciri:- Masing-masing dari kedua state adalah

pasangan antara state bukan Final dan stateFinal.

a. Indistinguishable (tidak dapat dibedakan)Ciri:- Kedua state adalah merupakan state bukan

final.- Kedua state adalah merupakan state Final

©B.Very Christioko, S.Kom

Page 11: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Reduksi Jumlah State pada FSA

• Dua buah state dari FSA disebut indistinguishable(tidak dapat dibedakan) apabila :

▫ δ(q,w)∈F sedangkan δ(p,w) ∈ F dan▫ δ(q,w) ∉F sedangkan δ(p,w) ∉ Funtuk semua w ∈ Σ*

• Dua buah state dari FSA disebut distinguishable(dapat dibedakan) bila :

▫ δ(q,w)∈F sedangkan δ(p,w)∉Funtuk semua w ∈ Σ*

©B.Very Christioko, S.Kom

Page 12: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Reduksi Jumlah State pada FSA

• Oleh karena itu, pasangan dua buah statehanya memiliki salah satu kemungkinan dariindistinguishable dan distinguishable, tidakkedua-duanya.

Jika p dan q indistinguishable, dan jika q dan r jugaindistinguishable, maka p dan r juga indistinguishable,

sehingga dapat kita katakan bahwa ketiga statetersebut indistinguishable

©B.Very Christioko, S.Kom

Page 13: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Langkah mereduksi stateTAHAP 1:1. Hapus semua state yang tak dapat dicapai dari state awal,

dengan jalan mana pun.2. Catat semua pasangan state (p,q) yang distinguishable, yaitu

{(p,q) | p ∈ F ∧ q ∉ F}3. Untuk setiap pasangan (p,q) sisanya, untuk setiap a∈ Σ,

tentukan δ(p,a) dan δ(q,a)Contoh

©B.Very Christioko, S.Kom

Page 14: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

TAHAP 11. Hapus state yang tidak tercapai -> tidak ada2. Pasangan distinguishable (q0,q4), (q1,q4),

(q2,q4), (q3,q4).3. Pasangan sisanya (q0,q1), (q0,q2), (q0,q3),

(q1,q2) (q1,q3) (q2,q3)

©B.Very Christioko, S.Kom

Page 15: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Langkah mereduksi stateTAHAP 2:4. Tentukan pasangan status indistinguishable.5. Gabungkan setiap group indistinguishable state ke

dalam satu state dengan relasi pembentukan groupsecara berantai : Jika p dan q indistingishable danjika q dan r indistinguishable maka p dan rindistinguishable, dan p,q serta r indistinguishablesemua berada dalam satu group.

6. sesuaikan transisi dari dan ke state-state gabungan.

©B.Very Christioko, S.Kom

Page 16: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Tahap 2Contoh:1. pasangan status indistinguishable (q1,q2),

(q1,q3) dan (q2,q3).2. q1,q2,q3 ketiganya dapat digabung dalam

satu state q1233. Menyesuaikan transisi, sehingga DFA

menjadi

©B.Very Christioko, S.Kom

Page 17: NonDeterministic Finite Automata - imambukhari.weebly.comimambukhari.weebly.com/uploads/1/4/2/7/14272694/pert6.materi... · •Kedua mesin tersebut disebut ekuivalen jika menerima

Latihan:

• Buku “Teori Bahasa dan Otomata” FirrarUtdirartatmo, Bab 2 halaman 33.

©B.Very Christioko, S.Kom