CFG parsing menggunakan


18

Ada banyak algoritma yang dapat menguraikan tata bahasa bebas konteks dalam waktu . Dengan menggunakan perkalian matriks, seseorang bahkan bisa berjalan lebih cepat tanpa gejala dari itu.O(n3)

Namun, semua algoritma untuk parsing CFG sewenang-wenang yang saya tahu memiliki penggunaan ruang kasus terburuk (meskipun, diakui, saya tidak tahu apa penggunaan ruang dari algoritma multiplikasi matriks itu). Saya bertanya-tanya apakah ada algoritma yang meningkatkan penggunaan ruang ini (jadi abaikan batas waktu).Ω(n2)

Pertanyaan itu muncul dalam pikiran saya setelah secara mental menghubungkan dengan ruang Ω ( n 2 ) yang terikat pada semua algoritma penguraian CFG Saya tahu. Ini mungkin tidak menarik secara praktis, tetapi hanya sesuatu yang saya ingin ketahui.CSG=NDSPACE(n)DSPACE(n2)Ω(n2)


5
Tidak tahu tentang semua algoritma parsing lainnya, tetapi mereka berdasarkan perkalian matriks melakukan take ruang; lihat: cstheory.stackexchange.com/questions/1313/…Θ(n2)
Ryan Williams

Jawaban:


14

Bagian pertama dari jawaban ini tidak lebih dari pengulangan jawaban ( menjadi log 2 ( n ) ) yang efisien dari jawaban David dalam istilah teoretis kompleksitas.log4(n)log2(n)

LOGCFL.NC2.NC2DSPACE(log2(n))nlogn

O(n2)n2

Tentunya masalah yang sangat menarik layak untuk dilihat.


Itu presentasi yang cukup menarik, terima kasih untuk tautannya.
Alex ten Brink


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.