Anda di halaman 1dari 4

Nama Anggota :

1. Julius Mario (5160411153)


2. Yudha Prasetyo (5160411155)
3. Daniel Yudha (5160411175)
4. Mochammad N. Arifin (5160411181)

Rangkuman DFA dan NFA

Finite State Automata (FSA) adalah model matematika yang dapat menerima
input dan mengeluarkan output yang memiliki state yang berhingga banyaknya dan
dapat berpindah dari satu state ke state lainnya berdasarkan input dan fungsi transisi.
Finite state automata tidak memiliki tempat penyimpanan/memory, hanya bisa
mengingat state terkini.

Secara formal FSA dapat didefinisikan sebagai TUPLE-5 : (K, VT, M, S, Z)


Dimana :
K : himpunan hingga stata,
VT : himpunan hingga simbol input (alfabet)
M : fungsi transisi, menggambarkan transisi stata AH akibat pembacaan simbol
input.(Fungsi transisi ini biasanya diberikan dalam bentuk tabel.)
S K : stata awal
Z K : himpunan stata penerima

Ada dua jenis Finite State Automata :


1. Deterministic Finite Automata (DFA)
Jika pada setiap state dari FSA tersebut apabila menerima input sebuah simbol
maka HANYA ada SATU NEXT STATE yang mungkin dituju.
Contoh 1:

K = {q0, q1, q2} Diberikan dalam tabel berikut :


VT = {a, b}
S = q0
Z = {q0, q1}

Ilustrasi graf untuk DFA F adalah sebagai berikut :


• Lambang stata awal adalah node dengan anak panah.
• Lambang stata awal adalah node ganda

Telusurilah, apakah kalimat-kalimat berikut diterima DFA : abababaa, aaaabab,


aaabbaba.
Jawab :
M(q0,abababaa) M(q0,bababaa) M(q1,ababaa) M(q0,babaa)
M(q1,abaa) M(q0,baa) M(q1,aa) M(q0,a) q0
Tracing berakhir di q0 (stata penerima) = kalimat abababaa diterima

M(q0, aaaabab) M(q0,aaabab) M(q0,aabab) M(q0,abab)


M(q0,bab) M(q1,ab) M(q0,b) q1
Tracing berakhir di q1 (stata penerima) = kalimat aaaababa diterima

M(q0, aaabbaba) M(q0, aabbaba) M(q0, abbaba) M(q0, bbaba)


M(q1,bbaba) M(q2,baba) M(q2,aba) M(q2,ba)
M(q2,a) q2
Tracing berakhir di q2 (bukan stata penerima) = kalimat aaabbaba ditolak
Contoh 2:
Pengujian untuk menerima bit string dengan banyaknya 0 genap, serta
banyaknya 1 genap.
0011 : diterima
10010 : ditolak, karena banyaknya 0 ganjil
Diagram transisi-nya :

DFA nya:
Q = {q0 , q1 , q2 , q3 }
Σ = {0,1}
S = q0
F = { q0}
fungsi transisi adalah:

δ( q0,011)= δ( q2,11) =δ( q3,1)= q2  Ditolak


δ( q0,1010)= δ( q1,010) =δ( q3,10)=δ( q2,0)= q0 Diterima

2. Non Determinisric Finite Automata (NFA) atau NDFA


Transisi stata AH akibat pembacaan sebuah simbol bersifat tak tentu. “Jika
FSA tersebut menerima input simbol maka minimal ada satu state yang akan
berpindah ke LEBIH DARI SATU NEXT STATE yang mungkin dituju.”
Perbedaan dengan NFA: fungsi transisi dapat memiliki 0 atau lebih fungsi
transisi.
Contoh 1:
G = ({q0 , q1 , q2 , q3, q4 }, {0,1}, δ , q0 , {q2 , q4}}
Contoh Nondeterministic Finite Automata

 String diterima NFA bila terdapat suatu urutan transisi berdasarkan input, dari
state awal ke state akhir.

 harus mencoba semua kemungkinan.

Contoh 2:

d (q0, a) = {q0, q1}


Konfigurasi NFA secara formal adalah sebagai berikut :
Q = {q0, q1 }
∑ = {a, b}
S = q0
F = {q1}
Fungsi-fungsi transisinya sebagai berikut :
d (q0, a) = {q0,q1},
d (q0, b) = q1,
d (q1, a) = q1,
d (q1, b) = q1,
Jika disajikan dalam tabel transisi :
 a b
q0 {q0,q1} {q1}
q1 {q1} {q1}

Anda mungkin juga menyukai