finite

14
1 PENGGABUNGAN 2 FINITE STATE AUTOMATA Pada dua mesin Finite Automata kita dapat melakukan penggabungan, disebut union serta konkatensi. Misalkan kita mempunyai dua mesin NFA, M1 pada gambar 9 dan M2 pada gambar 10 Gambar 1. Mesin M 1 Gambar 2. Mesin M 2 Bila diketahui L(M1) adalah bahasa yang diterima oleh M1 dan L(M2) adalah bahasa yang diterima olehM2. Dilakukan operasi union berikut: L(M3) = L(M1) L(M2) (atau dengan notasi lsin: L(M3) = L(M1) + L(M2) ). Kita bisa membuat mesin M3 yang menerima bahasa L(M3) dengan cara: Tambahkan state awal untuk M3, hubungkan dengan state awal M1 dan state awal M2 menggunakan transisi PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom Teori Bahasa Otomata qA 1 qA 0 0 1 qB 1 qB 0 1 1 6

Upload: adjie-yusrikal

Post on 06-Aug-2015

108 views

Category:

Documents


13 download

DESCRIPTION

state

TRANSCRIPT

Page 1: finite

1

PENGGABUNGAN 2 FINITE STATE AUTOMATA

Pada dua mesin Finite Automata kita dapat melakukan penggabungan, disebut union serta

konkatensi. Misalkan kita mempunyai dua mesin NFA, M1 pada gambar 9 dan M2 pada gambar

10

Gambar 1. Mesin M1

Gambar 2. Mesin M2

Bila diketahui L(M1) adalah bahasa yang diterima oleh M1 dan L(M2) adalah bahasa yang

diterima olehM2. Dilakukan operasi union berikut: L(M3) = L(M1) L(M2) (atau dengan notasi

lsin: L(M3) = L(M1) + L(M2) ). Kita bisa membuat mesin M3 yang menerima bahasa L(M3)

dengan cara:

Tambahkan state awal untuk M3, hubungkan dengan state awal M1 dan state awal M2

menggunakan transisi

Tambahkan state akhir untuk M3, hubungkan dengan state-state akhir M1 dan state-state

akhir M2 menggunakan transisi

PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom

Teori Bahasa Otomata

qA1qA0

0

1

qB1qB01

1

6

Page 2: finite

2

Kita lihat operasi union ini pada gambar 11

qs da qf adalah state awal dan state final mesin baru kita.

Gambar 3. Mesin M3

KONKATENASI 2 FINITE STATE AUTOMATA

Ditentukan L(M4) = L(M1) L(M2). Kita bisa membuat mesin M4 yang menerima bahasa

L(M4) dengan cara:

State awal M1 menjadi state awal M4

State-state akhir M2 menjadi state akhir M4

Hubungan state-state akhir M1 dengan state awal M2 menggunakan transisi .

Kita lihat hasil operasi konkatensi ini pada gambar 12.

Gambar 4. Mesin M4

PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom

Teori Bahasa Otomata

q1

qA0

0

1

qS

qB0 qB1

qA1

1

1

qfqS qB

0

qA

1

0

1 1

1

0

Page 3: finite

3

ALUR PENGEMBANGAN FSA

FSA hasil operasi gabungan atau konkatenasi adalah sebuah NFA -move. Untuk

selanjutnya harus diubah menjadi NFA tanpa -move.

Secara lebih lengkap alur pengembangan FSA dapat digambarkan sebagai berikut :

PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom

Teori Bahasa Otomata

Problem

NFA -move

NFA -move

NFA -move

NFA -move

NFA Sederhana

NFA

DFAOptimal

DFA

Sub Problem

Sub Problem

Sub Problem

Analisa masalah dan perancangan FSA awal

Operasi Gabungan atau operasi konkatenasi

Reduksi -move

Penyederhanaan FSA

Ekivalensi NFA to DFA

Reduksi useless state

Page 4: finite

4

SOAL-SOAL UNTUK PERSIAPAN UTS

Soal A :

Diberikan mesin automata sebagai berikut :

Q = {p, q, r, s}; = {0, 1}; S = p ; F = {s}

Untuk setiap tabel transisi gambarkan diagram mesinnya (diagram state) lembar jawaban anda,

dan jawablah soal dikolom sampingnya

