Примеры

  1. Доказать, что .

  2. Доказать, что .

  3. Доказать, что простейшие функции - мажорируемы.

  4. Доказать, что функция, полученная с помощью суперпозиции из - мажорируемых функций,- мажорируемы.

  5. Доказать, что функция, полученная из - мажорируемых функций с помощью примитивной рекурсии,- мажорируема.

  6. Рассмотрим следующие функции Аккермана:

;

;

;

.

Назовем всюду определенную функцию - мажорируемой, если существует натуральное числотакое, что.

Доказать, что

  1. и - общерекурсивны;

  2. ;

  3. Функция не является примитивно рекурсивной;

  4. ;

  5. ;

  6. Простейшие функции - мажорируемы;

  7. Функция, полученная с помощью суперпозиции из - мажорируемых функций,- мажорируема;

  8. Функция, полученная из - мажорируемых функций с помощью примитивной рекурсии,- мажорируема.

    1. Общерекурсивные и частично рекурсивные функции

Функция Аккермана является примером вычислимой, но не примитивно рекурсивной функции. Этот пример говорит о том, что средства построения вычислимых функций нуждаются в расширении. Операторы кратной рекурсии (то есть по нескольким переменным одновременно) не дают желаемого замыкания класса вычислимых функций: было показано, что для любогонайдется функция, определимая с помощью- кратной рекурсии (- рекурсивная), но не () - рекурсивная.

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

насуществует следующая простая процедура: вычисляемна наборах

до тех пор, пока не получим значение ноль. Однако в отличии от рассмотренных ранее процедур, она может не привести к результату: это произойдет в случае, когда на данном набореуравнениене имеет решения. В таком случае функциясчитается неопределенной. Например, обратная кфункцияне определена при.

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

В случае, когда функция , к которой применяется- оператор, сама является частичной, функциявычисляется с учетом следующего условия: если для, ане определена, то ине определена.

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

Если такие функции оказываются к тому же всюду определенными, то они называются общерекурсивными функциями.

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

Частично рекурсивные функции представляют собой наиболее общий класс конструктивно определяемых арифметических функций.

Понятие частично рекурсивной функции - одно из главных понятий теории алгоритмов. Значение его состоит в следующем.

  1. Каждая стандартно заданная частично рекурсивная функция вычислима путем определенной процедуры механического характера.

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

класс алгоритмических (или машинно) вычислимых числовых функций совпадает с классом всех частично рекурсивных функций.

Этот тезис дает алгоритмическое толкование частично рекурсивных функций.

Практически понятием частично рекурсивных функций пользуются для доказательства алгоритмической разрешимости или неразрешимости проблем. Использование же частично рекурсивных функций для представления того или иного конкретного алгоритма практически нецелесообразно ввиду сложности такого процесса алгоритмизации.