Существенно неоднозначные языки — различия между версиями
Строка 1: | Строка 1: | ||
== Неоднозначные грамматики == | == Неоднозначные грамматики == | ||
− | Неоднозначной грамматикой называется грамматика, по которой для одной цепочки существует более одного дерева разбора | + | Неоднозначной грамматикой называется грамматика, по которой для одной цепочки существует более одного дерева разбора. |
===Пример:=== | ===Пример:=== | ||
Строка 10: | Строка 10: | ||
Эта граматика неоднозначна. | Эта граматика неоднозначна. | ||
+ | |||
+ | == Существенно неоднозначные языки == | ||
+ | Язык называется существенно неоднозначным, если любая его грамматика неоднозначна. | ||
+ | Пример такого языка: <tex>L = \{a^n b^n c^m d^m | m, n > 1\} \cup \{a^n b^m c^m d^n | m, n > 1\}</tex> - в нем слова вида <tex>a^k b^k c^k d^k</tex> во всех грамматиках имеют более одного дерева разбора. |
Версия 07:50, 2 декабря 2010
Неоднозначные грамматики
Неоднозначной грамматикой называется грамматика, по которой для одной цепочки существует более одного дерева разбора.
Пример:
Рассмотрим грамматику
и выводимую цепочку . Ее можно вывести двумя способами:
Эта граматика неоднозначна.
Существенно неоднозначные языки
Язык называется существенно неоднозначным, если любая его грамматика неоднозначна. Пример такого языка:
- в нем слова вида во всех грамматиках имеют более одного дерева разбора.