Tabel transisi Soal

I. 1. tentukanlah apakah 0110 diterima atau ditolak2. tentukanlah apakah 1001 diterima atau ditolak3. tentukanlah apakah 110 diterima atau ditolak4. tentukanlah apakah 1001 diterima atau ditolak5. tentukanlah apakah 01011 diterima atau ditolak6. tentukanlah apakah 001 diterima atau ditolak7. tentukanlah apakah 100 diterima atau ditolak

II. 8. tentukanlah apakah 0110 diterima atau ditolak9. tentukanlah apakah 1001 diterima atau ditolak10. tentukanlah apakah 110 diterima atau ditolak11. tentukanlah apakah 1001 diterima atau ditolak12. tentukanlah apakah 01011 diterima atau ditolak13. tentukanlah apakah 001 diterima atau ditolak14. tentukanlah apakah 100 diterima atau ditolak

III 15. tentukanlah apakah 0110 diterima atau ditolak16. tentukanlah apakah 1001 diterima atau ditolak17. tentukanlah apakah 110 diterima atau ditolak18. tentukanlah apakah 1001 diterima atau ditolak19. tentukanlah apakah 01011 diterima atau ditolak20. tentukanlah apakah 001 diterima atau ditolak21. tentukanlah apakah 100 diterima atau ditolak

PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom

Teori Bahasa Otomata

0 1

p p, q p

q r r

r s -

s s s

0 1

p q p

q r s

r s q

s p s

0 1

p q r

q r p

r s r

s q s

Page 5: finite

5

Bagian B :

Untuk setiap diagram mesin (diagram state) berikut tuliskanlah definisi formal 5 tuple dan tabel

transisinya pada lembar jawaban anda, dan jawablah soal dikolom sampingnya

Diagram state soalI. Tentukanlah apakah string berikut dapat diterima atau

ditolak :1. 11012. 01013. 10014. 10105. 0011

II.

Tentukanlah apakah string berikut dapat diterima atau ditolak

6. 11017. 01018. 10019. 101010. 0011

III.Tentukanlah apakah string berikut dapat diterima atau ditolak

11. 110112. 010113. 100114. 101015. 0011

PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom

Teori Bahasa Otomata

q0 q1

q2 q3

1

1

1

1

00

00

q3q1

q0

q2

1

1

1

1

0

0

0

0

q4

q5

0, 1

0, 1

q3q1

q0

q2

1

1

1

1

0

000

q4

q5

0, 1

0

1

Page 6: finite

6

Bagian C :

1. Buatlah Deterministic Finite Automata yang ekivalen dengan Non-deterministic Finite

Automata berikut :

Q = {p, q, r, s}; = {0, 1} ; S = p ; F = {s}

Fungsi transisinya dinyatakan dalam tabel transisi :

2. Buatlah Deterministic Finite Automata yang ekivalen dengan Non-deterministic Finite

Automata berikut :

Q = {q0, q1, q2}; = {0, 1}; S = q0 ; F = {q1}

Fungsi transisinya dinyatakan dalam tabel transisi :

3. Lakukan reduksi jumlah state pada DFA berikut ini

4. Lakukan reduksi jumlah state pada DFA berikut ini

PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom

Teori Bahasa Otomata

0 1

p p, q p

q r r, p

r s -

s - s

0 1

q0 q1 -

q1 q1, q2 q2

q2 q0 q1, q2

q3q1

q0

q31

1

1

1

0

0

00

q4

q5

0, 1

0, 1

10

Page 7: finite

7

5. Pelajarilah dengan seksama persoalan berikut ini :

Sebuah rombongan yang terdiri dari 3 orang bikshu dan 3 orang kanibal tiba ditepi sebuah

sungai yang dalam dan berbahaya. Satu-satunya cara untuk menyebrangi sungai adalah

dengan sebuah perahu yang tertambat dipinggir sungai tersebut.

Perahu hanya mampu memuat 2 orang penumpang. Perahu tidak memiliki tukang dayung

sehingga mesti ada bikshu atau kanibal membawa perahu dari satu sisi ke-sisi lainnya.

Persoalannya adalah jika disatu keadaan terdapat lebih banyak kanibal dibanding bikshu,

maka bikshu tersebut akan dimakan oleh kanibal tersebut.

