Иерархия Хомского формальных грамматик — различия между версиями
(→Резюме) |
|||
Строка 30: | Строка 30: | ||
'''Праволинейные(автоматные) грамматики''' - это те формальные грамматики, всякое правило из <tex>P</tex> которых имеет вид <tex>A \rightarrow tB</tex> либо <tex>A \rightarrow t</tex>, где <tex>A\in N</tex>,<tex>B\in N</tex>, <tex>t\in \Sigma </tex>.}} | '''Праволинейные(автоматные) грамматики''' - это те формальные грамматики, всякое правило из <tex>P</tex> которых имеет вид <tex>A \rightarrow tB</tex> либо <tex>A \rightarrow t</tex>, где <tex>A\in N</tex>,<tex>B\in N</tex>, <tex>t\in \Sigma </tex>.}} | ||
− | == | + | == Распознавание == |
Для языков, которые задаются грамматиками из иерархии Хомского, есть машины, которые их распознают. Следующая таблица обощает классы иерархии Хомского, языки, которые ими задаются, и машины, которые распознают эти языки. | Для языков, которые задаются грамматиками из иерархии Хомского, есть машины, которые их распознают. Следующая таблица обощает классы иерархии Хомского, языки, которые ими задаются, и машины, которые распознают эти языки. | ||
{| class="wikitable" | {| class="wikitable" | ||
Строка 44: | Строка 44: | ||
| Класс 1 | | Класс 1 | ||
| контектно-зависимые | | контектно-зависимые | ||
− | | [http://en.wikipedia.org/wiki/Linear_bounded_automaton | + | | [http://en.wikipedia.org/wiki/Linear_bounded_automaton ЛПА] |
|- | |- | ||
| Класс 2 | | Класс 2 | ||
Строка 54: | Строка 54: | ||
| [[Детерминированные конечные автоматы|конечные автоматы]] | | [[Детерминированные конечные автоматы|конечные автоматы]] | ||
|} | |} | ||
+ | |||
+ | == Источники == | ||
+ | Ахо А., Ульман Дж. Теория синтаксического анализа, перевода и компиляции. М.: Мир, 1978. - Т. 1,2. |
Версия 08:39, 3 ноября 2011
Определение: |
Иерархия Хомского — классификация формальных грамматик и задаваемых ими языков, согласно которой они делятся на 4 класса по их условной сложности. |
Содержание
Класс 0
К нулевому классу относятся все формальные грамматики. Элементы этого класса называются неограниченные грамматики, поскольку не накладывается никаких ограничений. Практического применения в силу своей сложности такие грамматики не имеют.
Класс 1
Первый класс представлен неукорачивающими и контекстно-зависимыми грамматиками.
Определение: |
Неукорачивающие грамматики - это те формальные грамматики, всякое правило из | которых имеет вид , где и (возможно правило , но тогда не встречается в правых частях правил.
Определение: |
Контекстно-зависимые грамматики - это те формальные грамматики, всякое правило из | которых имеет вид , где , и (возможно правило , но тогда не встречается в правых частях правил).
Как будет показано далее неукорачивающие грамматики эквивалентны контекстно зависимым.
Класс 2
Второй класс составляют контекстно-свободные грамматики.
Определение: |
Контекстно-свободные грамматики - это те формальные грамматики, всякое правило из | которых имеет вид , где , .
Класс 3
Элементами третьего класса являются праволинейные(автоматные) грамматики.
Определение: |
Праволинейные(автоматные) грамматики - это те формальные грамматики, всякое правило из | которых имеет вид либо , где , , .
Распознавание
Для языков, которые задаются грамматиками из иерархии Хомского, есть машины, которые их распознают. Следующая таблица обощает классы иерархии Хомского, языки, которые ими задаются, и машины, которые распознают эти языки.
Грамматика | Языки | Машина |
---|---|---|
Класс 0 | рекурсивно перечислимые | машина Тьюринга |
Класс 1 | контектно-зависимые | ЛПА |
Класс 2 | контекстно-свободные | автоматы с магазинной памятью |
Класс 3 | регулярные | конечные автоматы |
Источники
Ахо А., Ульман Дж. Теория синтаксического анализа, перевода и компиляции. М.: Мир, 1978. - Т. 1,2.