Чи існують по суті неоднозначні та детерміновані без контексту мови?


36

Назвемо контекстну мову детермінованою тоді і лише тоді, коли вона може бути прийнята детермінованим автоматичним натисканням, а недетермінованою в іншому випадку.

Назвемо безконтекстну мову за своєю суттю неоднозначною тоді і лише тоді, коли всі безконтекстні граматики, що породжують мову, неоднозначні, а однозначно - інакше.

Прикладом детермінованої однозначної мови є мова: Прикладом недетермінованої однозначної мови є мова:

{anbn{a,b}|n0}
{w{a,b}|w=wR}

З Вікіпедії , прикладом суттєво неоднозначної безконтекстної мови є такий союз безконтекстних мов, який також повинен бути без контексту:

L={anbmcmdn{a,b,c,d}|n,m0}{anbncmdm{a,b,c,d}|n,m0}

Тепер для запитань:

  1. Чи відомо, чи існує детермінована, по суті, неоднозначна без контекстна мова? Якщо так, чи є (простий) приклад?
  2. Чи відомо, чи існує недетермінований, по суті, неоднозначний без контексту мова? Якщо так, чи є (простий) приклад?

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

Відповіді:


30

Якщо мова є детермінованою, вона приймається деяким детермінованим автоматичним натисканням, що, в свою чергу, означає, що є деяка граматика LR (1), що описує мову, і оскільки кожна граматика LR (1) є однозначною, це означає, що не може бути по суті неоднозначним. Кнут довів це у своїй роботі, в якій представив LR (1) ( Про переклад мов зліва направо ).LL

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

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


+1 для посилання на те, що всі детерміновані КФЛ не є суттєво неоднозначними. Насправді це відповідає і на інше питання: оскільки існує суттєво неоднозначна мова, і вона не є детермінованою, вона повинна бути недетермінованою (зауважте, що моє визначення недетермінованого КФЛ не є стандартним, оскільки виключає детерміновані КФЛ; це моя вина за нецільове використання термінології). У будь-якому випадку, ви навели приклад для запитання (2) і показали, що питання (1) є неможливим. Я зачекаю і побачу, чи хтось детальніше розробить, але в іншому випадку прийму це як правильне. Спасибі!
Patrick87

0

читаючи вікіпедію та відповідь та ваш коментар до неї, повторно (Q2), щоб сказати прямо, всі за своєю суттю неоднозначні КФЛ повинні бути недетермінованими під std defn (включаючи власний приклад!). наткнувся на цю реф

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