Доведення накачування леми для без контекстних мов за допомогою автоматичних натискань


21

Насосна лемму для регулярних мов можна довести, розглядаючи кінцевий автомат, що розпізнає мову вивчав, вибираючи рядок з довжиною більше , ніж його число станів, і застосуванням принципу Діріхле. Але накачана лема для контекстних мов (як і лемма Огдена, яка є дещо більш загальною), проте доводиться, розглядаючи безконтекстну граматику вивченої мови, підбираючи достатньо довгий рядок і дивлячись на дерево розбору.

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

Звідси моє запитання: чи є докази перекачування лемми для безконтекстних мов, яка передбачає лише автоматичні автоматичні вимикання, а не граматики?

Відповіді:


16

Я знову задумався над цією проблемою, і, думаю, маю повне підтвердження. Це трохи складніше, ніж те, що я передбачав. Коментарі дуже вітаються! Оновлення: я подав цей доказ на arXiv, якщо це комусь корисно: http://arxiv.org/abs/1207.2819

Нехай - контекстна мова над алфавітом . Нехай - автоматичний вимикач, який розпізнає із алфавітом стека . Позначимо черезчисло станів . Не втрачаючи загальності, ми можемо припустити, що переходи точки є найвищим символом стека і не натискають жодного символу на стеку, або натискають на стек попередній верхній символ і якийсь інший символ.Σ A L Γ | А | A ALΣALΓ|A|AA

Визначимоі довжина накачування, і покаже, що всі такі, що мають розклад виду такий, що , і .р = | А | ( | Γ | + 1 ) p ′ w ∈ L | w | > p w = u v x y z | v x y | ≤ p | vp′=|A|2|Γ|p=|A|(|Γ|+1)p′w∈L|w|>pw=uvxyz|vxy|≤p∀ n ≥ 0 , u v n x|vy|≥1∀n≥0,uvnxynz∈L

Нехай такий, що . Нехай - приймаючий шлях мінімальної довжини для (представлений у вигляді послідовності переходів ), позначимо його довжину через. Ми можемо визначити для, розмір стека в положенні приймаючого шляху. Для всіх ми визначаємо -рівень над як набір з трьох індексів з таким чином, що:| w | > p π w A | π | 0 ≤ i < | π | s i i N > 0w∈L|w|>pπwA|π|0≤i<|π|siiN>0Ni , j , k 0 ≤ i < j < k ≤ pπi,j,k0≤i<j<k≤p

  1. si=sk,sj=si+N
  2. для всіх таких, що ,i ≤ n ≤ j s i ≤ s n ≤ s jni≤n≤jsi≤sn≤sj
  3. для всіх таких, що , .j ≤ n ≤ k s k ≤ s n ≤ s knj≤n≤ksk≤sn≤sk

(Для прикладу цього див. Малюнок для випадку 2 нижче, який ілюструє .)N

Визначимо рівень про в якості максимального таке , що має -Рівень. Це визначення мотивоване наступним властивістю: якщо розмір стека через шлях стане більшим, ніж його рівень , символи стека більше рівнів глибини ніколи не будуть вискакуватися. Тепер ми виділимо два випадки: або , і в цьому випадку ми знаємо, що однакова конфігурація для стану автомата та найвищих символів стека зустрічається двічі на перших кроках , абоπ N π N π l l l < p ′ l p + 1 π l ≥ p ′ v ylπNπNπlll<p′lp+1πl≥p′, і повинно бути положення для складання і відклеювання, яке можна повторити довільно кількість разів, з якого ми побудуємо і .vy

