- •Теория алгоритмов. Общие положения.
- •Исходные понятия теории алгоритмов.
- •Свойства и параметры алгоритма:
- •Основная гипотеза теории алгоритмов.
- •Формальные модели, уточнение понятия алгоритм.
- •Блок-схемы детерминированных алгоритмов.
- •Алгоритмический язык
- •Алгоритмическая система а.Тьюринга.
- •Разрешимость и неразрешимость языков машиной Тьюринга
- •Проблема остановки машины Тьюринга
- •Алгоритмическая система а.Чёрча
- •Базисные функции
- •Операторы построения производных рекурсивных функций
- •Примитивно-рекурсивные функции.
- •Алгоритмическая система а.А.Маркова.
- •Ассоциативное исчисление
- •Алгоритмически неразрешимые проблемы.
- •Теоремы алгоритмически разрешимых и неразрешимых проблем. Теоремы Геделя.
- •Теорема о неполноте
- •Теорема о полноте
- •Словарь основных терминов.
- •Теорема о неполноте:
- •Теорема о полноте
Словарь основных терминов.
Теория алгоритмов - раздел математической логики, в котором изучаются теоретические возможности эффективных процедур вычисления (алгоритмов) и их приложения.
Массовая (алгоритмическая) проблема - проблема построения алгоритма, обладающего теми или иными свойствами.
Алгоритм (алгорифм) – точное предписание, которое задает вычислительный процесс (называемый в этом случае алгоритмическим), начинающийся с произвольного исходного данного(из некоторой совокупности возможных дл данного алгоритма исходных данных) и направленный на получение полностью определенного этим исходным данным результата.
Конструктивный объект – объект формальной системы F.S = <L, D> = <A, S, Ax, R>, где L – формальный язык, D – дедуктивные средства конструктивного процесса построения конструктивных объектов, Ax – аксиомы(исходные данные), Ax принадлежит L, R – отношения на множестве объектов(продукции, правила вывода, правила построения объектов) исходных объектов.
Формальный язык – конструктивный объект, лексемы которого строятся из букв заданного алфавита с привлечением заданной формальной грамматики.
Алгоритмический язык L = <A, S1, S2> предназначен для записи алгоритмов и при этом . Алгоритмический язык называется универсальным, если он содержит алгоритмически полный набор предписаний. Задание универсального алгоритмического языка равносильно заданию алгоритмической системы, т.е. общего способа записи алгоритма.
Алгоритмические процессы – процессы, которые могут имитироваться на подходяще построенной абстрактной машине, описываемой в точных математических терминах
Тезис Тьюринга: «Для всякого алгоритма Sf в каком-либо алфавите может быть построен тьюриноговский алгоритм, дающий при одинаковых исходных данных, те же самые результаты, что и алгоритм Sf».
Тезис Черча-Тьюринга: «Любая теоретически разрешимая вычислительная задача может быть решена при помощи машины Тьюринга».
Машина Тьюринга (МТ) – алгоритмически полная система побуквенной обработки словарной информации. Эта гипотетическая машина является формой существования и записи алгоритма.
Рекурсивное (разрешимым) множество - множество слов, для которого МТ однозначно решает задачу принадлежности или не принадлежности данного слова языку, т.е. машина либо переходит в состояние qz1, соответствующее заключению о принадлежности слова языку, либо в состояние qz2 – слово не принадлежит языку.
Рекурсивно-перечислимое (частично-разрешимое) множество – такое множество, если МТ останавливается в заключительном состоянии для лексем (слов заданного алфавита) и «зависает» (зацикливается) или останавливается в состоянии qi qz (безрезультатная остановка) для непринадлежащих языку слов.
Тезис Черча: “Всякая функция, значение которой может вычисляться эффективно, является частично-рекурсивной” (т.е. вычислимыми функциями являются частично-рекурсивные функции – функции, получаемые за конечное число шагов из простейших с помощью суперпозиции, примитивной рекурсии и μ-оператора).
Базисные (простейшие элементарные) функции – числовые вычислимые функции , сопутствующие алгоритмы которых – одношаговые (очевидно, что это всюду определенные рекурсивные функции)
Нуль-функция Z(x1, x2,…,xk)=0 – k-арная функция (оператор аннулирования Z), соответствующий алгоритм вычисления которой: “Любой совокупности значений аргументов xi функции Z ставится в соответствие ее значение 0”.
Функция тождества (x1, x2,…,xm,…,xn)= xm ( - оператор проектирования) – n-арная функция, алгоритм вычисления которой: “Значением функции принять значение m-го аргумента.” (m, n>0, mn).
Функция следования (λ – оператор сдвига) – унарная функция, для которой: “Значением принять натуральное число, следующее за числом, являющимся значением аргумента x”.
Оператором суперпозиции(подстановки) Snm называется операция подстановки в функцию от m переменных m функций от n переменных. , а сопутствующий алгоритм которого: «Значения m –арных функций принять за значения аргументов n–арной функции и вычислить её значение».
Оператором примитивной рекурсии Rn[f1n-1,f2n+1,x1(n)]=fmn называется процесс определения функции f (n+1) переменных через n-местную функцию g и (n+2)- местную функцию h в следующем виде:
f(x1, x2, …, xn, 0)= g(x1, x2,…, xn)
f(x1, x2, …, xn, y+1)=h(x1, x2,…, xn, y, f(x1, x2, …, xn, y)),
где g и h – две различные функции соответственно n и n+2 аргументов.
Эта пара равенств называется схемой примитивной рекурсии.
Оператором минимизации (наименьшего числа оператора) называется преобразование (n+1)-местной функции (в общем случае частичной) в n-местную f, такую, что для любых х1, х2, …хn, у равенство f(х1, х2, …хn)=у имеет место лишь в том случае, если определены и не равны нулю значения ( х1, …, хn, 0), …, ( х1, …, хn, у-1) и при этом ( х1, х2, …хn, у)=0
Базисные функции для всех натуральных n, m, где nm являются примитивно-рекурсивными;
-
если g1(x1,…, xn), …gm(x1,…, xn), h(x1,…, xm) - примитивно-рекурсивные функции, то Snm(h, g1,…, gm) - примитивно-рекурсивные функции для любых натуральных n, m;
-
если g(x1,…, xn) и h(x1,…, xm, у, z) - примитивно-рекурсивные функции, то Rn(g, h) – примитивно-рекурсивная функция;
-
других примитивно-рекурсивных функций нет.
Нормальные алгорифмы U=<A, > - класс словарных алгоритмов, то есть алгоритмов (применимых к словам некоторого алфавита А), элементарными действиями которых являются подстановки в слова (их кортеж есть схема ).
Ассоциативное исчисление (система Туэ) U – формальная система F.S., задающая конечно определенные ассоциативные системы (полугруппы) Ku.
Теорема (Маркова-Поста):
“Существует ассоциативное исчисление, в котором проблема распознавания эквивалентности слов алгоритмически неразрешима”
Алгоритмически неразрешимые проблемы - массовые проблемы, для которых не существует эффективных методов разрешения.
Теоремы Геделя: