Научная литература
booksshare.net -> Добавить материал -> Лингвистика -> Хомский Н. -> "Формальные свойства грамматик " -> 33

Формальные свойства грамматик - Хомский Н.

Хомский Н. Формальные свойства грамматик — Москва, 1963. — 100 c.
Скачать (прямая ссылка): formalsvoystvagrammatik1963.djvu
Предыдущая << 1 .. 27 28 29 30 31 32 < 33 > 34 35 36 37 38 39 .. 45 >> Следующая


= 12 І для і.екоторого .......im, X1,..., хт,

z = X1. . . хт и для всгх k, I k т, T имеет правило [е, Si^ г) -»¦ (Si^ , хк),где I0 = і и іт = /). (55)
Формальные свойства грамматик

201

Очевидно, что Qij регулярен. Следовательно, мы мсшем к G' добавить правила, которые дают соотношения

для всех i, j и всех х ? Q1J. Расширенная таким образом грамматика G' порождает язык TlL(G)]. Следовательно, теорема 31 верна без ограничения, наложенного на Т.

Другие результаты, касающиеся эффекта применения различных операций к бесконтекстным языкам и относящимся к ним системам, см. в работах [21, 69].

Будем теперь рассматривать правила только следующих видов:

Напомним, что нормальная грамматика содержит только правила типа а) и г); линейная грамматика без ограничения общности может быть описана как грамматика, содержащая только правила вида

б), в) и г); конечный автомат содержит только правила вида б), г) или только правила вида в) и г). Напомним также, что нормальная грамматика может порождать любой бесконтекстный язык и что линейная грамматика, хотя и с более ограниченной порождающей способностью, может порождать языки, лежащие за пределами возможностей конечных автоматов (теорема 16). Таким образом, мы получаем порождающую способность, большую, чем у конечных автоматов, разрешая лево- и право-линейные правила, и еще большую, разрешая появление нелинейных правил в грамматике. Конечно, некоторые линейные грамматики могут порождать только регулярные языки, хотя ни' в том, ни в другом случае не существует алгоритма, определяющего, когда это верно (теорема 25). Остается решить вопрос, при каких условиях нормальная или линейная грамматика богаче, чем любой конечный автомат, в отношении порождающей способности.

Чтобы изучить этот вопрос, полезно снова рассмотреть классификацию рекурсивных элементов, данную в разд. 3 предыдущей главы. Конечный автомат содержит либо все право-рекурсивные, либо все лево-рекурсивные элементы. Линейная грамматика может содержать одновременно лево-рекурсивные и право-рекурсив-ные элементы. Кроме того, и линейные, и нормальные грамматики могут содержать самовставляемые элементы. Оказывается, что последнее свойство влияет на увеличение порождающей способности по сравнению с конечными автоматами.

15 Заказ № 563

(Si, q, Sj)-+е и (S11 q, Sj) ^x

(56)

а) А-+ВС,

б) А -*¦ аВ (право-линейное),

в) А-+Ba (лево-линейное).

г) А-+а.

(57)
202

Н. Хомский

Определение 8. Грамматика называется грамматикой с самовставлением, если она содержит нетерминальный символ А, такой, что для некоторых непустых цепочек <р, A-^fAf.

Другими словами, грамматика с самовставлением содержит са-мовставляемые элементы. Теперь можно показать, что:

Если G — бесконтекстная грамматика без самовставления, порождающая L(G), то существует конечный автомат, который порождает L(G). (58)

Отсюда мы немедленно получаем следующий результат.

T е о р е м а 33. Язык L не является регулярным тогда и только тогда, когда все его бесконтекстные грамматики являются грамматиками с самовставлением [4, 8, 9].

Таким образом, L является регулярным языком только в том случае, если он обладает грамматикой без самовставления.

Ясно, что существует алгоритм, определяющий, содержит ли бесконтекстная грамматика самовставляемые элементы (аналогично содержит ли она право-рекурсивные и лево-рекурсивные элементы). Если мы испытаем грамматику G и обнаружим, что она не имеет самовставляемых символов, то мы можем заключить, что G имеет «мощность» конечного автомата (хотя она может содержать и ле-во-рекурсивные, н право-рекурсивные символы).

Если, с другой стороны, мы обнаружим, что G имеет самовставляемые символы, мы не будем знать, обладает ли оиа мощностью конечного автомата. Это зависит от ответа на вопрос, существует ли грамматика G', которая порождает тот же язык, что н G1 но не имеет самовставляемых символов.

Как мы видели, не существует механической процедуры, с помощью которой это может быть установлено для произвольной грамматики G. Таким образом, хотя теорема 33 дает эффективное достаточное условие эквивалентности бесконтекстной грамматики конечному автомату в отношении порождающей способности (и более того, условие, которому удовлетворяет некоторая грамматика каждого регулярного языка), мы знаем, что оно не может быть усилено до эффективного критерия, т. е. эффективного необходимого и достаточного условия.

Утверждение (58) непосредственно следует из элементарных свойств конечного автомата. Предположим, что G является грамматикой без самовставления, порождающей L(G), а нетерминальные элементы G суть A1,...,An. Назовем G сильно связной, если для каждых i, j существуют цепочки 9 и 1>, такие, что Л(—Предполо-
Формальные свойства грамматик

203

жнм, что G — сильно связная грамматика. Если существуют i,j, k, I, такие, что Al-^f1Ayf2 и где <?1фе+^г, тогда

немедленно получаем вопреки предположению, что G обладает свойством самовставления. Следовательно, таких i, /, k, I не существует, и, таким образом, либо каждое нетерминальное правило в G право-линейио, либо каждое правило лево-линейно. В любом случае G порождает регулярный язык.
Предыдущая << 1 .. 27 28 29 30 31 32 < 33 > 34 35 36 37 38 39 .. 45 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed