Доказательство нерегулярности языков: лемма о разрастании — различия между версиями
Zarubkin (обсуждение | вклад) |
Zarubkin (обсуждение | вклад) |
||
Строка 13: | Строка 13: | ||
'''Доказательство нерегулярности языка''' | '''Доказательство нерегулярности языка''' | ||
− | Чаще используется отрицание леммы для доказательства нерегулярности языка. Пусть <tex>L</tex> - язык над алфавитом <tex>\Sigma</tex>. Если для любого натурального <tex>n</tex> найдётся такое слово <tex>\omega</tex> из данного языка, что его длина будет не меньше <tex> n</tex> и при любом разбиении на три слова <tex>x,y,z</tex> такие, что <tex> : y | + | Чаще используется отрицание леммы для доказательства нерегулярности языка. Пусть <tex>L</tex> - язык над алфавитом <tex>\Sigma</tex>. Если для любого натурального <tex>n</tex> найдётся такое слово <tex>\omega</tex> из данного языка, что его длина будет не меньше <tex> n</tex> и при любом разбиении на три слова <tex>x,y,z</tex> такие, что <tex> : y</tex> не пустое слово, длина <tex>xy</tex> не больше <tex>n</tex>, есть <tex>k</tex> такое, что <tex>xy^kz \overline\in L</tex>, то язык <tex>L</tex> - не регулярный. |
Версия 03:52, 8 октября 2010
Лемма (О разрастании): |
Пусть - регулярный язык над алфавитом , тогда существует , такой что для любого слова , длины не меньше найдутся слова , для которых верно и для всех . |
Доказательство: |
Пусть "Картинка" - регулярный язык над алфавитом , тогда найдётся автомат , допускающий язык . Обозначим размер автомата , как . В языке найдётся слово длины не меньше . Рассмотрим переходы в автомате . Так как не меньше количества состояний в автомате , то в переходах будет совпадение. Пусть и - первое совпадение. Тогда в нашем слове можно размножить кусок, который отвечает за переход, от состояния к состоянию . То есть если верно , то тогда верно . Тогда автомат допускает слово , следовательно принадлежит регулярному языку . |
Доказательство нерегулярности языка
Чаще используется отрицание леммы для доказательства нерегулярности языка. Пусть
- язык над алфавитом . Если для любого натурального найдётся такое слово из данного языка, что его длина будет не меньше и при любом разбиении на три слова такие, что не пустое слово, длина не больше , есть такое, что , то язык - не регулярный.
Пример 1 Язык правильных скобочных последовательностей не регулярен.
Пусть дан какой-то
для него предъявляем слово . После этого наше слово как-то разбили на . Так как , то из-за выбранного слова , где больше нуля. Для любого такого разбиения берём и получаем , что не является правильной скобочной последовательностью. Значит язык правильных скобочных последовательностей не регулярный язык.Пример 2 Язык
Для мы берём . Так как , то . Берём и получаем , что не является элементом нашего языка, значит наш язык не регулярен.
Интерпретация булевых формул с кванторами как игр для двух игроков
Рассмотрим формулу
, где - квантор зависящий от чётности . Теперь возьмём двух игроков и первый будет ставить с нечётными номерами, а второй с чётными. Если в итоге получается истина, то побеждает первый игрок, если получается ложь, то выигрывает второй. Если истинна, то побеждает второй игрок, в противном случае побеждает первый (при правильных ходах). Пусть истинно, тогда отделим первый квантор. , тогда по предположению есть такой , что будет истинно. Верно и для любого с предположением для лжи. В итоге получаем, верное утверждение.