Anda di halaman 1dari 19

Teori Bahasa dan Otomata

#4
Non DFA dengan -Move

Pada NDFA dengan - move (transisi ), diperbolehkan
merubah state tanpa membaca input.
Disebut dengan transisi  karena tidak tergantung
pada input ketika melakukan transisi.
Mesin NFA dengan -move

 
q0 q1 q2

a b 

q3 q4 q0 tanpa input ke q1
b q1 tanpa input ke q2
q4 tanpa input ke q1
Gambar 1.
- closure Untuk suatu NDFA dengan - move

-closure adalah himpunan state-state yang dapat dicapai dari


satu state tanpa membaca input.

Misalkan saja -closure (q0) = himpunan state-state yang dapat


dicapai state q0 tanpa membaca input maka dengan melihat
gambar 1. -closure (q0) = {q0,q1,q2}, artinya dari state q0 tanpa
membaca input dapat mencapai state q0,q1 dan q2.
Mesin NFA dengan -move
-closure untuk state
 a lainnya bisa dilihat sebagai
q0 q1 q2 berikut

b -closure (q1) = { q1,q2}


  -closure (q2) = {q2}
-closure (q3) = {q3}
-closure (q4) = { q1,q2,q4}
q3 q4

Gambar 2.
-closure untuk state lainnya bisa dilihat sebagai berikut:
-closure (q0) = {q0 ,q1,q3}
-closure (q1) = { q1,q3}
-closure (q2) = {q2,q4}
-closure (q3) = {q3}
-closure (q4) = {q4}
Note: Pada Satu State yang tidak memiliki Transisi ,
maka -closurenya adalah state itu sendiri
Ekivalensi NDFA dengan -move ke NDFA Tanpa -move

 a
q2
q0 q1

q3
Gambar 3.NFA -move
NFA tanpa -move ekivalen
a

a
q0 q1 q2

b
b
q3
Gambar 4.
Beberapa Tahapan untuk mendapatkan perubahan dari NDFA - move ke
DFA tanpa - move
1. Buat Tabel transisi NDFA - move semula
2. Tentukan -closure untuk setiap state
3. Carilah setiap fungsi transisi hasil perubahan dari NDFA - move ke NDFA tanpa - move
rumusnya
’(state,input) = -closure ((-closure (state),input))
4. Berdasarkan hasil no(3) kita dapat membuat tabel transisi dan diagram
transisi dari NDFA tanpa -move yang ekivalen dengan NDFA -move
tersebut.
5. Tentukan State-state akhir untuk NDFA tanpa -move tersebut yaitu state-
state akhir semula ditambah dengan state-state yang -closure nya
menuju ke salah satu dari state akhir semula.

Misal bila semula F = {q0,q3}, -closure {q0} = {q0,q2} maka F’ ={q0,q1,q2}


Tabel transisi dari gambar 3 sbb:

 a b
q0  
q1 q2 q3
q2  
q3  
Menentukan -closure untuk setiap state (-closure bisa kita singkat -cl)

-cl (q0) = {q0,q1}


-cl (q1) = {q1}
-cl (q2) = {q2}
-cl (q3) = {q3}
Kemudian kita cari ’ dengan memanfaatkan tabel transisi
dan -closure yang kita peroleh sebelumnya sbb:

 a b ’ (q0,a) = _closure ((-closure (q0,a))


q0   = _closure (({q0,q1},a))
= _closure (q2)
q1 q2 q3 = {q2}
q2   ’ (q0,b) = _closure ((-closure (q0,b))
q3   = _closure (({q0,q1},b))
= _closure (q3)
= {q3}
’ (q1,a) = _closure ((-closure (q1,a))
 a b = _closure (({q1},a))
q0   = _closure (q2)
= {q2}
q1 q2 q3
’ (q1,b) = _closure ((-closure (q1,b))
q2   = _closure (({q1},b))
q3   = _closure (q3)
= {q3}
’ (q2,a) = _closure ((-closure (q2,a))
 a b = _closure (({q2},a))
q0   = _closure ()
=
q1 q2 q3
’ (q2,b) = _closure ((-closure (q1,b))
q2   = _closure (({q2},b))
q3   = _closure ()
=
’ (q3,a) = _closure ((-closure (q3,a))
 a b = _closure (({q3},a))
q0   = _closure ()
=
q1 q2 q3
’ (q3,b) = _closure ((-closure (q3,b))
q2   = _closure (({q3},b))
q3   = _closure ()
=
Maka kita akan mendapatkan tabel transisi untuk NFA tanpa -move dari hasil diatas

 a b
q0 q2 q3
q1 q2 q3
q2  
q3  
Sampai bertemu dimateri selanjutnya #4.1 pada studi
kasus NDFA dengan -move ke tanpa tanpa -move serta
materi Penggabungan dan KonKatenasi FSA
Sumber bacaan
• Utdirartatmo,Firrar.2005. Teori bahasa dan Otomata. Graha Ilmu. Yogayakarta
• JHON E HOPCROFT,2000. Teori Bahasa Otomata, penerbit Andi. Yogyakarta
• Irwan Sofia, John E Hopcroft, Rajeev Motwani, Jeffrey D.Ullman,2001. Teori
Bahasa Otomata. Penerbit Andi.Yogyakarta

Anda mungkin juga menyukai