Иерархия Хомского формальных грамматик — различия между версиями
Leugenea (обсуждение | вклад) м (→Класс 1: пробел перед скобкой «(возможно правило») |
Leugenea (обсуждение | вклад) м (→Класс 1: Ещё один пробел «(возможно правило») |
||
Строка 10: | Строка 10: | ||
{{Определение | {{Определение | ||
|definition = | |definition = | ||
− | '''Неукорачивающие грамматики''' - это те формальные грамматики, всякое правило из <tex>P</tex> которых имеет вид <tex>\alpha\rightarrow\beta</tex>, где <tex>\alpha , \beta \in \{\Sigma\cup N\}^{+}</tex> и <tex>|\alpha|\leq|\beta|</tex>(возможно правило <tex>$S$ \to \varepsilon</tex>, но тогда <tex>$S$</tex> не встречается в правых частях правил.}} | + | '''Неукорачивающие грамматики''' - это те формальные грамматики, всякое правило из <tex>P</tex> которых имеет вид <tex>\alpha\rightarrow\beta</tex>, где <tex>\alpha , \beta \in \{\Sigma\cup N\}^{+}</tex> и <tex>|\alpha|\leq|\beta|</tex> (возможно правило <tex>$S$ \to \varepsilon</tex>, но тогда <tex>$S$</tex> не встречается в правых частях правил.}} |
{{Определение | {{Определение |
Версия 00:49, 5 ноября 2011
Определение: |
Иерархия Хомского — классификация формальных грамматик и задаваемых ими языков, согласно которой они делятся на 4 класса по их условной сложности. |
Содержание
Класс 0
К нулевому классу относятся все формальные грамматики. Элементы этого класса называются неограниченные грамматики, поскольку не накладывается никаких ограничений. Практического применения в силу своей сложности такие грамматики не имеют.
Класс 1
Первый класс представлен неукорачивающими и контекстно-зависимыми грамматиками.
Определение: |
Неукорачивающие грамматики - это те формальные грамматики, всякое правило из | которых имеет вид , где и (возможно правило , но тогда не встречается в правых частях правил.
Определение: |
Контекстно-зависимые грамматики - это те формальные грамматики, всякое правило из | которых имеет вид , где , и (возможно правило , но тогда не встречается в правых частях правил).
Как будет показано далее неукорачивающие грамматики эквивалентны контекстно зависимым.
Класс 2
Второй класс составляют контекстно-свободные грамматики.
Определение: |
Контекстно-свободные грамматики - это те формальные грамматики, всякое правило из | которых имеет вид , где , .
Класс 3
Элементами третьего класса являются праволинейные(автоматные) грамматики.
Определение: |
Праволинейные(автоматные) грамматики - это те формальные грамматики, всякое правило из | которых имеет вид либо , где , , .
Распознавание
Для языков, которые задаются грамматиками из иерархии Хомского, есть машины, которые их распознают. Следующая таблица обощает классы иерархии Хомского, языки, которые ими задаются, и машины, которые распознают эти языки.
Грамматика | Языки | Машина |
---|---|---|
Класс 0 | рекурсивно перечислимые | машина Тьюринга |
Класс 1 | контектно-зависимые | ЛПА |
Класс 2 | контекстно-свободные | автоматы с магазинной памятью |
Класс 3 | регулярные | конечные автоматы |
Источники
Ахо А., Ульман Дж. Теория синтаксического анализа, перевода и компиляции. М.: Мир, 1978. - Т. 1,2.