Mengapa automata terbatas linier tidak sepopuler automata lainnya?


9

Dalam pengalaman saya, bahasa yang peka konteks dan automata terbatas linier sering dilewati atau dilompati dalam mata kuliah teori komputabilitas, dan bahkan ditinggalkan dari beberapa buku teks terkemuka, meskipun automata terbatas dan pushdown menerima banyak perhatian. Tentunya harus ada alasan bagus mengapa BBA diberikan lebih sedikit fokus daripada rekan-rekan mereka?



Bisakah Anda menguraikan bagaimana pertanyaan terkait, Kaveh? (Karena menurut saya nadanya tidak membantu di sini, tetapi mungkin jawabannya individual)
Raphael

2
@Raphael: Jawaban atas pertanyaan yang dikaitkan Kaveh untuk menjelaskan mengapa bahasa yang peka konteks tidak dianggap sepenting sebelumnya: singkatnya, ada model lain yang lebih menarik untuk dipertimbangkan. (selengkapnya)
Tsuyoshi Ito

2
(lanjutan) Alasan yang sama berlaku untuk "automata terikat linier." Lucu bahwa saya belum pernah mendengar nama itu. Bagi saya mereka hanya O (n) -space deterministic / nondeterministic mesin Turing, dan saya tidak bisa melihat mengapa kita harus memilih O (n) -space (bukan ruang polinomial atau O (log n) -space atau apa pun), meskipun pasti ada alasan bersejarah. Selain itu, baik kelas DSPACE (O (n)) atau NSPACE (O (n)) tidak ditutup di bawah panggilan subrutin .
Tsuyoshi Ito

1
Tsuyoshi, interpretasi saya terhadap pertanyaan adalah bahwa FA, PDA, dan seluruh Hierarki Chomsky (menurut / jawaban Anda sama-sama membosankan) diajarkan, tetapi LBA tidak.
Raphael

Jawaban:


13

NC1

Seharusnya sekarang cukup jelas mengapa kita tertarik pada dua yang pertama lebih dari LBA. Dua yang pertama secara alami cocok dengan definisi perhitungan layak yang biasa. Tetapi PSPACE tidak.


1
mengubah LBA menjadi PSPACE terdengar hampir seperti ruang linear adalah semua yang Anda butuhkan untuk menangkap PSPACE yang jelas tidak mungkin benar. Jadi apa kesalahan saya dalam berpikir?
Suresh Venkat

2
@ Suresh: Ada koneksi berikut. Kelas masalah yang (NC1-) dapat direduksi menjadi bahasa biasa adalah NC1, kelas masalah (log-space-) yang dapat direduksi ke CFL adalah LogCFL, dan kelas masalah (NC1- atau log-space-) dapat direduksi ke LBA adalah PSPACE. Saya tidak yakin apakah kita dapat menggunakan gagasan reducibilitas yang sama dalam ketiga kasus ini.
Tsuyoshi Ito

AC0

3

Nah, tanyakan kepada profesor Anda mengapa dia melakukannya. Saya hanya bisa menebak.

Mereka tidak semenarik Turing model lengkap dan PDA karena mereka berada dalam kekosongan * kesukaran yang mereka bagi, tentu saja, dengan padanan bahasa mereka: tidak sekuat mungkin, tetapi sudah sangat sulit dipecahkan.

Alasan lain mungkin karena tidak banyak yang diketahui (menebak di sini) tentang mereka, tetapi itu mungkin disebabkan oleh masalah ayam-telur.

NLBA=DLBA

(*) sengaja dibesar-besarkan


2

Tampaknya bukan hanya CSG tetapi juga CFG, ... sudah ketinggalan zaman akhir-akhir ini. Saya pikir hari ini automata dan PDA biasanya dianggap dalam mata kuliah teori komputabilitas / kompleksitas (jika ada) dan di sana mereka dimasukkan bukan untuk kepentingan mereka sendiri tetapi untuk memperkenalkan Mesin Turing.

