В общем, я понял. НМТ
допускает/принимает/распознаёт слово
, если существует конечное допускающее вычисление машины
над входом
(НМТ
допускает язык
, если она допускает каждое слово
). Теперь рассмотрим язык "множество номеров всех машин Тьюринга, останавливающихся на пустом слове
". Что в точности значит утверждение "Машина Тьюринга
останавливается на пустом слове
", если машина
-- недетерминированная? Два варианта: а) НМТ
останавливается на
, если существует конечное вычисление над
(не обязательно допускающее!) б) НМТ
останавливается на
, если все её вычисления над этим входом конечны. Теперь рассмотрим вопрос, может ли детерминированная МТ
допускать этот язык. Предположим, что ей попался номер НМТ
, останавливающейся на пустом слове. Если принять определение а), то эта НМТ
может иметь бесконечные вычисления. В этом случае наша моделирующая ДМТ
может пойти по бесконечной ветви в дереве вычислений
и никогда не завершить работу (хотя я в точности не помню алгоритм поиска в ширину в дереве, который и должна выполнять ДМТ, моделирующая НМТ). Пусть теперь
недетерминированная. Тогда, поскольку
останавливается на пустом слове, она имеет вычисления конечной длины над ним (не обязательно допускающие). Когда
дойдёт до допускающей или отклоняющей конфигурации
, она прекратит работу и примет вход, т.е. в отличие от детерминированной МТ она всегда будет останавливаться, и поэтому действительно будет принимать этот язык. Если принять определение б), то обе машины (детерминированная и недетерминированная) смогут распознать этот язык. Но при этом мы видим, что недетерминированные машины в самом деле могут распознавать языки, которые не могут распознавать детерминированные, а равенство классов распознаваемых языков выполняется только в случае, если НМТ не имеет бесконечных вычислений (видимо, это и есть то ограничение, о котором говорил
mihaild), т.е. именно как
модель алгоритма (всегда останавливающаяся) ДМТ столь же мощна, как и НМТ, но не каждая МТ является алгоритмом (тезис Чёрча-Тьюринга).