КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Алгоритм преобразования нелеворекурсивной приведенной КС-грамматики к нормальной форме Грейбах
Преобразование нелеворекурсивной приведенной КС-грамматики к нормальной форме Грейбах Лемма: Пусть грамматика
то
Вход: Нелеворекурсивная грамматика Выход: Грамматика Метод: 1. Строим линейный порядок
Упорядочим
2. Полагаем 3. Если если 4. Положим 5. В результате выполнения шагов 3,4 все правые части каждого правила (кроме возможно
и записываем результирующую грамматику Домашнее задание: Проверить результирующую грамматику, после удаления левой рекурсии.
Пример:
Решение: После выполнения алгоритма удаления левой рекурсии множество правил примет вид
1. Строим линейный порядок 2. Положим 3. Так как
4. Положим 3. Так как
4. Положим 3. Так как
4. Положим 3. Так как 5. Выполняем замену всех терминалов
Записываем результирующую грамматику
Недостаток: Недостаток описанной техники преобразования грамматики к нормальной форме Грейбах в том, что она дает много новых правил. Чтобы не вводить слишком много правил, можно применить другой метод, который излагается ниже. Однако он может давать больше нетерминалов.
Дата добавления: 2014-01-07; Просмотров: 2471; Нарушение авторских прав?; Мы поможем в написании вашей работы! |