MPA (multipebble automaton) adalah 2DFA (otomat hingga hingga deterministik dua arah) yang dapat menggunakan jumlah kerikil yang sewenang-wenang (sebenarnya paling banyak kerikil pada input yang diberikan - input ditulis pada kaset di antara dua ujung -Penanda sebagai ). Selama perhitungan, MPA dapat mendeteksi apakah simbol di bawah kepala memiliki kerikil, dan kemudian dapat menempatkan kerikil (menghapus kerikil) jika tidak ada kerikil (kerikil).w # w #
adalah homomorfisme, di mana adalah simbol dan .k > 0
Untuk bahasa sensitif konteks yang deterministik tidak sulit untuk menunjukkan bahwa ada sedemikian rupa sehingga dapat dikenali oleh MPA. Jadi, secara longgar, kita bisa mengatakan ituk > 0 h k ( L )
"masalah" apa pun yang dapat diuraikan oleh DTM linear-space (mesin Turing deterministik) dapat diuraikan oleh MPA.
Apakah benar juga untuk bahasa apa pun di ? Dapatkah KPL menentukan semua bahasa yang sensitif terhadap konteks deterministik?
adalah panjang .
i t h w 1 ≤ i ≤ | w | adalah dari , di mana.
.
sumber
Jawaban:
Mungkin Anda dapat membangun bahasa di DPSACE (n) yang tidak dapat dikenali oleh MPA dengan menggunakan argumen diagonalisasi (mungkin idenya mirip dengan yang ada di jawaban Ben, tapi saya tidak menggali ke dalamnya):k=1
Misalkan lebih dari alfabet Anda menyandikan MPA menggunakan daftar transisi:Σ={0,1}
di mana adalah keadaan saat ini, adalah simbol saat ini, adalah status kerikil, adalah keadaan baru, adalah keadaan kerikil baru, adalah arah gerakan, adalah tanda akhir).s a p s′ p′ L|R #
Mesin Turing pada input dapat memeriksa apakah ini merupakan deskripsi yang dan mensimulasikannya pada input untuk langkah menggunakan sel, meregangkan input dengan cara ini:M x MPAx x 4|x| 6|x|+log|x|
Dimana:
Jika berhenti dalam langkah maka TM menghasilkan sebaliknya (jika tidak menghentikan menghasilkan 0).4 | x | M. M.MPAx 4|x| M M
sumber
Karena bahasa ini dapat dipilih dalam ruang linear, bahasa ini juga dapat dinyatakan sebagai DCSL.
sumber