Вы находитесь на странице: 1из 5

TEORI BAHASA DAN OTOMATA Pertemuan 5 Dosen : Tri Ari Cahyono, S.Kom, M.

Kom -----------------------------------------------------------------------------NFA dengan -move Disini kita mempunyai jenis otomata baru yang disebut Nondeterministic Finite Automata dengan -move. ( disini bisa dianggap sebagai empty). Pada NFA dengan -move (transisi ), diperbolehkan merubah state tanpa membaca input. Disebut dengan transisi karena tidak bergantung pada suatu input ketika melakukan transisi. Contoh :

-closure -closure adalah himpunan state-state yang dapat dicapai dari suatu state tanpa membaca input. Contoh dari gambar di atas cari -closure : Jawab : -closure(q0)={q0,q1} -closure(q1)={q1} -closure(q2)={q2} -closure(q3)={q3} Contoh dari gambar di atas cari -closure :
a

q0

q1
b

q2

q3

q4

Jawab :

-closure(q0)={q0,q1,q3} -closure(q1)={q1,q3} -closure(q2)={q2,q4} -closure(q3)={q3} -closure(q4)={q4} Keterangan : Pada suatu state yang tidak memiliki transisi , maka closure nya adalah state itu sendiri Ekivalensi NFA dengan -move ke NFA tanpa -move Dari sebuah NFA dengan -move dapat kita peroleh NFA tanpa -move yang ekivalen. Langkahnya adalah sebagai berikut : 1. Buat tabel transisi NFA dengan -move 2. Tentukan -closure NFA dengan -move 3. Tentukan -closure NFA tanpa -move dengan rumus ' (state,input)= -closure((-closure(state),input)) 4. Buat tabel transisi NFA tanpa -move 5. Tentukan state akhir NFA tanpa -move (State akhir semula ditambah dengan state yang -closure nya menuju ke salah satu dari state akhir semula) Contoh Soal Diketahui :
a

q0

q1
b

q2
b

Ditanya : 1. Buat tabel transisi NFA dengan -move 2. Tentukan -closure NFA dengan -move 3. Tentukan -closure NFA tanpa -move 4. Buat tabel transisi NFA tanpa -move

5. Tentukan state akhir NFA tanpa -move Jawab : 1. Tabel transisi NFA dengan -move q0 q1 q2 a {q0} b {q2} {q2}

2. -closure NFA dengan -move -closure(q0)={q0,q1} -closure(q1)={q1} -closure(q2)={q0,q1,q2} 3. -closure NFA tanpa -move (q0,a)= -closure( (-closure(q0),a) -closure( ({q0,q1},a)) -closure {q0} {q0,q1} (q0,b)= -closure( (-closure(q0),b) -closure( ({q0,q1},b)) -closure {q2} {q0,q1,q2} (q1,a)= -closure( (-closure(q1),a) -closure( ({q1},a)) -closure {} {} (q1,b)= -closure( (-closure(q1),b) -closure( ({q1},b)) -closure {q2} {q0,q1,q2} (q2,a)= -closure( (-closure(q2),a) -closure( ({q0,q1,q2},a)) -closure {q0} {q0,q1}

(q2,b)= -closure( (-closure(q2),b) -closure( ({q0,q1,q2},b)) -closure {q2} {q0,q1,q2} 4. Tabel transisi NFA tanpa -move q0 q1 q2 a {q0,q1} {q0,q1} b {q0,q1,q2} {q0,q1,q2} {q0,q1,q2}

5. State akhir NFA tanpa -move State akhir NFA dengan -move = q0 -closure yang mengandung q0= -closure {q2} State akhir NFA tanpa -move ={q0,q2} LATIHAN :
a

q0

q1

Ditanya : Buat tabel transisi NFA dengan -move Tentukan -closure NFA dengan -move Tentukan -closure NFA tanpa -move Buat tabel transisi NFA tanpa -move Tentukan state akhir NFA tanpa -move LATIHAN :

q0

q1

q2

q3

Ditanya : Buat tabel transisi NFA dengan -move Tentukan -closure NFA dengan -move Tentukan -closure NFA tanpa -move Buat tabel transisi NFA tanpa -move Tentukan state akhir NFA tanpa -move LATIHAN :

q0

q1

q2

q3

q3

Ditanya : Buat tabel transisi NFA dengan -move Tentukan -closure NFA dengan -move Tentukan -closure NFA tanpa -move Buat tabel transisi NFA tanpa -move Tentukan state akhir NFA tanpa -move