- Матричная грамматика
-
Матричная грамматика — это формальная грамматика, в которой правила вывода группируются в конечные последовательности. Правила вывода не могут применяться по отдельности, а только в последовательности. При применении такой последовательности, замена производится в соответствии с каждым правилом в последовательности, с первой по последнюю. Последовательности называют матрицами. Матричная грамматика является расширением контекстно-свободной грамматики.
Формальное определение
Матричная грамматика -- это упорядоченная четвёрка
где
-- конечное множество нетерминальных символов
-- конечное множество терминальных символов
-- начальный символ
-- конечное множество непустых последовательностей упорядоченных пар
Пары называются правилами вывода, и записываются как
. Последовательности называются матрицами, и записываются как
Пусть
-- множество всех правил вывода в матрицах
матричной грамматики
. Тогда грамматика
является грамматикой типа
, неукорачивающей, линейной,
-свободной, контектсно-свободной or контекстно-зависимой если и только если грамматика
обладает этим свойством.
Для матричной грамматики
определяется двоичное отношение
, также обозначаемое
. Для любых
,
выполнено тогда и только тогда, когда существует целое число
такое, что существуют слова
над множеством V и
и
и
Если указанные условия выполнены, также говорят, что
выполнено со спецификацией
.
Пусть
-- рефлексивное транзитивное замыкание отношения
. Тогда, язык, порождаемый матричной грамматикой
опредеяется следующим образом:
Пример
Рассмотрим матричную грамматику
где
-- совокупность следующих матриц:
Эти матрицы, содержащие лишь контекстно-свободные правила, порождают контекстно-зависимый язык
Этот пример можно найти на страницах 8 и 9 *.
Примечания
Категория:- Формальные языки
Wikimedia Foundation. 2010.