Пусть множество задано, как непустое множество результатов работы алгоритма . Всегда заканчивающий работу алгоритм, имеющий то же множество результатов, делает следующее. Если исходное данное является кодом пары натуральное число , двоичная цепочка он дает возможность алгоритму сделать шагов в применении к ; если получился результат, то наш алгоритм выдает его, как результат своей работы; если ничего не получилось, то наш алгоритм выдает выделенную цепочку.
Пусть множество задано, как область определения функции, вычисляемой алгоритмом . Тогда наш алгоритм, получив в качестве исходного данного цепочку , применяет к ней , если закончить работу, то наш алгоритм выдает в качестве результата; если не закончит работу, то и наш не закончит.
Пусть множество задано, как множество значений алгоритма . Алгоритм, для которого окажется областью определения, имея исходное данное , пытается получить его, как результат работы на всех цепочках, которые ему последовательно предлагает счислительный алгоритм. Если получится, то наш алгоритм останавливается, если нет — то нет.