- •1.Понятие множества. Конечные и бесконечные множества. Операции над
- •Основная теорема:
- •4. Обобщённое равенство. Абстракция. Примеры.
- •6. Отношение порядка. Частичный порядок. Линейный порядок.
- •Оператор суперпозиции
- •9.Оператор примитивной рекурсии, алгоритм его вычисления
- •10. Определение класса примитивно-рекурсивных функций. Примитивная рекурсивность функций сложения и умножения
- •11.. Доказательство существования вычислимых не примитивно
- •12.. Оператор минимизации, алгоритм его вычисления. Определение
- •13.. Представление и реализация алгоритма. Непроцедурность
- •Стратегии:
- •21.. Понятие протокола. Поведение процесса. Примеры.
- •25.. Определение np-полной задачи. Теорема Кука.
- •Теорема Кука:
12.. Оператор минимизации, алгоритм его вычисления. Определение
класса частично-рекурсивных функций. Понятие алгоритма.
Пусть f- некоторая n-местная вычислимая функция, n ≥ 1, алгоритм вычисления f известен. Вычисление значения функции f для некоторого значения аргумента невозможно лишь тогда, когда алгоритм не может завершиться.
Зафиксируем некоторые значения первых n - 1 переменных х1, х2, ..., хn-1. Рассмотрим уравнение:
f(х1, х2,..., хn-1,y)=xn (3)
Для его решения начнем вычислять последовательно значения функции f(х1, х2,..., хn-1,y) для y=0,1,2,... . Наименьшее число k такое, что f(х1, х2,..., хn-1,k)=xn есть решение этого уравнения. Это решение обозначается μy(f(х1, х2,..., хn-1,y)=xn). Решения может и не оказаться, например, если:
значения f(х1, х2,..., хn-1,k), k = 0, 1, 2, ... определены и отличны от xn, а значение f(х1, х2,..., хn-1,k+1) не определено,
значения f(х1, х2,..., хn-1,k), k = 0, 1, 2, ... все определены и отличны от xn.
В таких случаях значение μy(f(х1, х2,..., хn-1,y) = хn) считается неопределенным. Величина μy(f(х1, х2,..., хn-1,y) = хn) зависит от значений переменных х1, х2,..., хn-1, хn и потому она может рассматриваться как значение функции от аргументов х1, х2,..., хn-1, хn. Эта функция обозначается Mf, M называется оператором минимизации. Если f - одноместная функция, то очевидно, что f1(х) = μy(f(y)=x).
Оператор минимизации очевидно вычислим, а значит, и функция Mf частично вычислима.
Функция f называется частично рекурсивной относительно простейших функций, если она строится конечным числом применений операторов суперпозиции, примитивной рекурсии и минимизации.
Перефразируя, можно сказать, что функция называется частично рекурсивной, если она представляется конечным операторным термом. В соответствии с тезисом Черча класс частично рекурсивных функций совпадает с классом всех вычислимых функций.
Как и для оператора примитивной рекурсии, для оператора минимизации можно построить представление в виде счетного множества функциональных термов. Введем предикат P(yi):f(х1, х2,..., хn-1, yi) = хn.
Т огда оператор минимизации представляется счетным множеством функциональных термов (рис. 2.4). Предикат Р(уi) выделяет функциональный терм, который вырабатывает значение функции μy(f(х1, х2,..., хn-1,y) = хn).
Рис. 2.4
Из всех этих термов лишь один может выработать значение функции Mf, а именно тот, который выработает значение zk = хn для минимального k. Таким образом, и здесь, как и в случае оператора примитивной рекурсии, операторный терм Mf представляется счетным множеством функциональных термов. Одно из существенных отличий состоит в том, что конечное множество функциональных термов, представляющих оператор примитивной рекурсии, фиксируется для конкретных значений до начала вычислений. В случае оператора минимизации терм, вычисляющий значение функции, определяется динамически в ходе вычисления. Алгоритм – функциональный терм