You are here: Home > Teknik Kompilasi > Teknik Kompilasi – Finite Automata

Teknik Kompilasi – Finite Automata

Salah satu materi yang dibahas dalam teknik kompilasi adalah Finite Automata. Saat diberikan RE maka kita dapat membuat DFA minimalnya dengan langkah sebagai berikut

1 . Membuat ε-NFA dengan aturan Thompson

2. Menggambarkan node-node di diagram ε-NFA ke state-state dengan penelusuran ε

3. Menggambarkan diagram DFA

4. Menyederhanakan DFA menjadi DFA minimal

Berikut adalah salah 1 contoh soal berikut penjelasannya

RE = (ab|a)+ b+ (a|b)*

Gambar ε-NFA dari RE diatas adalah

10014684_637033233011103_1247076468_n

S= ε-closure {0} = {0, 1, 4}

ε-closure (move(S0,, a)) = ε-closure{2, 5} = {0, 1, 2, 4, 5, 6, 7} => S1

ε-closure (move(S0,, b)) = ε-closure{-} => 

ε-closure (move(S1, a)) = ε-closure{2, 5} => S1

ε-closure (move(S1, b)) = ε-closure{3, 8} = {0, 1, 3, 4, 6, 7, 8, 9, 10, 12, 15} => S2*

ε-closure (move(S2*, a)) = ε-closure{2, 5, 11} = {0, 1, 2, 4, 5, 6, 7, 9, 10, 11, 12, 14, 15} => S3*

ε-closure (move(S2*, b)) = ε-closure{8, 13} = {7, 8, 9, 10, 12, 13, 14, 15} => S4*

ε-closure (move(S3*, a)) = ε-closure{2, 5, 11} => S3*

ε-closure (move(S3*, b)) = ε-closure{3, 8, 13} = {0, 1, 3, 4, 6, 7, 8, 9, 10, 12, 13, 14, 15} => S5*

ε-closure (move(S4*, a)) = ε-closure{11} = {9, 10, 11, 12, 14, 15} => S6*

ε-closure (move(S4*, b)) = ε-closure{8, 13} => S4*

ε-closure (move(S5*, a)) = ε-closure{2, 5, 11} => S3*

ε-closure (move(S5*, b)) = ε-closure{8, 13} => S4*

ε-closure (move(S6*, a)) = ε-closure{11} => S6*

ε-closure (move(S6*, b)) = ε-closure{13} = {9, 10, 12, 13, 14, 15}  => S7*

ε-closure (move(S7*, a)) = ε-closure{ 11} => S6*

ε-closure (move(S7*, b)) = ε-closure{13} => S7*

 1185452_637033239677769_996595499_n

Setelah mendapatkan DFA maka kita akan meminimalkan DFA terebut. Salah satu cara meminimalkan DFA adalah dengan cara partisi.

1904112_637033246344435_1065400147_n

Setelah menentukan tabel diatas maka kita menemukan state mana saja yang akan di gabungkan, Dan gambar DFA minimal menjadi berikut

1911900_637033236344436_1372518178_n

Demikian salah satu contoh merubah RE menjadi DFA minimal. Soal diatas dibuat oleh kelompok 7 Teknik Kompilasi 06  PST Bina Nusantara University. 

Back Link

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • Twitter
  • RSS

Leave a Reply