Изменения

Перейти к: навигация, поиск

Удаление цепных правил из грамматики

9 байт убрано, 06:36, 7 ноября 2011
м
Нет описания правки
{{Определение
|definition=
'''Цепное правило ''' — правило вида <tex>A\rightarrow B</tex>, где <tex>A</tex> и <tex>B</tex> — нетерминалы.
}}
Наличие цепных правил в грамматике может усложнять усложняет доказательства теорем и давать даёт излишние шаги в выводах слов. Научимся удалять цепные правила из грамматики.
==Алгоритм==
{{Определение
|definition=
'''Цепная пара ''' — упорядоченная пара <tex>(A,B)</tex>, в которой <tex>A\Rightarrow ^* B</tex>, используя только цепные правила.
}}
Алгоритм удаления цепных правил из грамматики:
 1) #Найти все цепные пары <tex>G</tex>. 2) #Для каждой цепной пары <tex>(A,B)</tex> добавить к правилам <tex>G_1</tex> все правила вида <tex>A\rightarrow\alpha</tex>, где <tex>B\rightarrow\alpha</tex> {{---}} нецепное правило из <tex>G</tex>.
Найти все цепные пары можно по индукции:

Навигация