Тип работы:
Предмет:
Язык работы:


Сложность преобразования LL(k) линейных грамматик и конъюнктивных LL(k) линейных к LL(1) линейным

Работа №129085

Тип работы

Бакалаврская работа

Предмет

математика

Объем работы49
Год сдачи2020
Стоимость4330 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
32
Не подходит работа?

Узнай цену на написание


1 Введение
2 Основные определения
4 Устранение «коротких» правил 8
5 Приведение к виду LL(1) 14
6 Нижняя оценка 24
7 Конъюнктивныелинейные LL(k)грамматики 31|
8 Конъюнктивные грамматики: устранение «коротких»
правил35
9 Конъюнктивные грамматики: приведение к виду LL(TJ]40
10 Заключение! 49


ЬЬ(к)-анализ — один из самых известных методов синтаксического анализа, работающих за линейное время. В этом методе дерево разбора последовательно восстанавливается сверху вниз, по мере чтения строки слева направо. При этом нужное правило вывода синтаксический ана¬лизатор выбирает, заглядывая вперёд не более, чем на к символов. Класс LL(k) грамматик, к которому он применим, был изучен в работах Кнута [1971], Льюиса и Стирнса [1968], Розенкранца и Стирнса [1970]. При этом Розенкранц и Стирнс, а также Курки-Суонио [1969] установили, что, для всякого к грамматики из класса LL(k + 1) порождают больше языков, чем грамматики из класса LL(k), и таким образом появляется иерархия классов LLграмматик.
Важный подкласс линейных LL(k) грамматик впервые изучался Ибаррой и др. [1988] и Холвцером и Ланге [199.3], получивших ряд результатов о вычислительной сложности языков, задаваемых такими грамматиками. Однако очевидный вопрос о существовании иерархии классов ЬЬ(к)-линейных грамматик остался нерассмотренным.
В данной работе даётся отрицательный ответ на этот вопрос: оказывается, что в линейном случае иерархия по к обрушивается, то есть все языки, задаваемые грамматиками из класса ЬЬ(к)-линейных для некоторого к, задаются и грамматиками из класса ЬЬ(1)-линейных. Доказательство проводится эффективным преобразованием, состоящем из двух этапов и описанном в разделах гена первом этапе произвольная LL(k)- линейная грамматика преобразуется к некоторому нормальному виду, а на втором этапе — далее к ЬЬ(1)-линейной.
Полученное построение приводит к сильному росту числа нетерминальных символов грамматики: их становится больше примерно в |S|2k раз, где S — алфавит языка. Поэтому естественным образом возникает вопрос об эффективности приведённого построения и о нижней оценке количества нетерминальных символов ЬЬ(1)-линейной грамматики, задающей тот же язык, что и данная ЬЬ(к)-линейная. Нельзя ли разработать другое, улучшенное построение, которое не будет приводить к столь значительному росту?
Оказывается, что нет. В разделе |Б]устанавливается, что такой рост количества нетерминальных символов неизбежен, и приводимое построение на самом деле близко к оптимальному: строятся примеры LL(k)- линейных грамматик с nнетерминальными символами, для которых доказывается, что всякая ЬЬ(1)-.линейная грамматика, задающая тот же язык, должна иметь не менее чем n | S|2fc-O(logk)нетерминальных символов.
Третий результат этой работы посвящён более мощному классу формальных грамматик — конъюнктивным грамматикам. Конъюнктивные грамматики, введённые Охотиным [2001], обобщают обыкновенные грамматики введением операции конъюнкции в правила. Для них также определены ЬЬ(к)-подкласс и линейный подкласс, и, таким образом, можно рассматривать LL (к)-линейные конъюнктивные грамматики; их определение приведено в разделе [7[Ранее Охотин [2011] определил простейшие ограничения выразительной мощности этого подкласса, но в целом класс остаётся малоизученным. В частности, вопрос о существовании иерархии по к не рассматривался.
В разделах этой работы установлено, что ЬЬ(к)-линейные конъюктивные грамматики можно перевести в LL(1)-линейные конъюнктивные. Результат доказывается обобщением построения для случая обыкновенных грамматик.
Результаты разделов заданной работы представлены в двух статьях, опубликованных в сборниках докладов конференций RuFiDiM 2019 и CSR 2020.


Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


Полученные результаты заставляют задуматься о нескольких близких вопросах. Неизбежен ли рост размера грамматики пи преобразовании ЬЬ(к)-линейных конънктивных грамматик в ЬЬ(1)-линейные конъюнктивные? Существует ли иерархия ЬЬ(к)-конъюнктивных грамматик (без свойства линейности) по к? Вообще, о классе ЬЬ(к)-конъюнктивных грамматик известно очень мало, и он ждёт своего исследователя.


[1993] М. Holzer, K.-J. Lange, “On the complexities of linear LL(1) andLR(1) grammars”, Fundamentals of Computation Theory (FCT 1993, Hungary, August 23-27, 1993), LNCS 710, 299-308.
[1988] О. H. Ibarra, T. Jiang, B. Ravikumar, “Some subclasses of context-freelanguagesinNC1”, Information Processing Letters, 29:3 (1988), 111-117.
[1971] D. E. Knuth, “Top-downsyntaxanalysis”, Acta Informatica, 1 (1971), 79-110.
[1969] R. Kurki-Suonio, “Notes on top-down languages”, BIT Numerical Mathematics, 9:3 (1969), 225-238.
[1968] P. M. Lewis II, R. E. Stearns, “Syntax-directed transduction”, Journal of the ACM, 15:3 (1968), 465-488.
[2001] A. Okliotin, “Conjunctive grammars”, Journal of Automata, Languages and Combinatorics, 6:4 (2001), 519-535.
[2011] A. Okhotin, “Expressive power of LL(fc) Boolean grammars”, Theoretical Computer Science, 412:39 (2011), 5132-5155.
[2019] A. Okhotin, I. Olkhovsky, “LL(1) linear grammars are as powerful as LL(fc) linear grammars”, Fifth Russian-Finnish Symposium on Discrete Mathematics (RuFiDiM V, Veliky Novgorod, 19-22 May 2019).
[2020] A. Okhotin, I. Olkhovsky, “On the transformation of LL(fc)-linear grammars to LL(1)-linear”, Computer Science in Russia (CSR 2020, Ekaterinburg, Russia, 29 June-3 July 2020), LNCS 12159, to appear.
[1970] D. J. Rosenkrantz, R. E. Stearns, “Properties of deterministic top-downgrammars”,Information and Control, 17 (1970), 226-256.


Работу высылаем на протяжении 30 минут после оплаты.




©2025 Cервис помощи студентам в выполнении работ