Pertemuan 11 PUSH DOWN AUTOMATA (PDA)

1 / 15

# Pertemuan 11 PUSH DOWN AUTOMATA (PDA) - PowerPoint PPT Presentation

Pertemuan 11 PUSH DOWN AUTOMATA (PDA). Matakuliah : T0162/Teori Bahasa dan Automata Tahun : 2009. PUSH DOWN AUTOMATA (PDA).

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

## PowerPoint Slideshow about 'Pertemuan 11 PUSH DOWN AUTOMATA (PDA)' - sidonia-orsin

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### Pertemuan 11PUSH DOWN AUTOMATA(PDA)

Matakuliah : T0162/Teori Bahasa dan Automata

Tahun : 2009

PUSH DOWN AUTOMATA(PDA)
• The pushdown automaton is essentially an e-NFA with the addition of a stack. The stack can be read, pushed and poped only at the top just like the “stack” data structure
PUSH DOWN AUTOMATA(PDA)

PUSH

POP

Check : state, input symbol,

stack symbol

PUSH DOWN AUTOMATA(PDA)

PDA menerima language dengan dua cara :

2. Finite Automaton masuk final state

Definisi Secara formal, PDA :

M = (Q, , , , q0, Z0, F)

PUSH DOWN AUTOMATA(PDA)

dimana :

Q : Himpunan state

 : Alphabet input

 : Alphabet Stack

q0 Q : State awal

Z0: Start symbol stack

F  Q : Himpunan final state

 : Fungsi transisi :

Q  ( {})  Subset Q  *

PUSH DOWN AUTOMATA(PDA)

Move :

• Fungsi transisi (move) pada deterministic PDA didefinisikan sebagai :

1. (q,a,z) = (p,Y)

dimana : q, p : state

a 

z : stack symbol

Y  *

2. (q,,z) = (p,Y)

Penting:

• (q, a, Z) = (q, AZ). Push/insert
• (q, a, A) = (q1, ). Pop /delete
• Untuk state q  Q, simbol input a , dan simbol stack X, (q, a, X) = (p, ) berarti : PDA bertransisi ke state p dan mengganti X pada stack dengan string .
Example PDA
• PDA : M = (Q, , , q , Z , , F)
• pengenal palindrome L = {xcxx  (ab)*}, dimana x adalah cermin(x), mempunyai tuple :
• Q = {qo, q1, q2}, F = { q},  = {a, b, c},  = {A, B, Z}, dan fungsi transisi  terdefinisi melalui tabel berikut :
Example PDA(2)

Dapat ditulis (q, a, Z) = (q, AZ)

Mesin dengan konfigurasi :

State q0 dan top stack Z membaca input’a’  konfigurasi menjadi State q0 ,push A ke stack A, A menjadi top stack

Dapat ditulis (q1 ,a, A) = (q1 ,)

Mesin dengan konfigurasi :

State q1 dan top stack A membaca input’a’  konfigurasi menjadi State q1 , A di pop, elemen dibawah A menjadi top stack

Example PDA(3)
• Sebagai contoh, perhatikan bahwa fungsi transisi No. 1 dapat dinyatakan sebagai : (q, a, Z) = (q, AZ). Pada tabel transisi tersebut terlihat bahwa pada state q PDA akan melakukan PUSH jika mendapat input a atau b dan melakukan transisi state ke state q jika mendapat input c. Pada state q PDA akan melakukan POP.

Berikut ini pengenalan string :

abcba : (q, abcba, Z)  (q, bcba, AZ)(1)

 (q, cba, BAZ) (4)

 (q, ba, BAZ) (9)

 (q, a, AZ) (11)

 (q, , Z) (10)

 (q, , Z)(12)(diterima)

acb : (q, acb, Z) (q, cb, AZ)

 (q, b, AZ)

(halt/crash ditolak)

• Penerimaan dan penolakan tiga string di atas dapat dijelaskan sebagai berikut :
• string abcba diterima karena tracing sampai di state penerima (q) dan string “abcba” selesai dibaca (string yang belum dibaca = )
• string acb ditolak karena konfigurasi akhir (q, b, a Z) sedangkan fungsi transisi (q, b, a) tidak terdefinsi
Nondeterministik PDA
• PDA M = (Q, , , q, Z, , F) pengenal palindrome L = {xxx  (ab)*} mempunyai komponen tuple berikut :
• Q = {q, q, q}, F = { q},  = {a, b},  = {a, b, Z}, dan fungsi transisi  terdefinisi melalui tabel berikut :
Nondeterministik PDA

q0,aba,z = q0,ba,az (1 kiri)

= q1, a, az (4 kanan)

= q1, , z(10)

=q2, , (12) diterima

q0,aba,z = q0,ba,az (1 kiri)

= q0, a, baZ (4 kiri)

= q1, ,baZ (5 kanan)

= halt