Введение

Понятие в теории вычислимости

В теории вычислимости оператор μ, оператор минимизации или оператор неограниченного поиска находит наименьшее натуральное число, обладающее заданным свойством. Добавление оператора μ к примитивным рекурсивным функциям позволяет определить все вычислимые функции.

Демонстрация общей функции

Если функция должна быть тотальной, необходимо продемонстрировать каким-либо другим методом (например, индукцией), что для каждой комбинации значений ее параметров xi найдется некоторое натуральное число y, удовлетворяющее оператору μ, чтобы алгоритм, представляющий вычисление, мог завершиться: "мы всегда должны проявлять осторожность, предполагая, что система уравнений действительно определяет тотальную (т.е. общую) рекурсивную функцию. Обычно для этого требуются дополнительные доказательства, например, индуктивное доказательство того, что для каждого значения аргумента вычисление завершается единственным значением" (Minsky (1967) с.186). "Иными словами, мы не должны утверждать, что функция эффективно вычислима только на том основании, что она показана как тотальная рекурсивная, если демонстрация ее тотальности не является эффективной" (Kleene (1952) с.319).

В качестве примера того, что это означает на практике, обратитесь к примерам, касающимся μ-рекурсивных функций – даже самый простой усеченный алгоритм вычитания "x – y = d" может, для неопределенных случаев, когда x < y, выдавать (1) отсутствие завершения, (2) отсутствие чисел (т.е. ошибка в формате, из-за которой результат не считается натуральным числом) или (3) обман: неверные числа в правильном формате. "Правильный" алгоритм вычитания требует внимательного рассмотрения всех "случаев": (x, y) = {(0, 0), (a, 0), (0, b), (a≥b, b), (a=b, b), (a<b, b)}. Но даже если алгоритм показал ожидаемый результат для случаев {(0, 0), (1, 0), (0, 1), (2, 1), (1, 1), (1, 2)}, у нас остается ощущение неуверенности, пока мы не сможем разработать "убедительное доказательство" того, что случаи (x, y) = (n, m) также дают ожидаемые результаты. По мнению Клини: достаточно ли наша "демонстрация" (т.е. алгоритм, который служит нашей демонстрацией) убедительна, чтобы считаться эффективной?