Випадок 1. . Ми визначаємо конфігурації як пари стану і послідовність символів стеки (де стеки розміром менше з представлені шляхом додавання їх до спеціальним порожнім символом, саме тому ми використовуємо при визначенні ). За визначенням існують таких конфігурацій, що менше . Отже, у перших кроків однакова конфігурація зустрічається двічі у двох різних положеннях, скажімо, . Позначимо по A A l l l | Γ | + 1 р | А | ( | Г | + 1 ) л р р + 1 π я < J я J ш я J π я ≤ 0 ⋯ яl<p′AAlll|Γ|+1p|A|(|Γ|+1)lpp+1πi<ji^ (респ. ) положення останньої літери прочитаної на кроці (відповідно ) від . У нас є . Таким чином, ми можемо з , , , . (За допомогою позначаємо літери від включно до виключно.) За побудовою, .j^wijπ ш=UVхi^≤j^у г = ε у = шw=uvxyzyz=ϵu=w0⋯i^ | v x y | ≤ p х= ш J ⋯ | w | w x ⋯ y wxyv=wi^⋯j^x=wj^⋯|w|wx⋯ywxy|vxy|≤p

Ми також повинні показати, що , але це випливає з нашого спостереження вище: символи стека глибше ніколи не з'являються, тому немає можливості розрізнити конфігурації, рівні за нашим визначенням, і приймаючий шлях для будується з конфігурації , повторюючи кроки між та , разів.l u v n x w∀n≥0,uvnxynz=uvnx∈Lluvnxwj nijn

Нарешті, у нас також є , тому що якщо , то тому що ми маємо однакову конфігурацію на кроках та в , буде прийнятним шляхом для , що суперечить мінімальності .v = ϵ i j π π ′ = π 0 ⋯ i π j ⋯ ||v|>0v=ϵijπwππ′=π0⋯iπj⋯|π|wπ

(Зверніть увагу, що цей випадок означає застосування накачувальної леми для звичайних мов шляхом жорсткого кодування найпомітніших символів стеку в автоматичному стані, що є адекватним, оскільки є досить малим, щоб переконатися, що більше, ніж кількість станів цього автомата . Основна хитрість полягає в тому, що ми повинні налаштувати -переходи.)лllϵ|w|ϵ

Випадок 2. . Нехай - -рівень. До будь-якого розміру стеку , ми пов'язуємо останній push і перший pop . За визначенням та . Ось ілюстрація цієї конструкції. Щоб спростити малюнок, я опускаю різницю між позиціями шляху та позиціями слів, які нам доведеться зробити пізніше. i , j , k p ′ h s i ≤ h ≤ s j lp ( h ) = max ( { y ≤ j | s y = h } ) fp ( h )l≥p′i,j,kp′hsi≤h≤sj lp⁡(h)=max({y≤j|sy=h}) i ≤ lp ( hfp⁡(h)=min({y≥j|sy=h})j ≤ fp ( h ) ≤ ki≤lp⁡(h)≤jj≤fp⁡(h)≤k

Ілюстрація побудови для випадку 2. Щоб спростити малюнок, розміщення позицій шляху та позицій слова опускається.

Ми говоримо, що повний стан розміром стека є потрійним, утвореним:h

  1. стан автомата в положенніlp⁡(h)
  2. символ верхнього стека в положенніlp⁡(h)
  3. стан автомата в положенніfp⁡(h)

Є можливі повні стану, і розмір стека між і , тому, по pidgeonhole принципі, існують два стека розміри з таким чином, щоб в повній мірі станів при і однакові. Як і у випадку 1, ми визначаємо через , , та позиції останніх літер прочитаних у відповідних позиціях у . Ми деp ′ + 1 s i s j g , h s i ≤ g < h ≤ s j g h ^ lp ( g ) ^ lp ( h ) ^ fp ( h ) ^ fp ( g ) w π w = u v x y z u = w 0 g ) v =p′p′+1sisjg,hsi≤g<h≤sjghlp⁡(^g)lp⁡(^h)fp⁡(^h)fp⁡(^g)wπw=uvxyzu=w0⋯lp⁡(^g), , , , і . x= w ^ lp ( h ) ⋯ ^ fp ( h ) y= w ^ fp ( h ) ⋯ ^ fp ( g ) z= wv=wlp⁡(^g)⋯lp⁡(^h)x=wlp⁡(^h)⋯fp⁡(^h)y=wfp⁡(^h)⋯fp⁡(^g)z=wfp⁡(^g)⋯|w|

Ця факторизація забезпечує, що (тому що за нашим визначенням рівнів).k ≤ p|vxy|≤pk≤p

Ми також повинні показати , що . Для цього зауважте, що кожного разу, коли ми повторюємо , ми починаємо з одного і того ж стану і тієї ж вершини стека, і ми не вискакуємо нижче свого поточного положення в стеку (інакше нам доведеться знову натискати на поточну позицію, порушуючи максимальність ), тому ми можемо слідувати тим самим шляхом в і натиснути ту саму послідовність символів на стек. За максимальністю та мінімальністю , читаючи , ми не попадаємо нижче нашого поточного положення в стеку, тому шлях, який слід в автоматі, однаковий незалежно від кількості раз ми повторювалиv lp ( g ) A lp ( h ) fp ( h ) x v w v v v fp ( g )∀n≥0,uvnxynz∈Lvlp⁡(g)Alp⁡(h)fp⁡(h)xv. Тепер, якщо ми повторюємо стільки разів, скільки ми повторюємо , оскільки ми починаємо з того самого стану, оскільки ми натиснули ту саму послідовність символів на стеку з нашими повторами , і оскільки ми не виводимо більше того, що має складений мінімальністю , ми можемо слідувати тим самим шляхом в і виводити ту саму послідовність символів зі стека. Отже, приймаючий шлях від може бути побудований з приймаючого шляху для .wvvvfp⁡(g)u v n x y n z wAuvnxynzw

Нарешті, у нас також є , тому що, як і у випадку 1, якщо і , ми можемо побудувати коротший приймаючий шлях для , видаливши і .v = ϵ y = ϵ w π lp ( g ) ⋯ lp ( h ) π fp ( h ) ⋯ fp ( g )|vy|>1v=ϵy=ϵwπlp⁡(g)⋯lp⁡(h)πfp⁡(h)⋯fp⁡(g)

Отже, ми маємо адекватну факторизацію в обох випадках, і результат доведений.

(Заслуга Марка Жанмугіна за те, що він допомагає мені в цьому.


7

Так, це можливо. Ми могли б використовувати поняття поверхневих конфігурацій; їх Кук представив давно назад. З цим було б досить легко вийти з версії викачування лем.

Що стосується конфігурацій поверхні, то майже будь-який папір на LogCFL повинен нести своє визначення. Ось нещодавній документ і ось теза

Можливо, хтось більш енергійний зможе викласти деталі!


Дякуємо за відповідь! Так, цілком природно дивитись на поєднання стану автомата та верхнього символу стека. Я все ще думаю про цю проблему, і не можу розібратися в деталях ... Довідка цінується. :-)
— a3nm

3

Для повноти посилання на доказ у цьому напрямку.

A.Ehrenfeucht, HJHoogeboom, G.Rozenberg: Координовані парні системи. I: слова Дайк і класичне накачування RAIRO, Inf. Теор. Додаток 20, 405-424 (1986)

Анотація Поняття системи скоординованої пари [...] дуже відповідає (є іншим формулюванням) поняттю автоматичного поштовху. У цій роботі ми [...] досліджуємо можливість отримання насосних властивостей без контекстних мов за допомогою аналізу обчислень у системах cp. Для цього ми аналізуємо комбінаторну структуру слів Діка. Властивості слів Дійка, які ми досліджуємо, випливають із комбінаторного аналізу обчислень у системах cp. Ми демонструємо, як ця відповідність може бути використана для доведення класичної насосної леми.


1

Обговорюючи цю проблему з Жеро Сенегергом, він вказав мені на цей документ Сакаровича, що вже підтверджує цей результат. Здається, доказ датується цим документом Огдена.

Список літератури:

  • Сакарович, Жак. Sur une propriété d'itération des langages algébriques déterministes. (Франц. Англ. Резюме). Математика. Теорія систем 14 (1981), вип. 3, 247–288.
  • Вільям Ф. Огден. 1969. Теореми інтеркаляції для стекових мов. У працях першого щорічного симпозіуму ACM з теорії обчислень (STOC '69).
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.