Приклад безконтекстної вільної мови, який, тим не менш, МОЖЕ бути накачаним?


15

Таким чином, L в основному задовольняє умовам накачувальної леми для CFL, але не є CFL (що можливо відповідно до визначення леми).


Це питання домашнього завдання чи вам просто цікаво?
Юваль Фільм

Це не домашнє завдання, але я розраховую побачити це на іспиті (просто хижак, знаючи свого професора). І мені завжди цікаво :)
користувач2329564

2
У нас було подібне питання, але щодо звичайних мов . Застосовується один і той же тип конструкції: візьміть спеціальний символ і розгляньте $ K { $ kk 1 } { a , b } за неприємну мову K { a , b } . $$K{$kk1}{a,b}К{а,б}
Гендрик Ян

Відповіді:


13

Класичний приклад - . Мудрий показує у своїй роботіСильна накачана лема для безконтекстних мов,що ані барова-гіллелівська накачана лема, ні теорема Паріха (зазначаючи, що набір довжин слів у безконтекстній мові є напівлінійним) не можуть бути використані для доведення що L не є контекстним. Інші хитрощі, як перетинання звичайної мови, також не допомагають. (Лема Огдена, узагальнення накачувальної леми Бар-Гіллела, доводить, що LL={aibjck:i,j,k all different}LLвін також не є контекстним.) Він також пропонує альтернативну накачувальну лему, еквівалентну контекстної вільності (для обчислюваних мов), і використовує її для доведення того, що не є контекстним.L

Насосна лема стану Мудрого , що мова є контекстно-вільної , якщо і тільки якщо існує ( без обмежень) граматики G генерації L і ціле число K таке , що всякий раз , коли G генерує «сентенціальной форму» и (так їй може включати в себе не-термінали) довжини | s | > k , ми можемо записати s = u v x y z, де x , v y не порожні, | v x y | kLГLкГсс|с|>кс=уvхуzх,vу|vху|к, і є нетермінальний такий, що G породжує u A z, а A породжує і v A y, і x .АГуАzАvАух

Неодноразово застосовуючи умову в лемі, Мудрий може довести, що не є контекстним, але деталі є дещо складними. Він також дає ще більш складну еквівалентну умову і використовує це для доведення, що мова { a nL не може бути записана як кінцевий перетин без контекстних мов.{anbanm:n,m>0}

Якщо ви не можете отримати доступ до документа Wise (він знаходиться за платною стіною), існує машинописна версія, що вийшла як технічний звіт університету Індіани.


Безконтекстну мову, яка задовольняє умовам викачки лемми Огдена, надають Джонсонбо і Міллер, Конверс про перекачування лем , і приписують там Боссону та Хорвату, мовам, що задовольняють лемму Огдена . Мова, про яку йдеться,

L=n1(e+a+d+)n(e+b+d+)n(e+c+d+)n(a+b+c+d)ΣΣ(a+b+c+e)Σ(ed+d(a+b+c)+(a+b+c)e)Σ.
Ми можемо записати , що відповідає двом різним лініям. Зверніть увагу, що L 1L 2 = і що L 2 є регулярним. Лема Огдена може бути використана для доведення того, що L 1 не є контекстним, і так само не є L ' , але його не можна використовуватибезпосередньо,щоб показати, що L ' не є контекстним.L=L1L2L1L2=L2L1LL

Чи не потрібно, щоб принаймні одна продукція виглядала так: A -> sententialForm1 SententialForm2, щоб будь-яка перекачування була можлива
user2329564

Ну і більш загальне: чи не потрібно, щоб нетермінальний B був частиною сентенційної форми, похідної від A такою, що B-> sententialForm1.B.sententialfrom2 - це виробництво G. Інакше як би бути певним, що слово Довільну довжину можна накачати з А.
user2329564

Я не розумію , чому, у нас є виробництво , що відповідає накачуванні. Наприклад, ви негайно відновите насосну лему, оскільки S u A z u v i A y i z u v i x y i z . A+vAySuAzuviAyizuvixyiz
Yuval Filmus

4
Звучить як приємне доповнення до нашої довідки .
Рафаель

Ще одне, чого не вистачає, це закриття під "оберненими відображеннями gsm", див. Planetmath.org/generalizedsequencesmachine . Можливо, я додам їх у якийсь момент.
Yuval Filmus

8

Ще простіше: . Завжди може накачати a s; перетин з регулярною L ( a b + c + d +{ambncndn:m1,n1}a дає не-CFL (і цеможнадовести, перекачуючи лему).L(ab+c+d+)


1
Це буде приємним доповненням до третього домашнього завдання ... muahaha
Ренато Санхуеса

1
Я не думаю, що це правильно. Якщо мова починається з тільки один , потім , якщо ви спробуєте накачати а , ви повинні враховувати той факт , що 0 має бути на мові. aaa0
MCT

Щоб розширити коментар MCT: розгляньте слово ; вибираємо v = a , u = w = x = ε , y = b p c p d p . Тоді, при i = 0 , u v i w x i y відсутня в мові, оскільки вона не починається з a, тому лема не відповідає. abpcpdpv=au=w=x=εy=bpcpdpi=0uviwxiy
potestasity

2

Проста мова - . Перетинайте з L ( a b + c + d + ), щоб отримати чітко не-CFL, але ви завжди можете перекачувати{abncndn:n1}L(aa+b+c+d+)L(ab+c+d+) і міметизувати рівність по довжині в моріa+ .


Приклад Мудрого (мабуть) також несприйнятливий до цих методів, або він так стверджує.
Yuval Filmus

4
@YuvalFilmus, так здається. Але мій приклад захищений від викладачів, які сумніваються, що ви зрозуміли документ Wise або хочете повного підтвердження того, що це не КЛЛ в межах 2-годинного обмеження іспиту ;-)
vonbrand
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.