Матричная грамматика: формальная грамматика с последовательными продукциями. Применение происходит строго по порядку, матрицами. Описание и принципы работы.
Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Матричная грамматика — это формальная грамматика, в которой вместо отдельных правил подстановки, правила объединяются в конечные последовательности. Правило подстановки нельзя применять отдельно, его необходимо применять последовательно. При применении такой последовательности правил, переписывание выполняется в соответствии с каждым правилом в последовательности – первым, вторым и так далее, пока последнее правило не будет использовано для переписывания. Эти последовательности называются матрицами. Матричная грамматика является расширением контекстно-свободной грамматики и одним из видов контролируемых грамматик.
A matrix grammar is a formal grammar in which instead of single productions, productions are grouped together into finite sequences. A production cannot be applied separately, it must be applied in sequence. In the application of such a sequence of productions, the rewriting is done in accordance to each production in sequence, the first one, second one etc. till the last production has been used for rewriting. The sequences are referred to as matrices. Matrix grammar is an extension of context free grammar, and one instance of a controlled grammar.
Свойства
Пусть MAT^\lambda будет классом языков, порождаемых матричными грамматиками, а MAT — классом языков, порождаемых свободными матричными грамматиками. Очевидно, MAT включается в MAT^\lambda. Все контекстно-свободные языки находятся в MAT, и все языки в MAT^\lambda рекурсивно перечислимы. MAT замкнут относительно объединения, конкатенации, пересечения с регулярными языками и перестановки. Любой язык в MAT может быть порожден контекстно-зависимой грамматикой. Существует контекстно-зависимый язык, который не принадлежит MAT^\lambda. Каждый язык, порождаемый матричной грамматикой, содержащей только один терминальный символ, является регулярным.
Let MAT^\lambda be the class of languages produced by matrix grammars, and MAT the class of languages produced by free matrix grammars. Trivially, MAT is included in MAT^\lambda. All context free languages are in MAT, and all languages in MAT^\lambda are recursively enumerable. MAT is closed under union, concatenation, intersection with regular languages and permutation. All languages in MAT can be produced by a context sensitive grammar. There exists a context sensitive language which does not belong to MAT^\lambda Each language produced by a matrix grammar with only one terminal symbol is regular.
Открытые проблемы
Неизвестно, существуют ли языки в MAT^\lambda, которых нет в MAT, и также неизвестно, содержит ли MAT^\lambda языки, не являющиеся контекстно-зависимыми.
It is not known whether there exist languages in MAT^\lambda which are not in MAT, and it is neither known whether MAT^\lambda contains languages which are not context sensitive .
Сноски
Ábrahám, S. Некоторые вопросы теории языка. Международная конференция по вычислительной лингвистике, 1965. с. 1–11. Георге Паун, Membrane Computing: An Introduction, Springer Verlag New York, Inc., Secaucus, NJ, США, 2002. с. 30–32.
Ábrahám, S. Some questions of language theory. International Conference on Computational Linguistic, 1965. pp 1–11. Gheorghe Păun, Membrane Computing: An Introduction, Springer Verlag New York, Inc., Secaucus, NJ, USA, 2002. pp 30–32