Этот язык регулярный? {0^n 1^m | m!= n}, я не понимаю прямого доказательства по длине накачки
Есть прямой способ доказать это: если p
длина накачки, и мы берем строку s = 0p1p+p!
тогда неважно что такое разложение s = xyz
это строка xy1+p!/|y|z
будет равно 0p+p!1p+p!
чего нет в языке.
Я не понимаю значение y, данное здесь.
1 ответ
y
является некоторой подстрокой, которую можно "перекачивать" - повторять * раз - и при этом сохранять язык регулярным. По сути, мы должны найти где-то цикл, и этот цикл - то, что y
представляет собой.
В основном, если язык имеет вид 0m1m!
(m
нули с последующим m!
затем) там не может быть петли.
В этом случае, y
представляет "гипотетическую строку насоса для языка подмножества {0m1m!}
"- гипотетически, потому что он не может существовать! Ясно, что для этого меньшего языка прокачка невозможна, поскольку повторение немедленно выведет нас из языка. (рассмотрим пример 00111111
- Можем ли мы найти строку насоса для этого?) Таким образом, у нас есть особый случай языка, который не является регулярным, поэтому язык, как правило, не является регулярным. (хотя это, конечно, содержит особые случаи, которые являются регулярными, но это не оспаривается)