nfa dengan e-move

22
NON DETERMINISTIC FINITE AUTOMATA DENGAN ε - MOVE

Upload: eko-nopyanto

Post on 29-Dec-2015

1.134 views

Category:

Documents


95 download

DESCRIPTION

Pertemuan 8

TRANSCRIPT

Page 1: NFA dengan e-Move

NON DETERMINISTIC FINITE AUTOMATA DENGAN

ε - MOVE

Page 2: NFA dengan e-Move

ε-MOVE,

maksudnya apa???

Page 3: NFA dengan e-Move

Non Deterministic Finite Automata dengan ε-move

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.

Page 4: NFA dengan e-Move

Ε-Move berada pada transisi state.

Sebuah transisi dapat mempunyai input/output / ε-move.

Suatu ε –move untuk state q1 ke q2 yg terhubung dapat berpindah tanpa menghasilkan inputan (karakter) pada transisinya/busur (hampa).

Page 5: NFA dengan e-Move

Contoh 1:

q0 q1 q2

q3 q4

a

b

b

ε

ε

ε

Tanpa membaca input :q0 dapat berpindah ke q1

q1 dapat berpindah ke q2

q4 dapat berpindah ke q1

Page 6: NFA dengan e-Move

Apa itu ε -Closure ??

Page 7: NFA dengan e-Move

ε-closure untuk suatu NFA dengan ε-move

ε-closure adalah himpunan state-state yang dapat dicapai dari suatu state tanpa membaca input.

ε-closure (q0)=himpunan state-state yang dapat dicapai dari state q0 tanpa membaca input.

Pada suatu state yang tidak memiliki ε-move, maka ε-closure nya adalah state itu sendiri.

Page 8: NFA dengan e-Move

q0 q1 q2

q3 q4

a

b

b

ε

ε

ε

Dengan melihat contoh 1 :

Page 9: NFA dengan e-Move

Perhatikan !!!!!

ε-closure(q0) = {q0, q1, q2 }, artinya dari state q0 tanpa membaca input dapat mencapai state q0, q1 dan q2.

ε-closure untuk state lainnya :

ε-closure(q1) = {q1,q2 }

ε-closure(q2) = {q2 }

ε-closure(q3) = {q3 }

ε-closure(q4) = {q4 }

Page 10: NFA dengan e-Move

Ekivalensi NFA dengan ε-move ke NFA tanpa ε-move

Ekivalen = mampu menerima bahasa yang sama.

εa

b

q0

q1

q2

q3

q0q1

q2

q3

a

a

b

b

Page 11: NFA dengan e-Move

Merubah NFA dengan ε-move ke NFA tanpa ε-move.

Buat tabel transisi NFA ε-move dari diagram NFA atau sudah ditentukan semula.

Carilah ε-closure untuk setiap state NFA. Cari setiap fungsi transisi hasil perubahan dari

NFA ε-move ke NFA tanpa ε-move (δ) , rumus :

’(state,input)=-closure((-closure(state,input))

Page 12: NFA dengan e-Move

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

Tentukan state akhir. Jika State2x pada closure satu state merup final state maka state yg baru menjadi finel state.

F’ = F {q | (-closure(q) F }

Page 13: NFA dengan e-Move

Contoh :

q0 q1

q3

q2a

b

Page 14: NFA dengan e-Move

transisi-nya :

0 1q0

q1 q2 q3

q2

q3

-closure dari FSA tersebut-closure(q0) = [q0,q1]

-closure(q1) = [q1]

-closure(q2) = [q2]

-closure(q3) = [q3]

Page 15: NFA dengan e-Move

Cari tabel transisi yang baru (’) :

’ a b

q0 -cl((-cl(q0),a))

-cl(({q0,q1},a))

-cl(q2)

{q2}

-cl((-cl(q0),b))

-cl(({q0,q1},b))

-cl(q3)

{q3}

q1 -cl((-cl(q1),a))

-cl(({q1},a))

-cl(q2)

{q2}

-cl((-cl(q1),b))

-cl(({q1},b))

-cl(q3)

{q3}

Page 16: NFA dengan e-Move

q2 -cl((-cl(q2),a))

-cl(({q3},a))

-cl()

-cl((-cl(q2),b))

-cl(({q2},b))

-cl()

q3 -cl((-cl(q3),a))

-cl(({q3},a))

-cl()

-cl((-cl(q3),b))

-cl(({q3},b))

-cl()

’ a b

Page 17: NFA dengan e-Move

Hasilnya menjadi :

q0

q2

a

b q3

q1

a

b

Page 18: NFA dengan e-Move

PENGGABUNGAN

DAN

PENYAMBUNGAN

Page 19: NFA dengan e-Move

qA1qA0

0

1

qB1qB0

1

1

0

Contoh FSA :

M1 :

M2 :

Page 20: NFA dengan e-Move

qA0

0

1

qB0

1

1

0

qS

qA1

qB1

qF

HASIL PENGGABUNGAN :

Page 21: NFA dengan e-Move

qA0

0

1 qA1 qB1qB0

1

1

0

HASIL PENYAMBUNGAN :

Page 22: NFA dengan e-Move

selesaiselesaiselesai