Чи можна розбирати всі однозначні граматики за лінійним часом?


22

Під час майстерності з неканонічним синтаксичним розбором LR я придумав метод розбору (з нескінченними розмірами таблиць, що робить його дещо непрактичним ), здатний розбирати точно однозначні граматики за час , і мені було цікаво, чи можна це зробити краще:О(н2)

Чи можна розбирати всі однозначні граматики за лінійним часом?

Я впевнений, що десь читав, що це так, але це не з’являється при пошуку в Інтернеті. Те ж питання було поставлене тут , але жодної відповіді не було дано, наскільки я знаю.

Відповіді:


23

Однозначний без контексту розбір проводиться в за допомогою алгоритму Ерлі. Чи існує алгоритм розбору, що працює в лінійному часі над усіма однозначними графіками без контексту, є відкритою проблемою. Одне з найсучасніших висловлювань подібного роду пояснюється Лео [1991], який показав, що варіант аналізу Ерлі працює в лінійний час для всіх граматик LRR.О(н2)

[Лев 1991] Joop MIM Лео. Загальний алгоритм безпроблемного розбору, що працює в лінійний час на кожній граматиці LR ( ), не використовуючи lookahead, Теоретичні інформатики 82 (1): 165--176. doi: 10.1016 / 0304-3975 (91) 90180-Aк

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.