натуральные числа и разница между узнаваемыми и разрешимыми?

Я нашел следующее объяснение от Math exchange

Язык является распознаваемым тогда и только тогда, когда существует машина Тьюринга, которая остановится и примет только строки на этом языке, а для строк не на этом языке ТМ либо отклонит, либо не остановится вообще. Примечание: нет требования, чтобы машина Тьюринга останавливалась для строк не на языке.

Язык разрешим, если существует машина Тьюринга, которая будет принимать строки на языке и отклонять строки не на языке.

Я действительно не вижу разницы между двумя. в чем разница между машиной Тьюринга, которая принимает строки ТОЛЬКО на языках, и машиной Тьюринга, которая принимает строки на языке? значит ли это, что любая машина Тьюринга может принять что угодно?


person user3277633    schedule 09.02.2014    source источник
comment
Ваш вопрос о натуральных числах не был связан с остальной частью этого вопроса. И не по теме. Я удалил это.   -  person Stephen C    schedule 09.02.2014


Ответы (2)


Я действительно не вижу разницы между двумя.

Разница в том, что для разрешимого языка вы можете создать компилятор, который всегда может различать допустимые и недопустимые «высказывания». Напротив, если язык только Распознаваемый, то существуют недопустимые "высказывания", которые заставят компилятор войти в бесконечный цикл.

Обратите внимание, что, выражая это в терминах машин Тьюринга, они говорят о том, что теоретически возможно; т. е. любой теоретически возможный компилятор для языка, а не какой-то конкретный.

И формулировка «если и только если существует Машина Тьюринга...» означает, что такую ​​Токарную Машину можно сформулировать. Речь идет не обо всех всех машинах Тьюринга. Машина Тьюринга, разработанная, чтобы (скажем) сказать вам, что число нечетное, очевидно, не будет действовать как распознаватель языка.

(Если вы не понимаете, почему это так, вам нужно прочитать дополнительную информацию по этому вопросу. Я предлагаю вам начать с Википедия.)

person Stephen C    schedule 09.02.2014

Разница в том, что Решающий (ТМ, который принимает решение) ВСЕГДА останавливается на любом вводе (независимо от того, принимает он или отклоняет), в то время как Распознаватель может вечно зацикливаться, кроме остановки. Когда он зацикливается навсегда, распознаватель может принять решение только после некоторого «вечного» времени. Вот почему мы называем его распознавателем, а не решающим, поскольку иногда он просто не может принять решение.

person padi    schedule 26.03.2015