Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по дискретной математике1.doc
Скачиваний:
422
Добавлен:
02.05.2014
Размер:
2.61 Mб
Скачать

Рекурсивная функция

Основные понятия: элементарные функции, правила образования новых функций.

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

  1. Функция сохранения нуля (нуль-функция)

(4.1)

  1. Функция сдвига

(4.2)

  1. Функция-проекция

(4.3)

Правила преобразования функций

  1. Правило подстановки (суперпозиции)

Пусть даны функции:

Тогда

(4.4)

где g и h являются или простейшими, или выведенными из простейших.

Правило вывода (4.4) означает, что функция получена из функций правилом суперпозиции

ПРИМЕР

Функцияможет быть получена путем примененияраз правила суперпозиции на основе функций

, (4.5)

  1. Правило примитивной рекурсии

Основывается на простейших или выведенных из простейших функциях g и h:

Пусть

Тогда новая функция может быть выведена по правилу:

(4.6)

Следует отметить, что функция зависит отаргументов, функциязависит отаргументов, функциязависит отаргументов. Иначе говоря, правило примитивной рекурсии позволяет получитьn + 1-местную функцию из n-местной и n + 2 - местной функций.

ПРИМЕР

Пусть некоторая функция задана правилом рекурсии

Нетрудно заметить, что функция , функция

Вычислим значение функции при.

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

  1. - оператор (оператор нахождения наименьшего корня у)

Оператор определяет наименьшее значениеу, при котором при фиксированном значении. Принято обозначение

(4.7)

(Читается: «наименьшее такое, что»). Аналогично определяется функция многих переменных :

(4.8)

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

  1. Вычисляется . Если это значение функцииравно нулю, то. Если, то осуществляется переход к следующему шагу.

  2. Вычисляется . Если это значение функцииравно нулю, то. Если, то осуществляется переход к следующему шагу. И т. д.

Если окажется, что для всех функция, то функциясчитается неопределенной.

ПРИМЕР

Дана функция . Необходимо определитьпри

Таким образом,

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

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

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

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

Машина Тьюринга

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

Машина Тьюринга включает в себя:

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

  2. Внутренний алфавит - конечное множество символов . Для любой машины число состояний фиксировано. Два состояния имеют особое назначение- начальное состояние машины, - заключительное состояние (стоп-состояние).

  3. Операторы перемещения Т={Л, П, Н}. Л, П, Н – это символы сдвига «влево», «вправо» и «на месте».

  4. Бесконечная лента Бесконечная лента характеризует память машины. Она разбита на клеточки. В каждую клеточку может быть записан только один символ из внешнего алфавита.

  5. Управляющая головка. Управляющая головка (УГ) передвигается вдоль ленты и может останавливаться напротив какой-либо клетки, т. е. считывать символ

  6. Управляющая головка. Управляющая головка (УГ) передвигается вдоль ленты и может останавливаться напротив какой-либо клетки, т. е. считывать символ.

Рис. 4.1. Функциональная схема машины Тьюринга.

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

a0

a1

a2

q1

а0Пq1

a1Пq1

a2Лq2

q2

а1Пq2

a2Нq0

a0Нq0

Таким образом, машина Тьюринга может быть представлена в виде четверки:

(4.9)