Этот язык регулярный? {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 - Можем ли мы найти строку насоса для этого?) Таким образом, у нас есть особый случай языка, который не является регулярным, поэтому язык, как правило, не является регулярным. (хотя это, конечно, содержит особые случаи, которые являются регулярными, но это не оспаривается)

Другие вопросы по тегам