Finite Automata I (FA) Pertemuan 23: Mata kuliah :K0144/ Matematika Diskrit Tahun :2008 Finite Automata I (FA) Pertemuan 23: Bina Nusantara
Learning Outcomes Mahasiswa dpt membandingkan berbagai bentuk algoritma FA untuk suatu ekspresi/Syntax program agar dapat dianalisis diterima/ditolak.. Bina Nusantara
Outline Materi: Algoritma Cheking Recoqnizer String, syntax & semantics Operasi String Aplikasi string Language.. Bina Nusantara
Pengertian Mathematical machines adalah model-model komputasi yang ditulis secara matematis dan merupakan dasar dari komputer modern yang berfungsi untuk menganalisis jalannya (execute) program serta merupakan model komputasi yang berfungsi sebagai acceptor (recognizer) dan transduser. Bina Nusantara
Klasifikasi Math.Machine Secara umum mathematical machines dapat diklasifikasikan dalam beberapa jenis, yaitu : - Finite Automata (FA) - Push-down Automata (PDA) - Turing Machine (TM) Bina Nusantara
Algoritma Cheking Ilustrasi model matematis (Finite Automata) untuk parity checking: Untuk memahami model matematis (finite automata) diberikan satu ilustrasi untuk parity checking, seperti berikut ini. Perhatikan masalah parity checking berikut : Jika rangkaian bit-bit diatas dianggap sebagai suatu string, bagaimana menggambarkan Finite Automata untuk memeriksa kebenaran string tersebut ? Bina Nusantara
Algoritma OddParity begin odd := false; for I := 1 to 9 do if frame [I] = 1 then if odd then odd := false else odd := true fi fi; od; parity := odd end. Bina Nusantara
Jika algoritma diatas diperhatikan maka ada dua situasi (state) yaitu pertama, ketika jumlah bit ‘1’ genap; kedua, ketika jumlah bit ‘1’ ganjil. Ketika ‘0’ dilalui maka state tidak berubah; akan tetapi ketika dijumpai ‘1’, maka state akan berubah. Bina Nusantara
Recognizer Untuk mengerti tentang finite automata, berikut ini diberikan satu contoh finite autumata untuk menggambarkan parity checking (Recognizer). Bina Nusantara
Semantics : FA digambarkan dalam bentuk graph berarah (direct graph) Dalam FA diatas, checking dimulai dari state even (genap); proses berakhir (dengan kebenaran) jika berakhir pada state odd (ganjil) - Periksa kebenaran string-string be-rikut : 010100110 (salah / rejected) 100011110 (benar / accepted) 001111001 (benar / accepted) Bina Nusantara
String : String adalah sesuatu deretan/sekuen dari karakter-karakter (definisi informal). Demikian juga string digunakan untuk membangun Building block dari bahasa pemrograman String dalam bahasa programming dibentuk dari karakter-karakter ASCII atau EBCDIC (untuk mesin-mesin tertentu). Dalam bahasa programming, string dapat berupa variable-names, bilangan, reserved words, dsb. Bina Nusantara
String ; (2) String adalah sekuen terbatas dari elemen-elemen . Himpunan seluruh String yang dibentuk dari , dinotasikan * Contoh : Bahasa Indonesia terdiri dari kata-kata. Kata-kata dalam bahasa Indonesia adalah string-string yang dibentuk dari alphabet {a,b,c,...,spasi,-,’} Contoh string : aku, kamu, mengapa, dsb Bina Nusantara
Syntax & Semantics : Syntax suatu bahasa adalah aturan yang menentukan apakah suatu string merupakan bagian dari bahasa yang didefinisikan. Semantics suatu bahasa adalah aturan yang menterjemahkan arti dari suatu string. Bina Nusantara
Operasi string : Operasi string terdiri dari dua, yaitu : - Concatenation dan Substring Concatenation dua buah string A dan B, yang dinotasikan AB, adalah sekuen yang terdiri dari sekuen A yang diikuti dengan sekuen B. Contoh : Misalkan string A adalah ‘protes’ dan string B adalah ‘keras’, maka string AB adalah ‘proteskeras’ dan string BA adalah ‘kerasprotes’. Perhatikan bahwa operasi concatenation tidak bersifat komutatif. Bina Nusantara
Operasi string : (2) ‘abcd’ adalah substring dari ‘cdabcdcdxy’ A dikatakan sebagai substring dari B bila seluruh sekuen simbol-simbol di A sbgi subsekuen di B Contoh : ‘abcd’ adalah substring dari ‘cdabcdcdxy’ ‘xyab’ adalah bukan substring dari ‘cdabcdcdxy’ Panjang string A, dinotasikan (A), adalah jumlah simbol pada string A. Suatu string yang panjangnya 0 disebut string kosong Contoh : (‘protes’) = 6 (‘keras’) = 5.. Bina Nusantara
FA sebagai Model Komputasi Finite Automata merupakan model komputasi paling sederhana yang menggambarkan bagaimana fungsi komputer dalam menjalankan program Ide dasar dari Finite Automata adalah bahwa komputer merupakan finite structure dimana informasi diproses dalam bentuk string Penggambaran FA : Finite Automata dapat digambarkan dengan beberapa cara, yaitu : Dengan Graph Berarah Dengan Notasi Formal 5-tuple Dengan Tabel State.. Bina Nusantara
Terima kasih, Semoga berhasil Bina Nusantara