Опубликован: 09.07.2007 | Уровень: профессионал | Доступ: свободно | ВУЗ: Московский государственный университет имени М.В.Ломоносова
Лекция 10:

Основные свойства контекстно-свободных языков

< Лекция 9 || Лекция 10: 123456 || Лекция 11 >

9.4. Свойства замкнутости класса контекстно-свободных языков

Теорема 9.4.1. Если L - контекстно-свободный язык, то L* тоже контекстно-свободный язык.

Доказательство. Пусть язык L порождается контекстно-свободной грамматикой \lalg N , \Sigma , P , S \ralg. Тогда язык L* порождается грамматикой

\lalg N \cup \{ T \} , \Sigma ,
 P \cup \{ T \tto S T ,\ T \tto \varepsilon \} ,
 T \ralg ,
где T \notin N \cup \Sigma.

Теорема 9.4.2. Если L1 и L2 - контекстно-свободные языки над алфавитом \Sigma, то L_1 \cdot L_2 тоже контекстно-свободный язык.

Доказательство. Пусть язык L1 порождается контекстно-свободной грамматикой \lalg N_1 , \Sigma , P_1 , S_1 \ralg и L2 порождается контекстно-свободной грамматикой \lalg N_2 , \Sigma , P_2 , S_2 \ralg, где N_1 \cap N_2 = \varnothing. Тогда L_1 \cdot L_2 порождается грамматикой

\lalg N_1 \cup N_2 \cup \{ T \},
 \Sigma,
 P_1 \cup P_2 \cup \{ T \tto S_1 S_2 \} , T \ralg ,
где T \notin N_1 \cup N_2 \cup \Sigma.

Теорема 9.4.3. Если L1 и L2 - контекстно-свободные языки над алфавитом \Sigma, то L_1 \cup L_2 тоже контекстно-свободный язык.

Доказательство. Пусть язык L1 порождается контекстно-свободной грамматикой \lalg N_1 , \Sigma , P_1 , S_1 \ralg и L2 порождается контекстно-свободной грамматикой \lalg N_2 , \Sigma , P_2 , S_2 \ralg, где N_1 \cap N_2 = \varnothing. Тогда L_1 \cup L_2 порождается грамматикой

\lalg N_1 \cup N_2 \cup \{ T \},
 \Sigma,
 P_1 \cup P_2 \cup \{ T \tto S_1 ,\ T \tto S_2 \} ,
 T \ralg ,
где T \notin N_1 \cup N_2 \cup \Sigma.

Теорема 9.4.4. Если L - контекстно-свободный язык, то L \reverse тоже контекстно-свободный язык.

Упражнение 9.4.5. Является ли контекстно-свободным язык \{ w \in \{a,b,c\}^* \mid
 | w |_a \neq | w |_b \rusor | w |_b \neq | w |_c \}
?

Упражнение 9.4.6. Найти контекстно-свободную грамматику для языка L_1 \cup L_2, где L1 порождается грамматикой

\begin{align*}
F \; & {\to} \; a , \\
F \; & {\to} \; b F , \\
F \; & {\to} \; c F F ,
\end{align*}
а язык L2 порождается грамматикой
\begin{align*}
F \; & {\to} \; a M , & M \; & {\to} \; a F , \\
F \; & {\to} \; c M , & M \; & {\to} \; b F , \\
& & M \; & {\to} \; \varepsilon .
\end{align*}

9.5. Пересечение и дополнение контекстно-свободных языков

Теорема 9.5.1. Неверно, что для любых контекстно-свободных языков L1 и L2 язык L_1 \cap L_2 тоже контекстно-свободный.

Доказательство. Положим L_1 = \{ a^m b^m c^n \mid m \geq 0 \commaand n \geq 0 \} и L_2 = \{ a^m b^n c^n \mid m \geq 0 \commaand n \geq 0 \}. В примере 9.2.1 было доказано, что язык L_1 \cap L_2 не является контекстно-свободным.

Теорема 9.5.2. Неверно, что для любого контекстно-свободного языка L \subseteq \Sigma ^* язык \Sigma ^* \sminus L тоже контекстно-свободный.

Доказательство. Положим L = \Sigma ^* \sminus \{ a^n b^n c^n \mid n \geq 0 \}, где \Sigma = \{ a , b , c \}. В примере 9.3.4 было доказано, что язык L является линейным (и следовательно, контекстно-свободным).

Упражнение 9.5.3. Является ли контекстно-свободным язык \{a\}^* \sminus \{ a^{n^2} \mid n \geq 0 \}?

Упражнение 9.5.4. Является ли контекстно-свободным язык \{a,b\}^* \sminus \{ w w \mid w \in \{a,b\}^* \}?

Упражнение 9.5.5. Существует ли такой линейный язык L над алфавитом {a,b}, что язык L \reverse \cap L не является контекстно-свободным?

< Лекция 9 || Лекция 10: 123456 || Лекция 11 >
Юлия Маковецкая
Юлия Маковецкая

Упражнение 2.1.25

Евгения Гунченко
Евгения Гунченко

Сдавала тест экстерном, результат получен 74 после принятия данного результата и соответственно оплаты курса, будет ли выдано удостоверение о повышении квалификации?

Олег Гуреев
Олег Гуреев
Россия
Илья Константинов
Илья Константинов
Россия, Краснодар