Bangun PDA untuk komplemen dari


16

Saya bertanya-tanya apakah ini bahkan mungkin, karena {anbncnn0}CFL . Oleh karena itu PDA yang dapat membedakan kata w{anbncnn0} dari sisa {abc} mungkin juga menerimanya, yang kedengarannya bertentangan dengan saya.

Saya kira saya perlu mengambil keuntungan dari sifat PDA yang tidak deterministik tetapi saya kehabisan ide. Jika Anda bisa memberikan saran, saya akan sangat menghargainya.


Poin menarik tentang itu sepertinya kontradiktif. Memang, bahasa bebas konteks tidak ditutup dengan mengambil pelengkap ... jadi ada banyak contoh bahasa bebas konteks yang bisa "diterima" dalam arti yang Anda singgung. Saya bukan ahli teori dan, dengan demikian, tidak bisa benar-benar mendamaikan ini, tapi mungkin orang lain bisa berpura-pura mengapa ini bukan sesuatu yang perlu dikhawatirkan?
Patrick87

Perhatikan bahwa ini menggeneralisasi: komplemen adalah CFG. {anbncndnen}
sdcvvc

Jawaban:


15

Tidak, ini bebas konteks. Untuk menerima , Anda harus memastikan bahwa tiga angka sama. Untuk menerima sebuah * b * c *a n b n c n , Anda hanya perlu memastikan bahwa Anda berada di salah satu dari tiga kasus berikut:anbncnSebuahbcSebuahnbncn

  1. Jumlah berbeda dari jumlah b s; atauSebuahb
  2. Jumlah berbeda dari jumlah c ; atauSebuahc
  3. Jumlah s berbeda dari jumlah c s.bc

Tulis PDA untuk masing-masing kasus ini, kemudian gabungkan dengan melompat nondeterministis ke masing-masing dari keadaan awal.


Saya telah menuliskan kasus-kasus ini dengan baik, tetapi saya kehilangan ide untuk menghubungkannya. Terima kasih!
hauptbenutzer

4
Sebenarnya Anda hanya membutuhkan dua kasing saja.
sdcvvc

@ sdcvvc Poin bagus. :)
Patrick87

Untuk jumlah karakter yang berbeda, anggap ini sebagai inspirasi: . Seharusnya mudah untuk merekatkan a + ke kiri ini atau c + ke kanan dan mengubahnya menjadi PDA. Untuk kasus rumit (yang tidak Anda butuhkan) S a S c | A | C ; A a B |SxSy|X|Y;Xx|xX;Yy|yYSebuah+c+ . SaSc|A|C;AaB|aA;CBc|Cc;Bε|bB
Jonas Kölker
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.