Достатня та необхідна умова щодо регулярності мови


11

Яке з наведених тверджень є правильним?

  1. існують достатні та необхідні умови щодо регулярності мови, але ще не виявлені.
  2. Немає достатньої та необхідної умови щодо регулярності мови.

  3. Накачана лема - необхідна умова нерегулярності мови.

  4. Накачана лема є достатньою умовою нерегулярності мови.

Я знаю, що # (4) є правильним, а # (3) - хибним, оскільки "зворотність цього твердження не відповідає дійсності: мова, яка відповідає цим умовам, все ще може бути нерегулярною", але що можна сказати про (1) та (2)?


2
Я скоріше скажу, що (4) є правильним: накачана лема розроблена так, щоб показати, що якась мова не є регулярною (в ній зазначено, якщо L регулярна, то ..). Також (3) помилково: en.wikipedia.org/wiki/…
jmad

Погодьтеся з @jmad: накачана лема достатня, не потрібна.
Patrick87

@jmad: Стаття WP, до якої я посилалась у своєму запитанні, стверджує, що "і оригінальна, і загальна версія накачаної леми дають необхідну, але недостатню умову, щоб мова була регулярною".
Джигілі

@Gigli: так. Регулярні. Не "нерегулярні".
jmad

@jmad: На жаль, ви праві. Я відредагую питання, дякую.
Джигілі

Відповіді:


18

Ось деякі необхідні та достатні умови, щоб мова була регулярною.

Теорема. Нехай . Наступні умови еквівалентні:LΣ

  • L породжується регулярним виразом (тобто визначенням регулярної мови).
  • L розпізнається недетермінованим кінцевим автоматом ( Kleene ).
  • εL розпізнається недетермінованим кінцевим автоматом без -переходів.ε
  • L розпізнається детермінованим кінцевим автоматом ( Скотт і Рабін ).
  • ( N , Σ , P , S ) N Σ L породжується граматикою , де - кінцевий підмножина ( Frazier і Page ).(N,Σ,P,S)NΣ
  • L породжується лівою (відповідно правою) регулярною без контексту граматикою.
  • Індекс відношення Нерода є кінцевим (Аніл Нерод, Лінійні автоматичні перетворення , 1958). Це широко (і неправильно) відоме як теорема Міхілла-Нерода. - відношення, яке використовується для побудови мінімальної DFA звичайної мови.LLL
  • Індекс відношення є кінцевим (John Myhill, Finite Automata and Представлення подій , 1957). - відношення, яке використовується для побудови синтаксичного моноїда довільної мови.LLL
  • Синтаксичний моноїд кінцевий (наслідок результату Міхілла). Тут зауважимо, що синтаксичний моноїд, окрім того, що визначається за допомогою відношення , може бути визначений як мінімальний моноїд (за розміром), який розпізнає як перевагу гомоморфізму.L LLLL
  • L може бути розпізнаний машиною Тьюрінга (лише тривіальною).
  • L можна визначити за формулою в монадійській логіці другого порядку над рядками ( Büchi ).

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

Підсумовуючи це, висловлювання 1, 2 і 3 є помилковими, тоді як твердження 4 - істинним, як ви згадували.


Зауважте, що для останнього твердження ми повинні обмежитися WMSO або, що рівнозначно, кінцевими словами. MSO загалом також може виражати -регулярні мови. ω
Рафаель

1
Ви можете додати " розпізнається лівою / правою регулярною граматикою без контексту", для завершення. L
Олексій десять Бринк

@AlextenBrink Забув це! Дякуємо, що згадали про це. Чи є у вас посилання на включення?
Янома

@Janoma: Вибачте, я не можу знайти жодного. Однак доказ надзвичайно простий (їдемо до НФА та назад).
Олексій десять Брінк

9

Досить (і необхідно) показати існування DFA, NFA або регулярного вираження, щоб довести, що мова є регулярною, що спростовує (1) і (2). Щоб показати, що мова не є регулярною, потрібно показати, що DFA, NFA або регулярний вираз не існує.

Лемма накачування є корисним інструментом, щоб показати (можливо, протиріччя), що мова не є регулярною, показавши, що не існує DFA.


1
Лімма з накачуванням, технічно кажучи, показує, що DFA не існує для мови.
Patrick87

@ Patrick87: Дякую Я відредагував відповідь, щоб додати цю деталь.
Віктор Стафуса

1
Тільки заради педантичності: докази, що використовують накачувальну лему, не є доказом суперечності. Оскільки ви доводите негативне твердження (P -> False), з точки зору інтуїціоніста цілком чудово вважати, що P дотримується.
gallais

2
Ви можете записати це як доказ протиріччя: "Припустимо, L є регулярним. Тоді відбувається накачування постійної . Виберіть ... Накачане слово не в Суперечність. $w LpwL
Рафаель

1
Ви можете це написати, але суперечності вам не потрібно . У цьому справа.
Янома

6

Умова "існує регулярний вираз, який генерує точно ", є необхідною і достатньою умовою регулярності мови , за благодаттю її визначення.LLL

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

Є ще два "тести", які можуть довести нерегулярність мови (хоча вони можуть не працювати): ви можете спробувати надати звичайну мову таким чином, щоб їх об'єднання / перехрестя / різниця / конкатенація / коефіцієнт було нерегулярним ( таких операцій є більше), і ви можете спробувати порахувати, скільки слів генерується, і перевірити, чи суперечить він вираженню кількості слів у звичайній мові (як це можна знайти на пов’язаній вами сторінці Вікіпедії).


6

Існує цей чудовий зв’язок між теорією формальної мови та формальною силою серії, що підтверджується Хомським та Шютценбергером [CS63] . У формі, знайденій у [SS78] гл. II, теорема 5.1

LKchar(L)K

char(L)

[SS78] Арто Саломаа та Матті Соіттола. Автоматично-теоретичні аспекти формальної енергетичної серії. Спрингер-Верлаг, Нью-Йорк, 1978.

[CS63] Ноам Хомський та Марсель П. Шютценбергер. Алгебраїчна теорія без контекстних мов. У П. Брафорт та Д. Гіршберг, редактори, Комп'ютерне програмування та формальні мови, сторінки 118–161. Північна Голландія, 1963 рік.


4

ILxyxILy

  1. zxxzxLyzxL
  2. zyyzyLxzyL

ILL

IL

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