АЛГОРИТМЫ И РЕКУРСИВНЫЕ ФУНКЦИИ

Каждый алгоритм имеет входные и выходные данные и состоит из конечного числа инструкций. Например, алгоритм Евклида имеет на входе два положительных числа a и b, на выходе – их наибольший общий делитель. В качестве инструкций можно рассмотреть следующие команды:

1) сравнить a и b;

2) если a равно b, то установить наибольший общий делитель, равным a, и закончить работу;

3) если a > b, то установить a = a – b и перейти к 1;

если b > a, то установить b = b – a и перейти к 1.

Развитие математики требовало уточнения понятия алгоритма в связи с вопросами алгоритмической разрешимости проблем. Следующие свойства алгоритма были признаны характеризующими его среди методов построения математических объектов:

а) алгоритм состоит из шагов, на каждом из которых формируется система объектов, построенных в предшествующие моменты (дискретность алгоритма);

б) эта система объектов однозначно определяется системой в предшествующие моменты (детерминированность);

в) закон получения последующей системы объектов из предшествующих должен быть простым (элементарность шагов);

г) способ получения объектов на каждом шаге должен давать результаты (направленность);

д) начальная система объектов может выбираться из бесконечного множества (массовость).

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

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

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

Под числовыми функциями мы понимаем функции f: Nn ® N, где N = w – множество всех натуральных чисел x ³ 0, Nn = {(x1,…,xn): x1ÎN,…,xnÎN} – его декартова степень. Эти функции называются n-местными. Функцией N0 ® N, зависящей от 0 переменных, называется произвольная константа cÎN. Частичной (числовой) n-местной функцией называется функция f: D ® N, определенная на некотором подмножестве D Í Nn декартовой степени. Обозначим D через Dom(f) и будем называть её областью определения частичной функции f. Для частичной n-местной функции f будем применять обозначения f: Nn ® N.

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

Функции s: N ® N, 0: N0 ® N и Inm: Nn ® N, принимающие значения s(x) = x + 1, константа 0 и Inm(x1,…,xn) = xm, для всех x, x1,…,xn Î N и n ³ m ³ 1, называются простейшими. Операции над функциями будут называться операторами.

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








Дата добавления: 2016-09-20; просмотров: 831;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.