Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Uchebnoe_posobie.docx
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
2.47 Mб
Скачать

4.5. Интуитивное понятие алгоритма

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

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

В результате появились несколько вариантов определения алгорит­ма, которые трактуются как самостоятельные математические понятия. Каждое из них имеет свое название: «Теория рекурсивных функций», « Нормальные алгоритмы Маркова», «Машины Тьюринга».

4.6.Теория рекурсивных функций. Простейшие функции

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

(a) нуль — функция 0 (0(х) = 0 для всех х);

(b) функция следования , которая означает переход к следу­ющему элементу заданного множества;

(c) функция тождества, или функция выделения аргумента: для каждых функция определяемая посредством

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

4.7. Операторы

а) Оператор суперпозиции (подстановки). В основе этого оператора лежит способ вычисления, который состоит в том, что если мы умеем вычислять функции f и g, то мы сумеем вычислить функцию h = f(g).

Пусть f — m-местная функция, — n-местные частичные функции на множестве N. Оператор S, ставящий в соответствие функци­ям f и — n-местную функцию h, которая удовлетворяет тожде­ству

называется оператором суперпозиции (подстановки). При этом опреде­ленная всюду функция h = S(f, g1,...) является суперпозицией функций f и .

б) Оператор примитивной рекурсии. В основе этого оператора лежит широко распространенный способ вычисления функции натурального ар­гумента, состоящий в том, что задается f(0) и так называемая рекуррент­ная формула f(n + 1) = h(f(n)), позволяющая вычислить f(n + 1), если известно f(n). С помощью этой формулы последовательно вычисляются f(1), f(2) и т.д. Такой процесс последовательного вычисления значений функции называется рекурсией.

Пусть заданы какие-либо числовые частичные функции: n-местная g и (п + 2)-местная h. (п + 1)-местная частичная функция f возникает из функций g и h с помощью оператора примитивной рекурсии, если она может быть задана схемой примитивной рекурсии:

Совокупность этих равенств для любых функций g и h однозначно опре­деляет значения функции f. Таким образом, для каждых двух частичных числовых функций g от п переменных и h от (п + 2) переменных суще­ствует одна и только одна функция f от (п + 1) переменной, возникающая в результате примитивной рекурсии. Оператор примитивной рекурсии будем обозначать через f = R(g, h).

Итак, схема примитивной рекурсии образует некоторый, индуктив­ный процесс построения функции h, при котором на нулевом шаге исполь­зуется функция g, а на каждом последующем шаге — значение функции f от аргументов , номер у предыдущего шага и значение функ­ции h, вычисленного на предыдущем шаге. Заметим, что оператор при­митивной рекурсии можно применять по любым переменным, входящим в функции f, g и h, но всегда нужно указывать, по каким переменным этот оператор проводится.

в) Оператор минимизации. Существует третья важная операция, по­рождающая новые вычислимые функции, а именно неограниченная ми­нимизация, или просто минимизация.

Пусть f(x,y) — функция, и мы хотим определить функцию g(x), по­ложив g(x) = наименьшее у такое, что f(x, у) = 0. При этом из вычисли­мости / должна следовать вычислимость g. Для этого введем следующее определение оператора минимизации μ, который дает вычислимые функ­ции из вычислимых функций.

Для каждой функции f(x, у)

μу(...) читается как «наименьший у, такой, что...».

Этот оператор называют иногда μ-оператором.

Сформулируем следующую теорему: Пусть f(x, у) вычислима; тогда вычислима и функция g(x) = μy (f(x, у) = 0).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]