Чи є доповненням {ww | …} Без контексту?


15

Визначте мову як L = { a , b } - { w w w { a , b } } . Іншими словами, L містить слова, які не можуть бути виражені як слово, повторене двічі. Є чи L контекстно-вільний чи ні?LL={a,b}{www{a,b}}LL

Я намагався до перетину з на * б * на * б * , але я до сих пір не можу нічого довести. Я також дивився на теорему Париха, але це не допомагає.Labab


Відповіді:


29

Це без контексту. Ось граматика:

A a | a A a | a A b | b A b | b A a B b | a B a | a B b | b B b | б Б аSA|B|AB|BA
Aa|aAa|aAb|bAb|bAa
Bb|aBa|aBb|bBb|bBa

породжує слова непарної довжини з а в центрі. Те саме для B і b .AaBb

Я представлю доказ того, що ця граматика правильна. Нехай (мова у питанні).L={a,b}{www{a,b}}

Теорема. . Іншими словами, ця граматика породжує мову у питанні.L=L(S)

Доказ. Це , звичайно , має місце для всіх непарних слів довжини, так як ця граматика породжує все непарні довжини слів, як це робить . Тож давайте зосередимось на словах рівної довжини.L

Припустимо, має рівну довжину. Я покажу, що x L ( G ) . Зокрема, я стверджую, що x можна записати у вигляді x = u v , де і u, і v мають непарну довжину і мають різні центральні літери. Таким чином, x може бути похідний або від A B, або B A (відповідно до того , що центральна буква u є a або b ). Обґрунтування позову: Нехай i- й лист xxLxL(G)xx=uvuvxABBAuabixпозначати , так що x = x 1 x 2x n . Тоді оскільки x не знаходиться в { w w w { a , b } n / 2 } , повинен існувати якийсь індекс i такий, що x ix i + n / 2 . Отже, ми можемо взяти u = x 1x 2 i -xix=x1x2xnx{www{a,b}n/2}ixixi+n/2 іv= x 2 i x n ; центральною літероюuбуде x i , а центральною літероюvбуде x i + n / 2 , тому за побудовоюu,vмають різні центральні літери.u=x1x2i1v=x2ixnuxivxi+n/2u,v

Далі припустимо, що має рівну довжину. Я покажу , що ми повинні мати х L . Якщо х має рівну довжину, вона має бути похідною або від A B, або B A ; без обмеження спільності, припущу , що виводиться з A B , і х = у v , де у виводимо з А і V виводимо з B . Якщо u , v мають однакові довжини, тоді ми повинні мати u xL(G)xLxABBAABx=uvuAvBu,v (оскільки вони мають різні центральні букви), так x { w w w { a , b } } . Отже, припустимо, що u , v мають різну довжину, скажімо, довжина і n - відповідно. Тоді їх центральними літерами є u ( + 1 ) / 2 і v ( n - + 1 ) / 2 . Те, що уuvx{www{a,b}}u,vnu(+1)/2v(n+1)/2 мають різні центральні літери, означає, що u ( + 1 ) / 2v ( n - + 1 ) / 2 . Оскільки x = u v , це означає, що x ( + 1 ) / 2x ( n + + 1 ) / 2 . Якщо ми спробуємо розкласти х як x = w wu,vu(+1)/2v(n+1)/2x=uvx(+1)/2x(n++1)/2x Де w , w ' мають однакову довжину, тоді ми виявимо, що w ( + 1 ) / 2 = x ( + 1 ) / 2x ( n + + 1 ) / 2 = w ( + 1 ) / 2 , тобто w w , так x { w wx=www,ww(+1)/2=x(+1)/2x(n++1)/2=w(+1)/2ww . Зокрема, це означаєщо х L .x{www{a,b}}xL


2
Я відредагував відповідь, щоб надати доказ правильності цієї граматики, спираючись на підказку / ескіз, поданий Євгенієм Елтішевим. Сподіваємось, зараз має бути зрозуміліше, чому це працює.
DW

Чи може він генерувати "aabb"?
manasij7479

1
SABaBa(aBb)aabb

3

Ця мова без контексту, це було доведено в наступній роботі:

Томашевський, Зах. "Граматика без контексту для повторного рядка." Журнал інформації та інформатики , 2012 ( PDF ).

SEUϵEABBAAZAZaBZBZbUZUZZZab

8
Ласкаво просимо! Далі не є критикою цієї відповіді. Журнал інформатики та обчислювальної техніки публікується «World академічного союзу», який знаходиться на списку Beall в загарбницьких видавців відкритого доступу. Сумно, що в світі є компанії, які займуть відносно великі суми грошей людей, щоб опублікувати документи, які займаються не тільки завданням на бакалаврському рівні.
Девід Річербі

У мене недостатньо репутації, щоб коментувати вищезгадану відповідь. Але ця граматика здається мені неправильною. Він не може генерувати "aaab", який є мовою.
А. Машрегі

1
CFGCNFCYKSABaAaBaaaBaaabaaab

Ви маєте рацію
А. Машрегі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.