Anda di halaman 1dari 31

OTOMATA

DAN TEORI BAHASA


NFA dan DFA ( 6 )
Oleh
AHMADFATONI
Materi :
1. DFA dan NFA
2. Ekuivalensi NFA
DFA DAN NFA
• FSA secara umum ada dua jenis yaitu
1. Deterministic Finite Automata
(DFA)
2. Non Determinisric Finite Automata
(NFA) atau NDFA
• Komputer menggunakan yang DFA
DFA DAN NFA
• Ciri DFA
1. Jika misalkan ={a,b}, maka SETIAP
state mempunyai satu input a dan
satu input b
2. Dalam Tabel Transisi state Tujuan
tidak ditulis dalam bentuk Himpunan
DFA DAN NFA
1. Jika misalkan ={a,b}, maka SETIAP
state mempunyai satu input a dan
satu input b

a a a

S b A b A
b
DFA DAN NFA
2. Dalam Tabel Transisi state Tujuan
tidak ditulis dalam bentuk himpunan
a b
S A S
A B B
B A B

Bukan dalam bentuk himpunan


DFA DAN NFA
• Contoh 1
b
b
a a
S A B
b
a
DFA DAN NFA
• Contoh 2
a b
S B A
A C S
B S C
C A B
DFA DAN NFA
• Contoh 3

Q = {S, A, B, C, D}
 = {0, 1}
(S,0)=S, (A,0)=S, (B,0)=B, (C,0)=D, (D,0)=A
(S,1)=A, (A,1)=C, (B,1)=D, (C,1)=B, (D,1)=B
S= S
F = {B, C}
DFA DAN NFA
• Ciri NFA
1. Jika misalkan ={a,b}, maka SETIAP
state mempunyai input a dan
input b yang jumlahnya bebas
2. Dalam Tabel Transisi state Tujuan
ditulis dalam bentuk Himpunan
DFA DAN NFA
1. Jika misalkan ={a,b}, maka SETIAP
state mempunyai input a dan
input b yang jumlahnya bebas
a a

S b A a A a
b
DFA DAN NFA
2. Dalam Tabel Transisi state Tujuan
ditulis dalam bentuk himpunan
a b
S {A} {S}
A {A,B} {}
B {A} {B,B}

dalam bentuk himpunan


DFA DAN NFA
• Contoh 1

b
b
a b
S A B
a
a
DFA DAN NFA
• Contoh 2
a b
S {B} {A,B}
A {B,C} {S}
B {} {C,C}
C {A} {}
DFA DAN NFA
• Contoh 3

Q = {S, A, B}
 = {0, 1}
(S,0)={S}, (A,0)={S,B}, (B,0)={ }
(S,1)={A, B}, (A,1)={A,S} (B,1)={B,B}
S= S
F = {B}
DFA DAN NFA
• Contoh 1
a b
S {B} {A}
S=S A {} {B}
F = {B} B {S} {A, B}

Tentukan Graph Transisinya


Tentukan Kelima Komponennya
DFA DAN NFA
• Contoh 2 0 1
S {S,C} {S,A}
A {} {B}
B {B} {B}
S=S C {D} {}
F = {C, D} D {D} {D}

Tentukan Graph Transisinya


Tentukan Kelima Komponennya
DFA DAN NFA
• Contoh 3

a
A b b

b
S B
a b a

C a
DFA DAN NFA
• Contoh 3
Q = {S, A, B, C}  = {a, b, c}
(S,a)={A}, (A,a)={B, C}, (B,a)={ },
(C,a)={A}, (C,b)={ }, (C,c)={C}
(S,b)={B}, (A,b)={B}, (B,b)={C}
(S,c)={ }, (A,c)={A,S}, (B,c)={ }
S=S
F = {B, C}
EKUIVALENSI NFA
• Di dunia nyata ada suatu sistem yang
mengikuti mesin DFA ada juga NFA
• Tetapi Komputer hanya dapat
menerima sistem DFA
• Bagaimana solusinya ?
EKUIVALENSI NFA
• Solusinya adalah merubah
suatu NFA menjadi DFA
yang ekivalen
• Ekivalen artinya mempunyai
kemampuan yang sama
EKUIVALENSI NFA
• Cara merubah NFA ke DFA
1. Jika belum dibuat Tabel Transisi,
maka buatlah Tabel Transisinya
2. Berpedoman pada Tabel Transisi,
ubahlah setiap state agar memenuhi
syarat DFA dimulai state awal
3. State Akhir baru yg mengandung
state akhir lama
EKUIVALENSI NFA
• Contoh 1
0 1
1
0
A B
1

Tentukan DFA yang ekivalen


EKUIVALENSI NFA
• Dari Graph Transisi tersebut dibuat
Tabel Transisi
0 1
A {A, B} {B}
B {} {A, B}

• State awal A
• State akhir B
EKUIVALENSI NFA
• Hasil DFA yg ekivalen adalah :

0
1 {B}

{A} { }
1 0
0 1

{A,B}
1 0
EKUIVALENSI NFA
• Soal 1:

1
0 B
0 C
A 1
0

Tentukan DFA yang ekivalen


EKUIVALENSI NFA
• Soal 2
0 1
A {A, B} {A}
B {C} {C}
q0 = A C {D} { }
F ={D} D {D} {D}

Tentukan DFA yang ekivalen


EKUIVALENSI NFA
• Soal 3
Diketahui Kelima Komponen NFA
Q = {A, B, C},  = {0, 1}
(A,0)={A}, (A,1)={C}, (B,0)={B}
(C,0)={A,B}, (C,1)={B}
S= A, F ={C}

Tentukan DFA yang ekivalen


EKUIVALENSI NFA
• Soal 4
Diketahui Kelima Komponen NFA
Q = {A, B, C},  = {0, 1}
(A,0)={B, C}, (A,1)={C}, (B,0)={B}
(B,1)={C}, (C,0)={ }, (C,1)={A, C}
S = A, F ={B}

Tentukan DFA yang ekivalen


EKUIVALENSI NFA
• Soal 5:
0 B
0 1
A 1
1 C 0
0

Tentukan DFA yang ekivalen


TRIMS

Anda mungkin juga menyukai