Push Down Automata PDA Pertemuan 11 Mahasiswa mampu

  • Slides: 32
Download presentation
Push Down Automata (PDA) Pertemuan 11 Mahasiswa mampu menerapkan konsep & definisi mekanisme Kerja

Push Down Automata (PDA) Pertemuan 11 Mahasiswa mampu menerapkan konsep & definisi mekanisme Kerja Push Down Automata (PDA)

Materi • Mekanisme Kerja Push Down Automata (PDA) • Push Down Automata (PDA) untuk

Materi • Mekanisme Kerja Push Down Automata (PDA) • Push Down Automata (PDA) untuk suatu tata Bahasa Bebas Konteks

Mekanisme Kerja Push Down Automata (PDA) Agar dapat menggunakan model automata pada bahasa context

Mekanisme Kerja Push Down Automata (PDA) Agar dapat menggunakan model automata pada bahasa context free, maka diperlukan: 1. Sebuah stack atau memori push down yang dapat menyimpan sederetan simbol dengan panjang yang sebarang dan tak berhingga. 2. Selama proses pembacaan simbol pada stack, simbol teratas pada sebuah stack PDA memiliki kemungkinan sebagai berikut: Ø Stack tidak dapat diubah, atau Ø Simbol pada stack teratas akan dihapus (pop) dan digantikan dengan simbol yang lain (push).

Pushdown Automaton -- PDA String Masukan Tumpukan Keadaan 4

Pushdown Automaton -- PDA String Masukan Tumpukan Keadaan 4

Simbol Tumpukan Awal Tumpukan Kepala Tumpukan atas Simbol khusus penanda posisi dasar Sudah ada

Simbol Tumpukan Awal Tumpukan Kepala Tumpukan atas Simbol khusus penanda posisi dasar Sudah ada saat waktu ke-0 5

7 tupel pada PDA M = (Q, ∑, Г, Δ, S, F, Z) Q

7 tupel pada PDA M = (Q, ∑, Г, Δ, S, F, Z) Q = himpunan state ∑ = himpunan simbol input Г = simbol – simbol tumpukan / stack Δ = fungsi transisi S = state awal F = state akhir Z = simbol awal tumpukan

Penyelesaian A 1. State awal q 1, Top Stack Z, Input String “a” Δ(

Penyelesaian A 1. State awal q 1, Top Stack Z, Input String “a” Δ( q 1, a, z) = {( q 1, Az)} push A Z 2. Input string “b” dengan tumpukan A Δ( q 1, b, A) = {( q 1, ε)} pop A Z 3. Input string “b” dengan tumpukan Z Δ( q 1, b, z) = {( q 1, Bz)} push B B 4. Input string “a” dengan tumpukan B Δ( q 1, a, B) = {( q 1, ε)} pop B 5. Semua input telah selesai dibaca Δ( q 1, ε, z) = {( q 2, z)} Kesimpullan diterima : berakihir di state akhir {( q 2, z)} Z Z

Push Down Automata (PDA) untuk suatu tata Bahasa Bebas Konteks Contoh : D →

Push Down Automata (PDA) untuk suatu tata Bahasa Bebas Konteks Contoh : D → a. DA | b. Db | c Dapatkah menerima string “aca” Dapat dikontruksikan PDA- nya : 1. Terdapat 3 produksi : D → a. DA Fungsi transisi Г = { D, a, b, c, Z} : D → b. Db 1. Transisi D : D→c D → a. DA | b. Db | c Sehingga ada 3 state, maka : Δ( q 0, ε, z) = {( q 1, Dz)} Q = {q 0, q 1, q 2} D → a. DA | b. Db | c S = q 0 Δ( q 1, ε, D) = {( q 1, a. Da)}, {( q 1, b. Db)}, {( q 1, c)} 3. Transisi a, b, c F= {q 3 } Δ( q 1, a, a) = Δ( q 1, b, b)=Δ( q 1, c, c) = {( q 1, ε )} ∑ = {a, b, c} 4. Transisi Z Г = { D, a, b, c, Z} Δ( q 1, ε, z) = {( q 2, z)}

Deskripsi Instan / Seketika Keadaan saat ini Input tersisa Isi tumpukan saat ini 11

Deskripsi Instan / Seketika Keadaan saat ini Input tersisa Isi tumpukan saat ini 11

deskripsi seketika untuk string “aca” ( q 0, aca, z) |- ( q 1,

deskripsi seketika untuk string “aca” ( q 0, aca, z) |- ( q 1, aca, Dz) |- ( q 1, aca, a. Daz) |- ( q 1, ca, caz) |- ( q 1, a, az) |- ( q 1, ε, z) |- ( q 2, ε, z)

Contoh PDA yang lain The States Simbol Masukan Simbol ‘pop’ Simbol ‘push’ 13

Contoh PDA yang lain The States Simbol Masukan Simbol ‘pop’ Simbol ‘push’ 13

Masukan Tumpukan atas Gantikan 14

Masukan Tumpukan atas Gantikan 14

Masukan Tumpukan atas Push 15

Masukan Tumpukan atas Push 15

Masukan Tumpukan atas Pop 16

Masukan Tumpukan atas Pop 16

Masukan Tumpukan atas No Change 17

Masukan Tumpukan atas No Change 17

Tumpukan Kosong Masukan Tumpukan kosong atas Pop Keadaan HALTS Tidak ada transisi setelah 18

Tumpukan Kosong Masukan Tumpukan kosong atas Pop Keadaan HALTS Tidak ada transisi setelah 18

Transisi seperti ini dapat terjadi: Masukan Tumpukan atas Pop 19

Transisi seperti ini dapat terjadi: Masukan Tumpukan atas Pop 19

Non-Deterministik PDA adalah non-deterministik 20

Non-Deterministik PDA adalah non-deterministik 20

Contoh PDA 21

Contoh PDA 21

Ide pokok: 1. Push ‘a’ ke dalam tumpukan 2. Cocokkan ‘b’ sbg input dg

Ide pokok: 1. Push ‘a’ ke dalam tumpukan 2. Cocokkan ‘b’ sbg input dg ‘a’ dlm tumpukan 3. Cocok! 22

Contoh Eksekusi: Waktu ke-0 Masukan Tumpukan Keadaan saat ini 23

Contoh Eksekusi: Waktu ke-0 Masukan Tumpukan Keadaan saat ini 23

Waktu ke-1 Masukan Tumpukan 24

Waktu ke-1 Masukan Tumpukan 24

Waktu ke-2 Masukan Tumpukan 25

Waktu ke-2 Masukan Tumpukan 25

Waktu ke-3 Masukan Tumpukan 26

Waktu ke-3 Masukan Tumpukan 26

Waktu ke-4 Masukan Tumpukan 27

Waktu ke-4 Masukan Tumpukan 27

Waktu ke-5 Masukan Tumpukan 28

Waktu ke-5 Masukan Tumpukan 28

Waktu ke-6 Masukan Tumpukan 29

Waktu ke-6 Masukan Tumpukan 29

Waktu ke-7 Masukan Tumpukan 30

Waktu ke-7 Masukan Tumpukan 30

Waktu ke-8 Masukan Tumpukan diterima 31

Waktu ke-8 Masukan Tumpukan diterima 31

Suatu string diterima jika: Semua Masukan selesai dieksekusi DAN Keadaan terakhir merupakan keadaan yang

Suatu string diterima jika: Semua Masukan selesai dieksekusi DAN Keadaan terakhir merupakan keadaan yang diterima Pada keadaan akhir, isi tumpukan tidak diperdulikan (isi tumpukan dapat kosong) 32