100 likes | 436 Views
BAB 13. PUSH DOWN AUTOMATA. Push Down Automata (PDA) adalah mesin otomata dari bahasa bebas konteks (CFG) Finite State Automata (FSA) adalah mesin otomata pada bahasa reguler Perbedaan PDA dan FSA : PDA Tempat penyimpanan tidak terbatas berupa stack/tumpukan
E N D
BAB 13 PUSH DOWN AUTOMATA
Push Down Automata (PDA) adalah mesin otomata dari bahasa bebas konteks (CFG) • Finite State Automata (FSA) adalah mesin otomata pada bahasa reguler • Perbedaan PDA dan FSA : • PDA • Tempat penyimpanan tidak terbatas berupa stack/tumpukan • Dari Deterministic PDA bisa diubah ke Nondeterministic PDA • FSA • Mempunyai kemapuan memori yang terbatas • Dari Nondeterministic FSA bisa diubah ke Deterministic FSA
Stack adalah kumpulan dari elemen-elemen sejenis dengan sifat penambahan elemen dan pengambilan elemen melalui suatu tempat yang disebut top stack • Operasi Pop adalah pengambilan elemen dari stack • Operasi Push adalah memasukkan elemen ke dalam stack • Contoh Stack Top Stack
Operasi pop Operasi push B
Tujuh tupel untuk Push Down Automata adalah : Q = himpuanan state = himpunan simbol input = simbol-simbol stack = fungsi transisi S = state awal F = himpunan state akhir Z = simbol awal stack / top stack
Push Down Automata Untuk suatu Tata Bahasa Bebas Konteks Sebuah PDA dapat dibuat dari kumpulan aturan produksi dari suatu tata bahasa bebas konteks dengan langkah-langkah : • Definisikan Q = {q1,q2,q3} S = q1 F = {q3} = simbol terminal = semua simol variabel, terminal, dan Z (simbol awal stack) • Dimulai dengan mem-push Z pada top stack • Konstruksikan empat tipe transisi, yaitu :
(q1,,Z) = {(q2,SZ)} • (q2,,A) = {(q2,w) | Aw adalah sebuah aturan produksi } untuk semua variabel A • (q2,a,a) ={(q2,)} untuk setiap simbol terminal • (q2,,Z) = {(q3,Z)} Bila semua input telah dibaca dan top stack adalah Z, berarti string input sukses diterima oleh PDA (q3 state akhir)
Deskripsi Seketika Pada Mesin PDA • Tahapan PDA untuk suatu tata bahasa bebas konteks dapat dinyatakan dalam bentuk deskripsi seketika (instantanoeous description). • Perubahan dari suatu kondisi keberikutnya dipisahkan dengan | • Konfigurasi pada suatu saat dinyatakan dengan triplet :(q,w,u)
Ekivalensi Final State PDA dan Null Stack PDA • Final State PDA ke Null Stack PDA • Tupel Final State PDA M1= (Q,,,,S,F,Z) berubah menjadi M2 = (Q U {qs.qf}, , U {X}, ’, qs, , X) • Ada penambahan fungsi transisi : • ’ (qs, , X) = {(S,ZX)} • ’ (q, , X) = {(qf,X)} • Null Stack PDA ke Final State PDA • Tupel Final State PDA M1= (Q,,,,S,F,Z) berubah menjadi M2 = (Q U {qs.qf}, , U {X}, ’, qs, {qf}, X) • Ada penambahan fungsi transisi : • ’ (qs, , X) = {(S,ZX)} • ’ (q, , X) = {(qf,X)}
Null Stack PDA ke Final State PDA • Tupel Final State PDA M1= (Q,,,,S,F,Z) berubah menjadi M2 = (Q U {qs.qf}, , U {X}, ’, qs, {qf}, X) • Ada penambahan fungsi transisi : • ’ (qs, , X) = {(S,ZX)} • ’ (q, , X) = {(qf,X)}