Московский государственный университет имени М.В.Ломоносова
Опубликован: 09.07.2007 | Доступ: свободный | Студентов: 2483 / 1007 | Оценка: 4.56 / 4.26 | Длительность: 20:40:00
ISBN: 978-5-9556-0062-8
Специальности: Математик
Лекция 4:

Основные свойства автоматных языков

< Лекция 3 || Лекция 4: 1234 || Лекция 5 >

3.4. Примеры неавтоматных языков

Пример 3.4.1. Рассмотрим язык L = \{ a b^n a^n \mid n \geqslant 0 \} над алфавитом \Sigma = \{ a , b \}. Утверждение леммы 3.3.1 не выполняется ни для какого натурального числа p. Действительно, если w = abpap, то x = abk, y = bm, z = bp-k-map для некоторых k \geqslant 0 и m \geqslant 1 или x = \varepsilon, y = abl, z = bp-lap для некоторого l \geqslant 0. В обоих случаях x y y z \notin L. Таким образом, язык L не является автоматным.

Упражнение 3.4.2. Пусть \Sigma = \{ a , b , c \}. При каких словах u \in \{ a , b \}^* и v \in \{ a , b \}^* язык \{ u^m c v^m \mid m > 0 \} является автоматным?

Замечание 3.4.3. Условие, сформулированное в лемме 3.3.1, является необходимым для автоматности, но не достаточным.

Пример 3.4.4. Пусть \Sigma = \{ a , b \}. Рассмотрим язык L = {akbman | k=0 или m=n}. Положим p = 1. Тогда для любого слова w \in L длины не меньше p найдутся слова x , y , z \in \Sigma ^*, соответствующие утверждению леммы 3.3.1. Тем не менее язык L не является автоматным, так как

L \cap \{ a b^m a^n \mid m \geqslant 0 , \; n \geqslant 0 \} =
\{ a b^n a^n \mid n \geqslant 0 \} .

Лемма 3.4.5*. Пусть L - автоматный язык над алфавитом \Sigma. Тогда найдется такое положительное целое число p, что для любого слова w \in L можно подобрать слова x , y , z \in \Sigma ^*, для которых верно xyz = w, | y | \geqslant [ | w | / p ] и x y ^i z \in L для всех i \geqslant 0. Здесь [m] означает целую часть числа m.

Доказательство. Пусть L распознается конечным автоматом \langle Q , \Sigma , \Delta , I , F \rangle, содержащим только переходы с метками длины единица. Положим p = |Q|. Пусть слово w является меткой успешного пути \langle q_0 , e_1 , q_1 , e_2 , \ldots , q_n \rangle. Обозначим l = [|w|/p]. Если l = 0, то положим x = \varepsilon и y = \varepsilon. Пусть l > 0. Согласно принципу Дирихле найдутся такие натуральные числа j и k, что 0 \leqslant j < k \leqslant p и qjl = qkl. Выберем слова x, y и z так, что |x| = jl, |y| = kl - jl и xyz = w.

Упражнение 3.4.6. Является ли автоматным язык

\{ a^m b^n \mid m \neq 1 \text{ или } n \text{ простое } \} ?

Упражнение 3.4.7. Является ли автоматным язык

\{ u u \reverse v \mid
 u \in \{a,b\}^+ ,\ v \in \{a,b\}^* \} ?

Упражнение 3.4.8. Является ли автоматным язык

\{ w \in \{a,b\}^* \mid множества \{ x \in \{a,b\}^* \mid x a a b \sqsubset w \} и \{ x \in \{a,b\}^* \mid x b b a \sqsubset w \} равномощны?

Упражнение 3.4.9. Является ли автоматным язык

\{ w \in \{a,b\}^* \mid множества \{ x \in \{a,b\}^* \mid x a a b \sqsubset w \} и \{ x \in \{a,b\}^* \mid x b a \sqsubset w \} равномощны?

Упражнение 3.4.10. Является ли автоматным язык

\{ a^k b^n a^n \mid k \geqslant 1 ,\ n \geqslant 0 \} \cup
 \{ b^k a b^m a^n \mid k \geqslant 0 ,\ m \neq n \} ?

Упражнение 3.4.11. Является ли автоматным язык, порождаемый грамматикой

\begin{align*}
F \; & {\to} \; abb , \\
F \; & {\to} \; abbb F F F , \\
F \; & {\to} \; abbbb F F ?
\end{align*}

< Лекция 3 || Лекция 4: 1234 || Лекция 5 >
Юлия Маковецкая
Юлия Маковецкая

Упражнение 2.1.25

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

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