Делаете так. Последовательно перечисляете все тройки натуральных чисел
. Для каждой такой тройке берёте программу с кодом
, подаёте ей на вход
и производите
шагов вычисления. Если за
шагов вычисления завершаются, то перечисляете пару
в специальный список, который вы называете "списком проблемы остановки". Изложенная процедура есть ни что иное, как алгоритм перечисления всех пар, попадающих в множество проблемы остановки. Таким образом, множество проблемы остановки вычислимо перечислимо.
Так устроит?
Да, примерно такого рода рассуждения мне и хотелось услышать, спасибо.
Правильно я понимаю, что подобные рассуждения можно распространить на счетчиковые машины, с количеством счетчиков больше 1, таким образом?
Возьмем
-счетчиковую машину. Вход на ней будет кодироваться уже не одним натуральным числом, а
-кой чисел. Тогда мы получаем, что имеется
нат. чисел
. Ну и алгоритм перечисления всех
-ок будет аналогичным.
Интереснее дело обстоит с проблемой тотальности. То есть, будет ли некоторая счетчиковая машина останавливаться при любом входе.
Или, придерживаясь все той же терминологии, закончит ли работу программа с гёделевым номером
при любом входе
.
То есть, вообще говоря, получаем такую вещь - машина тотальна <=> для любого входа
, существует момент времени
, что
вычислится в этот момент.
А это похоже на множество
. Подскажите, пожалуйста, куда имеет смысл копать, чтобы показать, каким является множество проблемы тотальности?
Возможно, имеет смысл почитать какую-то литературу (занимаюсь этим сравнительно недавно, что стоит читать, помимо Роджерса - толком не знаю, но разобраться интересно), можно англоязычную.
Буду благодарна за советы.