Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции / Лекция 3.docx
Скачиваний:
34
Добавлен:
02.10.2020
Размер:
71.11 Кб
Скачать

Примитивно - рекурсивные функции

Большинство вычислимых функций относится к классу примитивно-рекурсивных функций.

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

Простейшие (базисные) функции:

  • функции следования

  • нулевая функция

  • функция тождества (проекции, проектирования выбора аргументов) U;

Операторы для операций над функциями:

        • суперпозиции (подстановки) S

        • примитивной рекурсии R

Эти три функции и две операции образуют, базис Клини.

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

Для доказательства, что функция является примитивно-рекурсивной необходимо показать, что заданная функция:

  • либо является простейшей

  • либо построена с помощью оператора суперпозиции;

  • либо построена с помощью оператора примитивной рекурсии.

Простейшие исходные (базисные) вычислимые функции

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

Простейшие функции, вычислимость которых очевидна:

Функция следования

Функция s(x), заданная правилом

s(x)=x+1

для всех целых неотрицательных значений своего аргумента x

- это функция одного переменного, сопоставляющая любому натуральному числу непосредственно следующее за ним натуральное число X+1

Нулевая функция (нуль-функция) - n - арная функция, заданная правилом:

Оn(x1,x2,...,xn) = 0

- функция, без аргументов, всегда возвращающая 0.

для всех натуральных чисел x1,x2,...,xn.

Нулевая функция, как и функция следования вычислима.

При n = 1 обозначаем через О(x) ( не О1(x1) )

O(x)=0, для всех неотрицательных значений аргумента x.

При n=0 обозначаем через О(0) и отождествляется с числом 0.

Функция выбора (тождества)

Inm (x1,x2,...,xn)=xm

повторяющая значения своих аргументов. - эта функция упорядоченному набору аргументов (x1,x2,...,xn) сопоставляет компоненту xm с номером m из этого набора где 0<m<=n.

Вычислимость функции тождества обеспечивается нашей способностью найти в строке (x1,x2,...,xn) место с номером m и указать число на этом месте.

Три правила:

1) Простейшие функции

s(x) = x+1 - следования,

Оn(x1,x2,...,xn)=0 нуль-функция,

In nm(x1,x2,...,xn) = xm - выбора

примитивно рекурсивны.

2) Если функция f получена из примитивно рекурсивных функций с помощью операторов суперпозиции или примитивной рекурсии, то функция f примитивно рекурсивна.

3) То, что функция f примитивно рекурсивна, устанавливается несколькими применениями правил 1 и 2.

Примеры примитивно - рекурсивных функций

f(x) = x;

g(x) = x+2;

f(x) = a - постоянная унарная функция

f(x,y) = x+y функция сложения

f(x,y) = xy функция умножения

Частично-рекурсивные функции

А. Чёрч, К. Гёдель и С. Клини выделили широкий класс функций, названных частично рекурсивными.

Примитивно-рекурсивные функции не охватывают все вычислимые функции, которые могут быть определены.

При построении частично рекурсивных функций используют оператор минимизации.

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

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

Соседние файлы в папке Лекции