Наскільки потужні CFG, які дозволяють нескінченну кількість правил?


9

Нещодавно мені було цікаво, що буде, якщо ми дозволимо без контекстних граматик мати нескінченну кількість правил. Зрозуміло, якщо ми дозволимо довільні такі нескінченні набори правил, кожна моваL над деяким алфавітом Σ можна описати CFG Г=({S},Σ,R,S) з R={S→ш∣ш∈L}. Але що робити, якщо ми обмежимосьR до таких наборів правил, які можна створити контекстними граматиками?

Для цього дається набір нетерміналів N і термінали Σ, розглянемо правила не як елементи N×(N∪Σ)∗, але як рядки над алфавітом R(N,Σ)=N∪Σ∪{→}. Тепер моє питання полягає в тому, якщо ми визначимо нескінченне правило CFG як кортежГ=(N,Σ,R,S) де

  • N є кінцевим набором нетерміналів
  • Σ є кінцевим алфавітом
  • R - це сукупність правил форми А→ш з А∈N, ш∈(N∪Σ)∗ такі, що є якісь CFG Г' над R(N,Σ) з R=L(Г')
  • S∈N є початковим нетермінальним

і ми визначаємо L(Г) для таких нескінченних правил CFG, як це робиться для CFG, яке співвідношення між класом мов, породженим нескінченними CFGs правилами (назвемо цей клас irСЖ), клас безконтекстних мов СЖ і клас RЕ?

Очевидно, що у нас є СЖ⊆irСЖ⊆RЕ, але є irСЖ еквівалентний одному з цих класів (або якийсь інший клас)?


Відповіді:


7

Припустимо, ми беремо метаграму G′і розподілити його за допомогою двох символьних префіксів. Іншими словами, для кожногоA∈N побудувати GA′, ліво-похідне від G′ над струною A→. Це створить (скінченний) набір (кінцевих) метаграм, кожен з яких виробляє всі (можливо нескінченні) виробництва для деякихA∈N.

Тепер побудуйте граматику G″, правила яких є об'єднанням усіх правил у GA′ граматики (з нетерміналами, перейменованими для уникнення зіткнень) разом із A→SGA′ для кожного GA′, де SGA′ є нетермінальним запуском для GA′. Нетермінали дляG″ включати N і всі нетермінали для кожного GA′; нетермінал початку - це нетермінал початкуГ, і термінали для G″ є саме клемами для Г. Я стверджую (без доказів), щоG″є кінцевою граматикою для тієї самої мови, оскільки на процес деривації не впливає походження правил; це лише підстановка рядків над алфавітом.

Якщо наведений вище конспект є коректним, СЖ і irСЖ однакові.

Як я нагадав у коментарі, є більш цікаві приклади дворівневих граматик, зокрема граматики Ван Війнгаарда та різні спроби, які були зроблені для створення більш керованих формалізмів, не втрачаючи при цьому всієї додаткової сили.

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