Tata bahasa mungkin menarik untuk teori kompiler tetapi tidak terlalu banyak untuk komputabilitas / kompleksitas untuk dimasukkan dalam kursus sarjana pengantar. Ada terlalu banyak topik yang ingin dibahas tetapi kursus satu semester terlalu singkat dan kami harus memilih dan banyak dari topik ini yang tidak dapat kami bahas karena batasan waktu jauh lebih menarik daripada LBA.


1
Saya berharap Anda benar secara universal! Kelas intro tentang TCS yang diajarkan di univ saya adalah setengah automata / CFL. Saya TA-ing kelas ini, dan siswa tampaknya sangat jauh dari tertarik. Ini mungkin alasan lain mengapa CFL / CSL tidak lagi disajikan: ada topik yang jauh lebih menarik.
Michaël Cadilhac

1
Nah, teori CS tidak hanya kompleksitas. Khususnya CFG serta model otomat terkait sangat penting (setidaknya sebagai yayasan) di banyak cabang CS. Kursus pengantar harus mempersiapkan Anda untuk semua cabang. Maaf, tapi jawaban ini baunya seperti ketidaktahuan. Juga, itu tidak menjawab pertanyaan.
Raphael

@ Raphael, saya berbicara tentang mata kuliah teori komputasi / kompleksitas yang merupakan tempat teori automata sedang dipikirkan di universitas yang saya kenal saat ini. Tidak ada yang mengatakan apa pun tentang kursus teori secara umum. Saya pikir Anda harus membaca posting dengan cermat sebelum menuduh orang lain tidak tahu. Posting saya menjawab pertanyaan: mengapa LBA tidak dipikirkan dalam mata kuliah teori komputabilitas / kompleksitas? Itulah alasannya, dan itulah alasan mengapa buku teori komputasi dan kompleksitas tidak memasukkan banyak tentang LBA, apakah Anda suka atau tidak.
Kaveh

Jadi, Anda pribadi dengan alasan pribadi setiap penulis dan dosen di seluruh dunia? Ya benar. Bagaimanapun, harap dicatat bahwa kata "kompleksitas" tidak muncul dalam pertanyaan yang diposting sama sekali. Perhatikan juga bahwa dengan komentar pendahuluan di atas dan edit, Anda tidak menjawab pertanyaan. Faktanya, apakah Anda suka atau tidak.
Raphael

1
@ Raphael, Anda masih belum membaca dengan seksama dan terus menafsirkan apa yang saya tulis sesuai keinginan Anda, menurut saya Anda hanya ingin berdebat, saya pikir poin saya cukup jelas, oleh karena itu merasa bebas untuk berpikir sesuka Anda. :)
Kaveh

2

Ekspresi reguler dan CFG digunakan dalam praktiknya untuk parsing kode (yaitu, bahasa pemrograman). Alasannya adalah bahwa ada algoritma yang sangat efisien untuk menguraikannya. Sebaliknya, BBA terlalu kuat untuk benar-benar digunakan dalam konteks itu.

Salah satu asal historis teori automata adalah subjek konstruksi penyusun. Karena alasan yang disebutkan di atas, hanya bahasa dan CFG biasa yang berguna untuk membangun kompiler (meskipun fakta bahwa tata bahasa atributif bukanlah CFG yang sebenarnya, dan bahwa algoritma parsing CFG tidak benar-benar menguraikan seluruh kelas CFG). LBA mungkin telah ditemukan oleh Chomsky sebagai tingkat kompleksitas menengah antara duniawi dan "Inggris". Jadi mungkin tempat yang tepat untuk mengajar mereka adalah dalam kursus linguistik daripada yang ilmu komputer!


Karena LBA setara dengan kelas tata bahasa yang peka konteks, saya rasa mereka tidak diciptakan hanya untuk bersenang-senang. ;)
Raphael

@ Raphael: Yuval tidak menyiratkan itu sama sekali.
reinierpost
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.