สามารถแยกไวยากรณ์ที่ชัดเจนทั้งหมดในเวลาเชิงเส้นได้หรือไม่?


22

เมื่อทำการวิเคราะห์ด้วย LR แบบ noncanonical LR ฉันคิดวิธีการแยกวิเคราะห์ (ด้วยตารางที่มีขนาดไม่ จำกัด ซึ่งทำให้มันค่อนข้างไม่สามารถปฏิบัติได้) สามารถแยกไวยากรณ์ที่ชัดเจนในเวลาและฉันสงสัยว่ามันเป็นไปได้ไหมที่จะทำ ที่ดีกว่า:O(n2)

สามารถแยกไวยากรณ์ที่ชัดเจนทั้งหมดในเวลาเชิงเส้นได้หรือไม่?

ฉันค่อนข้างแน่ใจว่าฉันได้อ่านที่ไหนสักแห่งว่าเป็นกรณีนี้ แต่มันไม่ได้เกิดขึ้นเมื่อค้นหาอินเทอร์เน็ต คำถามเดียวกันถูกถามที่นี่แต่ไม่มีคำตอบเท่าที่ฉันรู้

คำตอบ:


23

การแยกวิเคราะห์แบบไม่มีบริบทที่ไม่คลุมเครืออยู่ในโดยใช้อัลกอริทึมของ Earley ไม่ว่าจะมีอัลกอริทึมการแยกวิเคราะห์ที่ทำงานในเวลาเชิงเส้นในไวยากรณ์ที่ไม่ต้องใช้บริบททั้งหมดเป็นปัญหาเปิดหรือไม่ หนึ่งในคำแถลงขั้นสูงที่สุดของประเภทนี้คือลีโอ [1991] ซึ่งแสดงให้เห็นว่าตัวแปรของการแยกวิเคราะห์ Earley ทำงานในเวลาเชิงเส้นสำหรับไวยากรณ์ LRR ทั้งหมดO(n2)

[Leo 1991] Joop MIM Leo อัลกอริทึมการแยกวิเคราะห์แบบไม่มีบริบทโดยทั่วไปทำงานในเวลาเชิงเส้นในทุก ๆ LR ( ) ไวยากรณ์โดยไม่ต้องใช้ lookahead วิทยาศาสตร์คอมพิวเตอร์เชิงทฤษฎี 82 (1): 165--176 ดอย: 10.1016 / 0304-3975 (91) 90180-Ak

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.