EPAL, язык четных палиндромов, определяется как язык, генерируемый следующей однозначной контекстно-свободной грамматикой:
EPAL - это «проклятие» многих алгоритмов синтаксического анализа: мне еще не приходилось сталкиваться с каким-либо алгоритмом синтаксического анализа однозначных CFG, который может анализировать любую грамматику, описывающую язык. Он часто используется, чтобы показать, что существуют однозначные CFG, которые не могут быть проанализированы конкретным парсером. Это вдохновило мой вопрос:
Есть ли какой-нибудь алгоритм разбора, принимающий только однозначные CFG, которые работают на EPAL?
Конечно, можно разработать специальный двухпроходный синтаксический анализатор для грамматики, который анализирует язык за линейное время. Мне интересны методы синтаксического анализа, которые не были разработаны специально с учетом требований EPAL.