Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МАТЕМАТИЧЕСКАЯ ЛОГИКА И ТЕОРИЯ АЛГОРИТМОВ.doc
Скачиваний:
138
Добавлен:
20.05.2014
Размер:
1.13 Mб
Скачать

Оператор минимизации (- орератор).

Def. Оператором минимизации (наименьшего числа оператора) называется преобразование (n+1)-местной функции (в общем случае частичной)  в n-местнуб f, такую, что для любых х1, х2, …хn, у равенство f(х1, х2, …хn)=у имеет место лишь в том случае, если определены и не равны нулю значения ( х1, …, хn, 0), …, ( х1, …, хn, у-1) и при этом ( х1, х2, …хn, у)=0. Применение оператора минимизации обозначают [, (y)], где у - исчезающий аргумент.

Говорят, что n-местная арифметическая функция f: NnN получается из функции : Nn+1N с помощью -оператора, если выполнено условие: для любых k1, k2,…, kn, kN.

f(k1, k2,…, kn)=k,

тогда и только тогда, когда для всех l<k значения ( k1, k2,…, kn, l) определены и отличны от нуля, а значение ( k1, k2,…, kn, k) определено и равно нулю.

Если f получается из функции  с помощью оператора наименьшего числа , то пишут:

f(x1, x2,…, xn)=y[(x1,…, xn, y)=0].

Важным свойством -оператора является то, что с его помощью из вычислимой функции всегда получается частичная вычислимая функция f. Именно, если имеется алгоритм для вычисления , то значение f(x1, x2,…, xn) может вычисляться следующим образом:

  • вычисляется (x1, x2,…, xn, 0);

  • если процесс вычисления закончился, то есть значение (x1, x2,…, xn, 0) определено, и (x1, x2,…, xn, 0)=0, то полагаем f(x1, x2,…, xn)=0, а если (x1, x2,…, xn, 0)0, то начинают вычислять (x1, x2,…, xn, 1). Если процесс вычисления закончился и (x1, x2,…, xn, 1)=0, то полагают f(x1, x2,…, xn)=1, а если (x1, x2,…, xn, 1)0, то переходят к вычислению (x1, x2,…, xn, 2) и так далее.

  • Процесс вычисления закончится, если найдется такое у, что для всех z<y значение (x1, x2,…, xn, z) определено и отлично от нуля, а (x1, x2,…, xn, у) определено и равно нулю. Тогда f(x1, x2,…, xn)=у.

Пример:

f(x)=y[12*y-x=0]. Тогда f(x)=x/2 при всех четных значениях хN.

Замечание:

Примитивно-рекурсивные функции всегда определены (имеют значения) для любых значений аргументов. Иначе обстоит дело с функциями, полученными при помощи -оператора. Для некоторых комбинаций значений аргументов они могут быть не определены, потому что исходная функция не принимает нулевых значений.

Пример:

det f(x)=[J21(x, y), (y)].

Полученная функция f(х) обладает следующими свойствами:

f(0)=0, f(k) не существует при k0. Последнее означает, что для заданной функции J21(x, y) -оператор не может построить f(k) kN, так как при x=k функция (x, y)= J21(x, y) ни для какого значения у не будет равной нулю.

Основной тезис Черча.

Утверждение:

«Какова бы ни была вычислимая неотрицательная функция от неотрицательных целочисленных аргументов, существует тождественно равная ей рекурсивная функция» - основной тезис Черча.

Перенеся тезис Черча на алгоритмы, сопутствующие рекурсивным функциям, можно высказать и следующую гипотезу: «Каков бы ни был алгоритм, перерабатывающий наборы целых неотрицательных чисел в целые неотрицательные числа, существует алгоритм, сопутствующий рекурсивной функции, который ему эквивалентен».

Приведенные гипотезы означают, что выполнение алгоритма в определенном смысле эквивалентно вычислению значений рекурсивной функции, а невозможность рекурсивной функции означает и невозможность алгоритма (так как для каждого алгоритма должна быть рекурсивная функция, а ее-то в данном случае и нет).

Напомним, что тезис Черча и следующие из него другие гипотезы не имеют доказательства и принципиально не могут быть доказаны, так как в них речь идет об алгоритмах в интуитивном смысле, не являющихся математическими объектами.