Изменения

Перейти к: навигация, поиск

Лемма Огдена

82 байта добавлено, 21:17, 18 января 2017
Пример не КС-языка, для которого выполняется лемма
== Пример не КС-языка, для которого выполняется лемма ==
Докажем, что язык <tex>L = {a^mb^nc^l}</tex>, где <tex> m, n, l </tex> - попарно различны, не является КС-языком.
ДокажемПредположим, что данный язык контекстно-свободный. Возьмем цепочку <tex>L \omega = {a^mbkb^nc{k+(k-1)!} c^l{k+k!}</tex>, где <tex> mk</tex> - константа из леммы Огдена, выделив в ней все вхождения символа <tex>a</tex>. Тогда при представлении цепочки <tex>\omega</tex> в виде <tex>uvxyz</tex> цепочка <tex>x</tex> обязательно «зацепит» хотя бы одинсимвол <tex>a</tex>. Cледовательно, nцепочка <tex>v</tex> состоит только из символов <tex>a</tex> (как и цепочка <tex>u</tex>). А именно, l <tex>v = \alpha^p</tex>, <tex>1 \leqslant p \leqslant k+1</tex> - попарно различны не является кс-языком.
ПредположимТогда, что данный язык контекстно-свободный. Возьмем цепочку если цепочка <tex>z=a^kb^{k+(k-1)!} c^{k+k!}x</tex>содержит и другие символы, где кроме <tex>ka</tex> - константа из леммы Огдена, выделив в ней все вхождения символа цепочка <tex>ay</tex>. Тогда при представлении цепочки может входить либо в «зону» символов <tex>zb</tex> (целиком), либо в виде «зону» символов <tex>uvxyzc</tex> цепочка (целиком), так как расположение накачиваемых цепочек на стыках зон, очевидно, невозможно. В первом случае «кратность» <tex>\omegaalpha</tex> обязательно «зацепит» хотя бы одинсимвол накачки цепочки <tex>av</tex>. Cледовательно, цепочка которая уравняет числа символов <tex>xa</tex> состоит только из символов и <tex>ac</tex> (как и цепочка , определяется из соотношения:<tex>uk + \alpha \cdot p = k + k!</tex>). А именно,то есть <tex>x = \alpha^p, 1 <= \frac{k!}{p <= k+1} </tex>.
Тогда, если цепочка Во втором случае <tex>\omegafrac{k-1!}{p}</tex> содержит и другие символы, кроме - кратная накачка цепочки <tex>av</tex>, цепочка уравняет числа вхождений символов <tex>ya</tex> может входить либо в «зону» символов и <tex>b</tex> (целиком).Не исключено, наконец, либо что обе накачиваемые цепочки расположены в «зону» «зоне» символов <tex>ca</tex> (целиком), так как расположение накачиваемых цепочек на стыках зон, очевидно, невозможно. В первом случае «кратность» Но тогда одним из указанных выше способов накачки можно уравнять числа либо символов <tex>a</tex> накачки цепочки и <tex>xb</tex>, которая уравняет числа символов либо <tex>a</tex> и <tex>c</tex>, определяется из соотношения:<tex>k + al * p = k + k!, то есть al = k!/p </tex>.
Во втором случае <tex>(k-1)!/p</tex> - кратная накачка цепочки x уравняет числа вхождений
символов <tex>a</tex> и <tex>b</tex>.
Не исключено, наконец, что обе накачиваемые цепочки расположены в «зоне» символов <tex>a</tex>. Но тогда одним из указанных выше способов накачки можно уравнять числа либо символов <tex>a</tex> и <tex>b</tex>, либо <tex>a</tex> и <tex>c</tex>.
//картинка
 
Рис. Цепочки контекстно-свободного языка
 Заметим, что возможность выделения символов существенно упрощает анализ данного языка, так как позволяет считать, что цепочка <tex>xv</tex> может расположиться единственным способом. Иначе, т.е. при использовании леммы о разрастании для кс-языков, решение
задачи было бы, по меньшей мере, сильно затруднено.
 
== См. также ==
Анонимный участник

Навигация