14-Push Down Otomata
14-Push Down Otomata
Stack / Tumpukan
• Kumpulan dari elemen-elemen sejenis dengan sifat
penambahan elemen dan pengambilan elemen melalui suatu
tempat yang disebut top of stack
• LIFO (Last in First Out)
• Pengambilan elemen dinyatakan dengan operasi POP
• Penambahan elemen dinyatakan dengan PUSH
Push Down Otomata
Stack / Tumpukan
• Contoh stack
PDA Tuple
• Q = Himpunan state
• Σ = Himpunan symbol input
• Г = Simbol-symbol stack
• ∆ = Fungsi transisi
• S = State awal S, dimana S є Q
• F = Himpunan state akhir, F⊆Q
• Z = Simbol awal tumpukan Z є Г
Push Down Otomata
Contoh PDA
• Q = {q1, q2} Fungsi Transisi
• Σ = {a,b} • ∆ (q1, ε, Z) = {(q2, Z)}
• Г = {A, B, Z} • ∆ (q1, a, Z) = {(q1, AZ)}
• S = q1 • ∆ (q1, b, Z) = {(q1, BZ)}
• F = {q2} • ∆ (q1, a, A) = {(q1, AA)}
• Z =Z • ∆ (q1, b, A) = {(q1, ε )}
• ∆ (q1, a, B) = {(q1, ε)}
• ∆ (q1, b, B) = {(q1, BB)}
Push Down Otomata
Contoh PDA
Fungsi Transisi berikut dibaca dengan cara
• ∆ (q1, a, Z) = {(q1, AZ)}
Mesin dengan konfigurasi
State q1 dan top-stack Z membaca input ‘a’
Konfigurasi menjadi :
State q1, push A ke stack, A menjadi top stack
Push Down Otomata
Contoh PDA
Fungsi Transisi berikut dibaca dengan cara
• ∆ (q1, b, A) = {(q1, ε )}
Mesin dengan konfigurasi
State q1 dan top-stack A membaca input ‘b’
Konfigurasi menjadi :
State q1, A diPOP, elemen di bawah A menjadi TOP
Push Down Otomata
Contoh PDA
Fungsi Transisi berikut dibaca dengan cara
• ∆ (q1, ε, Z) = {(q2, Z)}
Mesin dengan konfigurasi
State q1 dan top-stack Z serta tanpa membaca input (ε)
Konfigurasi menjadi :
State q2, Stack tidak berubah
Push Down Otomata
Contoh Kasus
Misalnya ingin diketahui, apakah string “abba” diterima oleh PDA
tersebut di atas.
1. Konfigurasi awal mesin:
state q1, top stack Z, membaca input ‘a’
fungsi transisinya
∆ (q1, a, Z) = {(q1, AZ)}
Konfih=gurasi mesin menjadi: State q1, A dipush
Push Down Otomata
Contoh Kasus
Misalnya ingin diketahui, apakah string “abba” diterima oleh PDA
tersebut di atas.
2. Membaca input ‘b’
fungsi transisinya
∆ (q1, b, A) = {(q1, ε )}
Konfigurasi mesin menjadi: State q1, top stack diPOP
Push Down Otomata
Contoh Kasus
Misalnya ingin diketahui, apakah string “abba” diterima oleh PDA
tersebut di atas.
3. Membaca input ‘b’
fungsi transisinya
∆ (q1, b, Z) = {(q1, BZ)}
Konfigurasi mesin menjadi: State q1, B diPUSH
Push Down Otomata
Contoh Kasus
Misalnya ingin diketahui, apakah string “abba” diterima oleh PDA
tersebut di atas.
4. Membaca input ‘a’
fungsi transisinya
∆ (q1, a, B) = {(q1, ε)}
Konfigurasi mesin menjadi: State q1, top stack diPOP
Push Down Otomata
Contoh Kasus
Misalnya ingin diketahui, apakah string “abba” diterima oleh PDA
tersebut di atas.
5. Semua input sudah selesai dibaca
fungsi transisinya
∆ (q1, ε, Z) = {(q2, Z)}
Konfigurasi mesin menjadi: State q2,
State q2 berada dalam F (final state), maka “abba” diterima oleh PDA
tersebut
Ada Pertanyaan ?
“Tetap semangat, setiap usaha kita
dalam menuntut ilmu akan dibalas
oleh Tuhan Yang Maha Esa”