Не существует эффективной процедуры, позволяющей решать, останавливается ли произвольная машина Тьюринга Т при произвольном входном значении nи по данной машине Тьюринга Т можно построить примитивно рекурсивную функцию g, обладающую следующим свойством: какое бы n мы не взяли, g(n, t) = 0 в точности тогда, когда t– номер шага, более позднего, чем тот, на котором машина T останавливается, если ее запустить при входном значении n. (по определению функции g, если шаг tне таков, то g(x, t) = <a, b, c> =
для некоторых a, b, c и потому g(x, t) > 0. Если же t – такой шаг, то g(x, t) = 0.Таким образом, если дана машина Т, то можно эффективно построить некоторую конечную последовательность q0, q1, …, qrпримитивно рекурсивных функций, удовлетворяющую двум условиям: 1) каждая функция gi либо является базисной функцией, либо получается из некоторых предыдущих функций с помощью композиции или примитивной рекурсии и 2) для всякого nмашина T, запущенная на входном значении n, в конце концов останавливается тогда и только тогда, когда gr(n, t) = 0 для некоторого t.
Построим теперь по данной T последовательность примитивно рекурсивных функций, удовлетворяющую условиям 1) и 2). Каждой функции gi поставим в соответствие свой функциональный символ gi с тем же числом аргументов, что иgi. Пусть g0 = '. Используя эти символы, выпишем для каждого giодну или две очевидные формулы, определяющие функцию gi Например,
если gi= z, то "xgi(x) = 0
еслиgi = s, то "xgi(x) = x'
если gi =
, то "x1 … "xm … "xngi(x1, …,xm, …,xn) = xmЕсли gi получается из предшествующих ей функций gjи gkc помощью примитивной рекурсии, то "xgi(x, 0) =gj(x) и "x"ygi(x, y') =gk(x, y, gi(x, y))
Если же giполучается из предшествующих ей функций gо и
путем композиции, то "xgi(x) =gj (для краткости заменили здесь x1, x2, …, xnна x, a"x1, "x2, …, "xnна "x)Запишем также формулы "xx' ≠ 0 и "x"y(x' = y' → x = y). Обозначим теперь через Г множество всех этих формул, а через I – формулу
.Утверждение. Машина T при входном значении
останавливается тогда и только тогда, когда Г ├ I.«Тогда». Пусть Г ├ I. Обозначим через
модель, областью которой служит множество натуральных чисел и которая интерпретирует символ 0 как 0, а функциональные символы gi – как . Все предложения из Г истинны в . Поскольку Г ├ I, предложение Iистинно также. Следовательно, для некоторого справедливо . Согласно 2), T останавливается на .«Только тогда». Предположим, что Т останавливается при входном значении
. Для доказательства соотношения Г ├ I предположим, что – произвольная модель, в которой все предложения из Г истинны, и покажем, что из этого предположения следует истинность в . Пусть теперь – интерпретация символа 0 в модели , a – при всяком – интерпретация в символа gi. Пусть, далее, (так что – интерпретация в символа ), и пусть . Так как формулы и истинны в , функция , для которой и , является изоморфизмом множества {0, 1, 2,…} натуральных чисел на множество N. Таким образом, можно считать, что N и является в действительности множеством натуральных чисел, , ограничение функции на множество N есть , а потому всякий нумерал е обозначает число в .Индукцией по
легко доказывается, что для всех р в N справедливо (а потому N). Рассмотрим в деталях наиболее трудный случай, когда функция получается примитивной рекурсией из функций и причем . Итак, пусть для всех из N выполняются равенства .Нам нужно доказать, что для всех и . Но так как формулы и содержатся в Г, справедливы равенства и . Но тогда и если , то, полагая , получим . Таким образом, индукцией по заключаем, что для всех и .Поскольку
при входном значении останавливается, можно утверждать, что для некоторого справедливо , откуда , а потому истинно в , а значит, и I = истинно в , и доказательство заканчивается.