Anda di halaman 1dari 34

NFA dengan ε-move dan ε-closure

&
Ekuivalensi NFA dengan ϵ-move ke NFA
tanpa ε-move

R E S S A P R I S K I L A , S .T. , M .T.
Non-Deterministic FSA (NFA)
▪ Kemungkinan transisinya ke lebih dari satu state. Dari
suatu state bisa terdapat 0, 1 atau lebih transisi dengan
label input yang sama.

▪ Perubahan state dapat terjadi secara spontan tanpa input


(transisi kosong)

▪ String diterima NFA bila terdapat suatu urutan transisi


berdasar input, dari state awal ke state akhir.
NFA dengan ε-move
Pada NFA dengan ε-move dibolehkan berpindah state
tanpa membaca input.
NFA dengan ε-move
Contoh 1 :

• Dari q0 tanpa membaca Input


dapat berpindah ke q2

• Dari q2 tanpa membaca Input


dapat berpindah ke q4

• Dari q3 tanpa membaca Input


dapat berpindah ke q2
ε-closure untuk NFA dengan ε-move
▪ ε-closure adalah himpunan state-state yang dapat
dicapai dari suatu state tanpa membaca input.

▪ ε-closure (q0)

Berarti bahwa himpunan yang dapat dicapai dari q0


tanpa membaca input
ε-closure untuk NFA dengan ε-move
Contoh 2 :

Maka dapat dituliskan:

• ε-closure (q0) = {q0, q2, q4}


• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2, q4}
• ε-closure (q3) = {q3, q2, q4}
• ε-closure (q4) = {q4}
Ekuivalensi NFA dengan ε-move ke
NFA tanpa ε-move
Contoh 3 :

Maka dapat dituliskan:

• ε-closure (q0) = {q0, q1, q3}


• ε-closure (q1) = {q1, q3}
• ε-closure (q2) = {q2, q4}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Ekuivalensi NFA dengan ϵ-move ke
NFA tanpa ε-move
▪ Kita dapat membuat suatu NFA tanpa ε-move dari NFA
dengan ε-move yang ekuivalen

Contoh 4 :
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move

1. Buat tabel transisi dari NFA dengan ε-move


Tabel Transisi
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
2. Tentukan ε-closure tiap state

ε-closure

• ε-closure (q0) = {q0, q2}


• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru:
δ’(state, input = ε-closure (δ(ε-closure(state),input))
• δ’ (q0,a)
ε-closure
• ε-closure (q0) = {q0, q2}
δ’ (q0,a) = ε-closure (δ(ε-closure(q0),a))
= ε-closure (δ({q0, q2}, a))
Tabel Transisi = ε-closure ({q1, q3})
ε-closure = {q1, q3}

• ε-closure (q0) = {q0, q2}


• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru:
δ’(state, input = ε-closure (δ(ε-closure(state),input))
ε-closure • δ’ (q0,b)

• ε-closure (q0) = {q0, q2}


δ’ (q0,b) = ε-closure (δ(ε-closure(q0),b))
= ε-closure (δ({q0, q2}, b))
Tabel Transisi = ε-closure ({q4})
ε-closure = {q4}
• ε-closure (q0) = {q0, q2}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru:
δ’(state, input = ε-closure (δ(ε-closure(state),input))

ε-closure • δ’ (q1,a)

• ε-closure (q1) = {q1}


δ’ (q1,a) = ε-closure (δ(ε-closure(q1),a))
Tabel Transisi = ε-closure (δ({q1}, a))
= ε-closure (∅)
ε-closure =∅

• ε-closure (q0) = {q0, q2}


• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru:
δ’(state, input = ε-closure (δ(ε-closure(state),input))
ε-closure
• δ’ (q1,b)
• ε-closure (q1) = {q1}
δ’ (q1,b) = ε-closure (δ(ε-closure(q1),b))
= ε-closure (δ({q1}, b))
Tabel Transisi = ε-closure (∅)
ε-closure =∅

• ε-closure (q0) = {q0, q2}


• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru:
δ’(state, input = ε-closure (δ(ε-closure(state),input))
ε-closure • δ’ (q2,a)
• ε-closure (q2) = {q2}
δ’ (q2,a) = ε-closure (δ(ε-closure(q2),a))
Tabel Transisi = ε-closure (δ({q2}, a))
= ε-closure (({q3})
ε-closure = {q3}
• ε-closure (q0) = {q0, q2}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru:
δ’(state, input = ε-closure (δ(ε-closure(state),input))
ε-closure • δ’ (q2,b)
• ε-closure (q2) = {q2}
δ’ (q2,b) = ε-closure (δ(ε-closure(q2),b))
Tabel Transisi = ε-closure (δ({q2}, b))
= ε-closure (({q4})
ε-closure
= {q4}
• ε-closure (q0) = {q0, q2}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru:
δ’(state, input = ε-closure (δ(ε-closure(state),input))
ε-closure • δ’ (q3,a)
• ε-closure (q3) = {q3}
δ’ (q3,a) = ε-closure (δ(ε-closure(q3),a))
Tabel Transisi = ε-closure (δ({q3}, a))
= ε-closure (∅)
ε-closure =∅
• ε-closure (q0) = {q0, q2}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru:
δ’(state, input = ε-closure (δ(ε-closure(state),input))
ε-closure
• δ’ (q3,b)
• ε-closure (q3) = {q3}
δ’ (q3,b) = ε-closure (δ(ε-closure(q3),b))
Tabel Transisi = ε-closure (δ({q3}, b))
= ε-closure (∅)
ε-closure
=∅
• ε-closure (q0) = {q0, q2}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru:
δ’(state, input = ε-closure (δ(ε-closure(state),input))
ε-closure • δ’ (q4,a)
• ε-closure (q4) = {q4} δ’ (q4,a) = ε-closure (δ(ε-closure(q4),a))
= ε-closure (δ({q4}, a))
Tabel Transisi ε-closure = ε-closure (∅)
=∅
• ε-closure (q0) = {q0, q2}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru:
δ’(state, input = ε-closure (δ(ε-closure(state),input))

ε-closure • δ’ (q4,b)

• ε-closure (q4) = {q4} δ’ (q4,b) = ε-closure (δ(ε-closure(q4),b))


= ε-closure (δ({q4}, b))
Tabel Transisi
= ε-closure (∅)
ε-closure =∅

• ε-closure (q0) = {q0, q2}


• ε-closure (q1) = {q1}
• ε-closure (q2) = {q2}
• ε-closure (q3) = {q3}
• ε-closure (q4) = {q4}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
4. Berdasarkan Langkah ke-3, kita buat tabel transisi dan
diagram transisi NFA tanpa ε-move.

5. Tentukan final state untuk NFA tanpa ε-move yaitu


final state awal ditambah state yang ε-closurenya
menuju final state awal.
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move

Tabel Transisi yang baru NFA tanpa ε-move


Ekuivalensi NFA dengan ϵ-move ke
NFA tanpa ε-move
Contoh 5 :
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move

1. Buat tabel transisi dari NFA dengan ε-move


Tabel Transisi
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
2. Tentukan ε-closure tiap state

ε-closure

• ε-closure (q0) = {q0, q1}


• ε-closure (q1) = {q1}
• ε-closure (q2) = {q0, q1, q2}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru: δ’(state, input
= ε-closure (δ(ε-closure(state),input))
ε-closure • δ’ (q0,a)
• ε-closure (q0) = {q0, q1}
δ’ (q0,a) = ε-closure (δ(ε-closure(q0),a))
Tabel Transisi = ε-closure (δ({q0, q1}, a))
= ε-closure ({q0})
= {q0, q1}

ε-closure
• ε-closure (q0) = {q0, q1}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q0, q1, q2}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru: δ’(state,
input = ε-closure (δ(ε-closure(state),input))
ε-closure • δ’ (q0,b)
• ε-closure (q0) = {q0, q1}
δ’ (q0,b) = ε-closure (δ(ε-closure(q0),b))
Tabel Transisi = ε-closure (δ({q0, q1}, b))
= ε-closure ({q2,})
= {q0, q1, q2}

ε-closure
• ε-closure (q0) = {q0, q1}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q0, q1, q2}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru: δ’(state, input
= ε-closure (δ(ε-closure(state),input))

ε-closure • δ’ (q1,a)
• ε-closure (q1) = {q1}
δ’ (q1,a) = ε-closure (δ(ε-closure(q1),a))
Tabel Transisi
= ε-closure (δ({q1}, a))
= ε-closure (∅)
=∅

ε-closure
• ε-closure (q0) = {q0, q1}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q0, q1, q2}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru: δ’(state, input
= ε-closure (δ(ε-closure(state),input))
ε-closure
• δ’ (q1,b)
• ε-closure (q1) = {q1}
δ’ (q1,b) = ε-closure (δ(ε-closure(q1),b))
Tabel Transisi = ε-closure (δ({q1}, b))
= ε-closure ({q2,})
= {q0, q1, q2}

ε-closure
• ε-closure (q0) = {q0, q1}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q0, q1, q2}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru: δ’(state, input
= ε-closure (δ(ε-closure(state),input))
ε-closure
• δ’ (q2,a)
• ε-closure (q2) = {q0, q1, q2}
δ’ (q2,a) = ε-closure (δ(ε-closure(q2),a))
Tabel Transisi = ε-closure (δ({q0, q1, q2}, a))
= ε-closure ({q0})
= {q0, q1}

ε-closure
• ε-closure (q0) = {q0, q1}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q0, q1, q2}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
3. Carilah fungsi transisi /tabel transisi yang baru: δ’(state, input
= ε-closure (δ(ε-closure(state),input))
ε-closure • δ’ (q2,b)
• ε-closure (q2) = {q0, q1, q2}
δ’ (q2,b) = ε-closure (δ(ε-closure(q2),b))
Tabel Transisi = ε-closure (δ({q0, q1, q2}, b))
= ε-closure ({q2})
= {q0, q1, q2}

ε-closure
• ε-closure (q0) = {q0, q1}
• ε-closure (q1) = {q1}
• ε-closure (q2) = {q0, q1, q2}
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move
4. Berdasarkan Langkah ke-3, kita buat tabel transisi dan
diagram transisi NFA tanpa ε-move.

5. Tentukan final state untuk NFA tanpa ε-move yaitu


final state awal ditambah state yang ε-closurenya
menuju final state awal.
Langkah Ekuivalensi NFA dengan
ϵ-move ke NFA tanpa ε-move

Tabel Transisi yang baru NFA tanpa ε-move


Latihan

Buatlah NFA tanpa ε-move yang ekuivalen dengan NFA ε-move pada
gambar di bawah ini.

Anda mungkin juga menyukai