NON DETERMINISTIC FINITE AUTOMATA DENGAN MOVE MOVE maksudnya

  • Slides: 22
Download presentation
NON DETERMINISTIC FINITE AUTOMATA DENGAN ε - MOVE

NON DETERMINISTIC FINITE AUTOMATA DENGAN ε - MOVE

ε-MOVE, maksudnya apa? ? ?

ε-MOVE, maksudnya apa? ? ?

Non Deterministic Finite Automata dengan ε-move l l l NFA dengan ε-move (transisi ε),

Non Deterministic Finite Automata dengan ε-move l l l NFA dengan ε-move (transisi ε), diperbolehkan merubah state tanpa membaca input. Disebut dengan ε-move karena tidak bergantung pada suatu input ketika melakukan transisi. Kegunaan ε-move adalah untuk memudahkan mengkombinasikan finite state automata.

Ε-Move berada pada transisi state. Sebuah transisi dapat mempunyai input/output / ε-move. Suatu ε

Ε-Move berada pada transisi state. Sebuah transisi dapat mempunyai input/output / ε-move. Suatu ε –move untuk state q 1 ke q 2 yg terhubung dapat berpindah tanpa menghasilkan inputan (karakter) pada transisinya/busur (hampa).

Contoh 1: q 0 ε a b q 3 ε q 1 q 2

Contoh 1: q 0 ε a b q 3 ε q 1 q 2 ε q 4 b Tanpa membaca input : q 0 dapat berpindah ke q 1 dapat berpindah ke q 2 q 4 dapat berpindah ke q 1

Apa itu ε -Closure ? ?

Apa itu ε -Closure ? ?

ε-closure untuk suatu NFA dengan ε-move l l l ε-closure adalah himpunan state-state yang

ε-closure untuk suatu NFA dengan ε-move l l l ε-closure adalah himpunan state-state yang dapat dicapai dari suatu state tanpa membaca input. ε-closure (q 0)=himpunan state-state yang dapat dicapai dari state q 0 tanpa membaca input. Pada suatu state yang tidak memiliki εmove, maka ε-closure nya adalah state itu sendiri.

Dengan melihat contoh 1 : q 0 ε a b q 3 ε q

Dengan melihat contoh 1 : q 0 ε a b q 3 ε q 4 b ε q 1 q 2

Perhatikan !!!!! l ε-closure(q 0) = {q 0, q 1, q 2 }, artinya

Perhatikan !!!!! l ε-closure(q 0) = {q 0, q 1, q 2 }, artinya dari state q 0 tanpa membaca input dapat mencapai state q 0, q 1 dan q 2. l ε-closure untuk state lainnya : ε-closure(q 1) = {q 1, q 2 } ε-closure(q 2) = {q 2 } ε-closure(q 3) = {q 3 } ε-closure(q 4) = {q 4 }

Ekivalensi NFA dengan ε-move ke NFA tanpa ε-move Ekivalen = mampu menerima bahasa yang

Ekivalensi NFA dengan ε-move ke NFA tanpa ε-move Ekivalen = mampu menerima bahasa yang sama. q 2 q 0 a q 2 ε a a q 1 q 0 q 1 b b b q 3

Merubah NFA dengan ε-move ke NFA tanpa ε-move. Buat tabel transisi NFA ε-move dari

Merubah NFA dengan ε-move ke NFA tanpa ε-move. Buat tabel transisi NFA ε-move dari diagram NFA atau sudah ditentukan semula. l Carilah ε-closure untuk setiap state NFA. l Cari setiap fungsi transisi hasil perubahan dari NFA ε-move ke NFA tanpa ε-move (δ) , rumus : ’(state, input)= -closure( ( -closure(state, input)) l

l Berdasarkan langkah sebelumnya, buatlah tabel transisi NFA yg baru tanpa ε-move l Tentukan

l Berdasarkan langkah sebelumnya, buatlah tabel transisi NFA yg baru tanpa ε-move l Tentukan state akhir. Jika State 2 x pada closure satu state merupakan final state maka state yg baru menjadi final state. F’ = F {q | ( -closure(q) F }

Contoh :

Contoh :

Tabel transisi-nya : q 0 q 1 q 2 q 3 0 q 2

Tabel transisi-nya : q 0 q 1 q 2 q 3 0 q 2 1 q 3 -closure dari FSA tersebut -closure(q 0) = [q 0, q 1] -closure(q 1) = [q 1] -closure(q 2) = [q 2] -closure(q 3) = [q 3]

Cari tabel transisi yang baru ( ’) : ’ a q 0 -cl( (

Cari tabel transisi yang baru ( ’) : ’ a q 0 -cl( ( -cl(q 0), a)) -cl( ({q 0, q 1}, a)) -cl(q 2) {q 2} q 1 -cl( ( -cl(q 1), a)) -cl( ({q 1}, a)) -cl(q 2) {q 2} b -cl( ( -cl(q 0), b)) -cl( ({q 0, q 1}, b)) -cl(q 3) {q 3} -cl( ( -cl(q 1), b)) -cl( ({q 1}, b)) -cl(q 3) {q 3}

 ’ a q 2 -cl( ( -cl(q 2), a)) -cl( ({q 3}, a))

’ a q 2 -cl( ( -cl(q 2), a)) -cl( ({q 3}, a)) -cl( ) q 3 -cl( ( -cl(q 3), a)) -cl( ({q 3}, a)) -cl( ) b -cl( ( -cl(q 2), b)) -cl( ({q 2}, b)) -cl( ) -cl( ( -cl(q 3), b)) -cl( ({q 3}, b)) -cl( )

Hasilnya menjadi :

Hasilnya menjadi :

PENGGABUNGAN DAN PENYAMBUNGAN

PENGGABUNGAN DAN PENYAMBUNGAN

Contoh FSA : M 1 : M 2 :

Contoh FSA : M 1 : M 2 :

HASIL PENGGABUNGAN :

HASIL PENGGABUNGAN :

HASIL PENYAMBUNGAN :

HASIL PENYAMBUNGAN :

selesai

selesai