Доказательство нерегулярности языков: лемма о разрастании
Версия от 03:52, 8 октября 2010; Zarubkin (обсуждение | вклад)
Лемма (О разрастании): |
Пусть - регулярный язык над алфавитом , тогда существует , такой что для любого слова , длины не меньше найдутся слова , для которых верно и для всех . |
Доказательство: |
Пусть "Картинка" - регулярный язык над алфавитом , тогда найдётся автомат , допускающий язык . Обозначим размер автомата , как . В языке найдётся слово длины не меньше . Рассмотрим переходы в автомате . Так как не меньше количества состояний в автомате , то в переходах будет совпадение. Пусть и - первое совпадение. Тогда в нашем слове можно размножить кусок, который отвечает за переход, от состояния к состоянию . То есть если верно , то тогда верно . Тогда автомат допускает слово , следовательно принадлежит регулярному языку . |
Доказательство нерегулярности языка
Чаще используется отрицание леммы для доказательства нерегулярности языка. Пусть
- язык над алфавитом . Если для любого натурального найдётся такое слово из данного языка, что его длина будет не меньше и при любом разбиении на три слова такие, что не пустое слово, длина не больше , есть такое, что , то язык - не регулярный.
Пример 1 Язык правильных скобочных последовательностей не регулярен.
Пусть дан какой-то
для него предъявляем слово . После этого наше слово как-то разбили на . Так как , то из-за выбранного слова , где больше нуля. Для любого такого разбиения берём и получаем , что не является правильной скобочной последовательностью. Значит язык правильных скобочных последовательностей не регулярный язык.Пример 2 Язык
Для мы берём . Так как , то . Берём и получаем , что не является элементом нашего языка, значит наш язык не регулярен.
Интерпретация булевых формул с кванторами как игр для двух игроков
Рассмотрим формулу
, где - квантор зависящий от чётности . Теперь возьмём двух игроков и первый будет ставить с нечётными номерами, а второй с чётными. Если в итоге получается истина, то побеждает первый игрок, если получается ложь, то выигрывает второй. Если истинна, то побеждает второй игрок, в противном случае побеждает первый (при правильных ходах). Пусть истинно, тогда отделим первый квантор. , тогда по предположению есть такой , что будет истинно. Верно и для любого с предположением для лжи. В итоге получаем, верное утверждение.