Лемма 16.3.1. Рассмотрим алфавит
. Язык
является контекстно-свободным при любом
.
Пример 16.3.2. Пусть
. Тогда язык
над алфавитом
порождается контекстно-свободной грамматикой

Заметим, что
для каждого i.
Язык
является даже линейным (чтобы получить линейную грамматику, достаточно "раскрыть" вспомогательные символы A, B и Z).
Замечание 16.3.3. Лемму 16.3.1 можно доказать, явно построив контекстно-свободную грамматику (как в примере 16.3.2), а можно и вывести из теоремы 12.2.7}, проверив, что
- детерминированный контекстно-свободный язык.
Определение 16.3.4. Пусть
,
,
, где
и
для всех i. Обозначим через
язык
.
Лемма 16.3.5. Язык
является контекстно-свободным при любых
и
.
Доказательство.
.
Лемма 16.3.6. Дополнение языка
является непустым тогда и только тогда, когда постовская система соответствия
имеет решение.
Доказательство Утверждение следует из леммы 16.1.2.
Теорема 16.3.7. Пусть
. Тогда не существует алгоритма, позволяющего по произвольной контекстно-свободной грамматике G над алфавитом
узнать, верно ли, что
.
Доказательство Очевидно, что
тогда и только тогда, когда дополнение языка L(G) является пустым.
Теорема 16.3.8. Пусть
. Тогда не существует алгоритма, позволяющего по произвольным контекстно-свободным грамматикам G1 и G2 над алфавитом
узнать, верно ли, что L(G1) = L(G2).
Доказательство Утверждение следует из предыдущей теоремы и примера 1.5.16.
Теорема 16.3.9. Пусть
. Тогда не существует алгоритма, позволяющего по произвольным контекстно-свободным грамматикам G1 и G2 над алфавитом
узнать, верно ли, что
.
Доказательство Очевидно, что
тогда и только тогда, когда
.
Лемма 16.3.10. Дополнение языка
является бесконечным тогда и только тогда, когда постовская система соответствия
имеет решение.
Теорема 16.3.11. Пусть
. Тогда не существует алгоритма, позволяющего по произвольной контекстно-свободной грамматике G над алфавитом
узнать, является ли бесконечным множество
.
Упражнение 16.3.12. Рассмотрим язык, порождаемый грамматикой

Содержит ли этот язык все слова из {a,b}*?
Упражнение 16.3.13. Рассмотрим язык, порождаемый грамматикой

{a,b}*?






