CIRI DFA
Semua symbol didalam ∑ digunakan untuk setiap STATE
sebanyak satu
Tidak menggunakan symbol Lamda
CIRI NFA
Boleh menggunakan symbol Lamda
Symbol didalam ∑ boleh digunakan sebagian atau tidak
didalam suatu STATE
Menggunakan symbol yang sama lebih dari satu
FINITE AUTOMATA DAN BAHASA REGULAR
Dalam definisi suatu FA terdapat sejumlah status akhir. Apabila sebuah string masukan
membawa status FA mulai dari status awal ke salah satu status akhir maka string tersebut
diterima atau dikenali oleh FA tersebut. Dan sebuah bahasa L dikatakan diterima oleh sebuah
FA jika semua string elemen bahasa L diterima oleh FA tersebut.
Contoh 6 : Perhatikan FA pada contoh 5, string ab diterima oleh FA tersebut karena jika kita
mulai dari status awal q0 membaca input a, kita akan menuju status q1. Kem udian dari q1
membaca b, menuju status q0. Disini pembacaan inpu selesai, dan berhenti di status akhir (final
state). Sehingga ab diterima oleh FA tersebut.
Contoh 7 : String aab tidak diterima oleh FA pada contoh 5. Mengapa? String apa saja yang
diterima oleh FA tesebut? Bahasa apa yang diterima oleh FA tersebut?
Contoh 8 : Berikut ini adalah NFA M = (Q,,s,F,) dimana Q = {q0, q1, q2}, ={a,b}, s=q0, F =
{q0} dan :
a b
Q0 {q1} {}
Q1 {} {q0,q2}
Q2 {q0} {}
Atau dalam bentuk digraf :
b
q0 q1
b b
q2
Ekivalensi NFA dan DFA
Jika terdapat sebuah NFA M = (Q,,s,F,) yang menerima bahasa L, maka ada DFA
M’=(Q’,’, s’,F’,’) yang juga menerima bahasa L , dimana :
(1) ’ =
(2) s’ = s
(3) Jika Q = {q0, q1, …, qn} maka mula-mula Q’ = { [q0],[q1],…,[qn]}
(4) Jika (qi,a) = {qj, qk, …} dan a , maka ’([qi],a) = [qj, qk, …] dan [qj, qk, …] menjadi
state baru dan digabungkan ke Q’
(5) Setiap state baru dalam Q’ yang diperoleh, dicari transisi untuk setiap input dalam ’.
Dimana ’([qj, qk, …],a) = (qj,a) (qk,a) …
F’ terdiri dari semua state di Q’ yang mengandung state di F
Carilah sebuah DFA M’=( Q’,’,s’,F’,’) yang ekivalen dengan NFA M=(Q,,s,F,) pada
contoh
b
q0 q1
a b
q2
a b
[q0] [q1] []
[q1] [] [q0,q2]
[q2] [q0] []
[] [] []
[q0,q2] [q0,q1] []
[q0,q1] [q1] [q0,q2]
FINITE AUTOMATA DENGAN TRANSISI HAMPA (-TRANSITION)
Adalah NFA yang mempunyai transisi yang tidak bergantung dari suatu input tertentu.
Atau dengan kata lain, dapat berpindah dari satu state ke state lain tanpa membaca
input apapun.
Contoh :
q0
q1
-CLOSER
Untuk sebuah state q Q dari NFA M=(Q,,s,F,) dengan transisi-, didefinisikan
penutup- (-closer) dari q dimana :
-cl(q) = {p | p Q dan p dapat dicapai dari q tanpa input apapun}
sedangkan
n
-cl({qi1 , qi2, qi3, …, qik}) = cl (q
k 1
ik )
dimana a ., qi Q. dan
d(q,a) = {p | p Q dimana ada transisi dari q ke p dengan input a}
n
d ({qi1 , qi 2 ,..., qik }, a) d (qik , a)
k 1
Setiap state punya tran sisi- ke state itu sendiri, meskipun tidak digambarkan
ELIMINASI TRANSISI-
Jika NFA M=(Q,,s,F,) dengan transisi-, maka terdapat NFA lain M’=(Q’,’,s’,F’,’) tanpa
transisi- yang mendefinisikan bahasa yang sama dimana :
q0
q1
Dari gambar diatas kita dapat menentukan bahwa = {a,b}, F = {q1} dan
d(q0,a) = {} -cl(q0) = {q0, q1}
d(q0,b) = {q0} -cl(q1) = {q1}
d(q1,a) = {q1}
d(q1,b) = {}
Maka :
(1) ’(q0,a)
-cl(q0) = {q0, q1}
d({q0, q1},a) = d(q0,a) d(q1,a) = {} {q1} = {q1}
-cl(q1) = {q1}
maka ’(q0,a) = {q1}
(2) ’(q0,b)
-cl(q0) = {q0, q1}
d({q0, q1},b) = d(q0,b) d(q1,b) = {q0} {} = {q0}
-cl(q0) = {q0, q1}
maka ’(q0,b) = {q0, q1}
Dari gambar diatas kita dapat menentukan bahwa = {a,b}, F = {q1} dan
d(q0,a) = {} -cl(q0) = {q0, q1}
d(q0,b) = {q0} -cl(q1) = {q1}
d(q1,a) = {q1}
d(q1,b) = {}
Maka :
(1) ’(q0,a)
-cl(q0) = {q0, q1}
d({q0, q1},a) = d(q0,a) d(q1,a) = {} {q1} = {q1}
-cl(q1) = {q1}
maka ’(q0,a) = {q1}
(2) ’(q0,b)
-cl(q0) = {q0, q1}
d({q0, q1},b) = d(q0,b) d(q1,b) = {q0} {} = {q0}
-cl(q0) = {q0, q1}
maka ’(q0,b) = {q0, q1}
Click icon to add picture
(1) ’(q1,a)
-cl(q1) = {q1}
d(q1,a) = {q1}
-cl(q1) = {q1}
maka ’(q1,a) = {q1}
(2) ’(q1,b)
-cl(q1) = {q1}
d(q1,b) = {}
-cl({}) = {}
maka ’(q1,a) = {}
(3) F’ = {q1} {q0, q1} = {q0, q1}
Jadi NFA tanpa transisi- adalah :
b a
a, b
q0
q0 q1