Национальный цифровой ресурс Руконт - межотраслевая электронная библиотека (ЭБС) на базе технологии Контекстум (всего произведений: 634932)
Контекстум
Руконтекст антиплагиат система
0   0
Первый авторРязанов
Страниц4
ID511960
АннотацияВ статье рассматриваются КС-грамматики без левой рекурсии, не принадлежащие классу LL(1)-грамматик только из-за наличия конфликта между такими парами правил, в которых одно правило имеет пустую правую часть. Предлагается способ устранения конфликтов и алгоритм, который либо преобразует КС-грамматику в LL(1)-грамматику, либо сообщает о невозможности преобразования этим способом. Предложенный способ расширяет класс КС-грамматик, которые можно преобразовать в LL(1)-грамматику.
УДК519.682.1
Рязанов, Ю.Д. СПОСОБ ПРЕОБРАЗОВАНИЯ КС-ГРАММАТИКИ В LL(1)-ГРАММАТИКУ / Ю.Д. Рязанов // Вестник Воронежского государственного университета. Серия: Системный анализ и информационные технологии .— 2014 .— №2 .— С. 112-115 .— URL: https://rucont.ru/efd/511960 (дата обращения: 28.04.2024)

Предпросмотр (выдержки из произведения)

УДК 519.682.1 СПОСОБ ПРЕОБРАЗОВАНИЯ КС-ГРАММАТИКИ В LL(1)-ГРАММАТИКУ Ю. Д. <...> В статье рассматриваются КС-грамматики без левой рекурсии, не принадлежащие классу LL(1)-грамматик только из-за наличия конфликта между такими парами правил, в которых одно правило имеет пустую правую часть. <...> Предлагается способ устранения конфликтов и алгоритм, который либо преобразует КС-грамматику в LL(1)-грамматику, либо сообщает о невозможности преобразования этим способом. <...> Предложенный способ расширяет класс КС-грамматик, которые можно преобразовать в LL(1)-грамматику. <...> Context-free grammars without leſt-recursion, which are not LL(1) grammars is being considered in this article. <...> That grammars are not LL(1) grammars, because they have conflict between such pairs of rules, which have one rule with empty right part. <...> This method expanded the class of context-free grammars, which can be transformed to LL(1) grammar. <...> Исходная КС-грамматика языка может не принадлежать классу LL(1)-грамматик даже если язык принадлежит классу LL(1)-языков, т. е. если он порождается какой-либо LL(1)-грамматикой. <...> В этом случае целесообразно преобразовать исходную грамматику в LL(1)-грамматику. <...> В работе [1] показано, что проблема распознавания, существует ли для данной КС-грамматики, не являющейся LL(1)-грамматикой, эквивалентная ей LL(1)-грамматика, не разрешима. <...> Следовательно, не существует алгоритма, который бы определял, порождает ли заданная КС-грамматика LL(1)-язык и, если так, преобразовывал бы ее в LL(1)-грамматику. <...> Традиционный способ получения © Рязанов Ю. Д., 2014 LL(1)-грамматики, рекомендуемый практически во всех работах, в которых рассматриваются вопросы построения нисходящих обработчиков языков, в том числе в [1–6], основан на устранении левой рекурсии, выполнении факторизации и замены края. <...> В результате таких преобразований может быть получена LL(1)-грамматика, произойти зацикливание [3], либо может быть получена не LL(1)-грамматика с сти любых <...>