a. Definisikanlah suatu mesin automata yang menggambarkan penyelesaian

persoalan tersbut.

b. Definisikanlah bentuk formal 5 tuple dari mesin yang anda buat.

6. Bila diketahui L(M1) adalah bahasa yang diterima oleh M1 pada gambar 1, dan L(M2)

adalah bahasa yang diterima oleh M2 pada gambar 2. Diketahui L(M3) = L(M1) + L(M2),

serta L(M4) = L(M1)L(M2). Gambarkan :

a. Mesin M3 yang menerima bahasa L(M3)

b. Mesin M4 yang menerima bahasa L(M4)

0

1

0,1

Gambar 1

0

PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom

Teori Bahasa Otomata

q4

q1

q0

q3

1 1

10

0q2

0, 10

q0

q0

q1

q1 q1

Page 8: finite

8

0

Gambar 2

7. Dari diagram NFA dengan ε – moves berikut, gambarkan diagram NFA tanpa ε – moves

yang ekivalen dengannya.

a

ε

b ε

b

Silabus Teori Bahasa dan Otomata

Cakupan Materi Perkuliahan :

1. Pendahuluan

Sasaran : Mahasiswa memahami pengertian dan kedudukan Teori Bahasa dan Otomata

(TBO) pada ilmu komputer

Bahan :

Definisi dan Pengertian Teori Bahasa dan Otomata

Teori bahasa dan otomata dalam ilmu komputer

Tata bahasa

Klasifikasi Tata Bahasa

PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom

Teori Bahasa Otomata

q0 q1

q2

Page 9: finite

9

2. Teknik Kompilasi

Sasaran : Mahasiswa mengenal dan memahami struktur cara kerja kompilator

Materi :

Bahasa Pemrograman

Translator

Model Kompilator

Penganalisa Leksikal

Penganalisa Sintaksis

3. Finite State Automata

Sasaran : Mahasiswa memahami Finite State Automata (FSA) dan dapat mengeksekusi

suatu mesin otomata

Materi :

Implemetasi FSA

Deterministic Finite Automata (DFA)

Non Deterministic Finite Automata (NFA)

Ekivalensi

Reduksi State

Translasi NFA ke DFA

NFA dengan ε-move

4. Ekspresi Reguler

Sasaran : mahasiswa mamahami pengertian ekspresi Reguler dan menurunkan aturan

produksi bahasa reguler dari suatu FSA

Materi :

implmentasi ekpresi reguler

notasi ekspresi reguler

hubungan ekspresi reguler dan FSA

Aturan produksi bahasa reguler

Rekonstruksi aturan produksi

5. FSA dengan Output

Sasaran : Mahasiswa memahami model FSA dengan output

Mesin Moore

Mesin Meally

PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom

Teori Bahasa Otomata

Page 10: finite

10

Ekivalensi mesin Moore dan Mesin Meally

6. Pohon Penurunan

Sasaran : mahasiswa memahamai pohon penurunan dari suatu tata bahasa.

Materi :

Pohon penurunan

Tata bahasa

Parsing

Ambiguitas

7. CFG

Materi : Mahasiswa memahamai dan dapat membangun suatu tata bahasa bebas konteks

(CFG)

Materi :

Bentuk CFG

Penyederhanaan CFG

Produksi Useless

Produksi unit

Produksi ε

8. Bentuk Normal

Sasaran : Mahasiswa mengenal dan memahamai bentuk normal

Materi :

Pengertian bentuk normal

Bentuk normal Chomsky

Membangun bentuk normal Chomsky

9. Rekursif Kiri

Sasaran : Mahasiswa memahamai pengertian rekursif kiri dan dapat mentranslasikan tata

bahasa dengan rekursif kiri

Materi :

Aturan produksi rekursif

Tahapan Reduksi Rekursif kiri

10. Mesin Turing

Sasaran : mahasiswa mengenal dan memahamai konsep mesin turing

Materi :

Spesifikasi mesin turing

PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom

Teori Bahasa Otomata

Page 11: finite

11

Mekanisme kerja mesin turing

Deskripsi seketika mesin turing

PUSAT PENGEMBANGAN BAHAN AJAR – UMB Puji Catur Siswipraptini S.Kom

Teori Bahasa Otomata