Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

PUSH DOWN AUTOMATA (PDA)

Presentasi serupa


Presentasi berjudul: "PUSH DOWN AUTOMATA (PDA)"— Transcript presentasi:

1 PUSH DOWN AUTOMATA (PDA)
Kuliah Teori Bahasa dan Otomata S1 Teknik Informatika STMIK “Amikom” Yogyakarta by Sumarni Adi

2 Pengantar PDA merupakan mesin otomata dari bahsa bebas konteks Bila FSA mempunyai kemampuan memori yg terbatas, maka pada PDA didefinisikan sebuah tempat penyimpanan yg tidak terbatas karena berupa stack/tumpukan Stack adalah kumpulan dari elemen2 sejenis dgn sifat penambahan dan pengambilan elemen melalui top of stack

3 Pengantar Cara kerja stack dgn menganut prinsip LIFO (last in first out) Pengambilan elemen dari stack dinyatakan dengan operasi “pop”,sedangkan Memasukkan elemen ke dalam stack dgn operasi “push” Contoh stack : top of Stack  Bila di POP : Bila di Push B : A D E D E B D E

4 PDA dinyatakan dalam 7 tupel
M = (Q, , , S , Z , ∆, F), dimana : Q : himpunan hingga state,  : alfabet input,  : alfabet stack, S : state awal, S  Q Z : simbol awal tumpukan/top stack, Z   ∆ : fungsi transisi F : state akhir, F  Q

5 PDA dinyatakan dalam 7 tupel
Dari komponen sebelumnya bisa dilihat: Definisi untuk :Q, , S, F sama dengan pada FSA tupel baru : dan Z ∆ memiliki kemiripan dgn  pada FSA namun ada perbedaannya

6 Contoh sebuah PDA : Q = {q1,q2} = {a,b}  = {A,B,Z} S = q1 Z = Z
F = q2 Memiliki fungsi transisi sbb : ∆ (q1,έ,Z) = {(q2,Z)} …1 ∆ (q1,a,Z) = {(q1,AZ)} … 2 ∆ (q1,b,Z) = {(q1,BZ)} … 3 ∆ (q1,a,A) = {(q1,AA)} … 4 ∆ (q1,b,A) = {(q1, έ)} … 5 ∆ (q1,a,B) = {(q1, έ)} … 6 ∆ (q1,b,B) = {(q1, BB)} … 7

7 Membaca fungsi transisi
Cara membaca transisi ini : ∆ (q1, έ,Z) = {(q2,Z)} State q1 dan top-stack Z membaca input “έ” Cara membaca transisi ini : ∆ (q1,a,Z) = {(q1,AZ)} State q1 dan top-stack Z membaca input “a”, konfigurasi menjadi : state q1, push A ke stack, A menjadi top-stack Cara membaca transisi ini : ∆ (q1,b,Z) = {(q1,BZ)} State q1 dan top-stack Z membaca input “b”, konfigurasi menjadi : state q1, push B ke stack, B menjadi top-stack Z A Z B Z

8 Membaca Fungsi Transisi
cara membaca transisi ini : ∆ (q1,b,A) = {(q1, έ)} state q1 dan top stack A membaca input ‘b’ konfigurasi menjadi : state q1, A di pop, elemen di bawah A menjadi top –Stack Cara membaca transisi ini : ∆ (q1,έ,Z) = {(q2,Z)} state q1 dan top –Stack Z, serta tanpa membaca input (έ) konfigurasi menjadi : state q2, stack tidak berubah A Z Z

9 Contoh misal ingin diketahui apakah string ‘abba’ diterima oleh PDA di atas ? Konfigurasi awal mesin : state q1, top stack Z, membaca input ‘a’ fungsi transisinya (2) : ∆ (q1,a,Z) = {(q1,AZ)} konfigurasi mesin menjadi : state q1, A di Push A Z

10 Contoh Membaca input ‘b’. Fungsi transisinya (5) : ∆ (q1,b,A) = {(q1, έ)} konfigurasi mesin menjadi : state q1, top stack di pop Membaca input ‘b’. Fungsi transisinya (3) : ∆ (q1,b,Z) = {(q1,BZ)}konfigurasi mesin menjadi : state q1, B di push Membaca input ‘a’ Z B Z

11 Contoh Membaca input ‘a’. Fungsi transisinya (6) : ∆ (q1,a,B) = {(q1, έ)}. Konfigurasi mesin menjadi : state q1, top stack di pop Semua input sudah dibaca. Fungsi transisinya (1) : ∆ (q1,έ,Z) = {(q2,Z)}. Konfigurasi mesin menjadi : state q2, steteq2 berada dalam F (final state), maka ‘abba’ diterima oleh PDA itu  Z

12 latihan Diketahui PDA : M = (Q, , , q , Z , ∆, F) dengan Q = {q0 , q1 , q2 }, F = { q2 },  = {a, b, c},  = {A, B, Z0 }, dan fungsi transisi ∆ terdefinisi melalui tabel berikut :


Download ppt "PUSH DOWN AUTOMATA (PDA)"

Presentasi serupa


Iklan oleh Google