Скачиваний:
248
Добавлен:
23.01.2015
Размер:
2.42 Mб
Скачать

32. Операторы суперпозиции и примитивной рекурсии. Примитивно рекурсивные функции.

33. Оператор минимизации. Рекурсивные функции.

34. Разрешимые и перечислимые множества. Характеризация перечислимых множеств.

35. Универсальные вычислимые функции.

36. Существование перечислимого неразрешимого множества.

37. Алгоритмически неразрешимые задачи. Неразрешимость проблемы остановки машины Тьюринга.

38. Сложность алгоритмов. Гипотеза

СТАРЫЕ ОТВЕТЫ

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

Напомним, что в этой главе множество N натуральных чисел содержит 0, т.е. Будем рассматривать функции (возможно, частичные)Таким образом, еслито либолибоне определено. Введём в рассмотрениепростейшие функции о s I

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

Оператор суперпозиции. Пусть даны функция отпеременных ифункцийотпеременных.. Суперпозицией функцийназывается функция

Мы говорим, что функция получается применением оператора суперпозициик функциями пишем

Например, (s,o) – это функция s(o т.е. функция, тождественно равная 1, а (s,s) – это функция

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

Эти равенства определяют функцию однозначно. Функцияназывается функцией, полученной с помощью операторапримитивной рекурсии. Используется запись

Индуктивное определение функции (продемонстрированное в операторе примитивной рекурсии) в математике не редкость. Например, индуктивно определяются степень с натуральным показателем: факториал:и т.д.

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

Оператор минимизации. Пусть дана функция Зафиксируем какие-либо значенияпервыхпеременных и будем вычислятьи т.д. Еслинаименьшее натуральное число, для которого(т.е. значениявсе существуют и не равныто полагаемТаким образом,

Если такого нет, то считаем, чтоне определено. Итак, возможны три случая:

  1. существуют и не равны а

  2. существуют и не равны ане существует;

  3. существуют при всех и отличны от

Если имеет место 1-й случай, то а если 2-й или 3-й, тоне определено. Про функциюполученную таким образом, говорят, что она получена изприменением оператора минимизацииМы пишем

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

33. Разрешимые множества и их свойства.

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

Понятно, что если множества иразрешимы, то множестватакже разрешимы. Любое конечное множество является разрешимым. Неразрешимые множества также существуют, так как разрешимые подмножества образуют счётное множество, а все подмножества множества натуральных чисел образуют множество мощности континуума.

Теорема 3. Всякое разрешимое множество натуральных чисел перечислимо. Если множество и его дополнениеN\A перечислимы, то разрешимо.

Доказательство. Пусть – разрешимое множество натуральных чисел. Тогда существует машина Тьюрингакоторая, имея на входе числовыдаёт на выходе 1 прии 0 приДобавим к программе машиныкоманды так, чтобы после перехода машиныв финальное состояние продолжение работы было следующим: 1) если на выходе 1, машина заменяет её на 0 и завершает работу, 2) если на выходе уже был 0, то машина далее работает безостановочно (например, движется направо и печатает на ленте 1). Очевидно, построенная нами машина вычисляет функциюЗначит, множествоперечислимо.

Пусть иN\A перечислимы, а и– машины Тьюринга, вычисляющие соответственно функциииПостроим новую машину ТьюрингаОна, имея на входе числоделает вначале один шаг работы машинызатем один шаг работызатем два шага(начиная с первого), затем два шагаи т.д. По завершению работы одной из машиндальнейшие действия таковы: еслизавершила работу раньше, то заменяем выходное значение 0 на 1 и производим остановку машины, а если ранее завершится программато производится просто остановка машины. Легко видеть, что на выходе будет 1 прии 0 при Остановка произойдёт обязательно, так как по условию обе функции ивычислимы.