Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ГОС информатика / ТЕОРИЯ наша!!! / теория алгоритмов!!!.doc
Скачиваний:
97
Добавлен:
18.03.2015
Размер:
168.96 Кб
Скачать

ТА.1.Формальная теория вычислимости.

1.1. Вычислимые функции, разрешимые и перечислимые множества.

Перечислимые множества.

Множество Х называется перечислимым, если оно перечисляется некоторым алгоритмом, т.е. если существует алгоритм, который печатает (в произвольном порядке и с произвольными промежутками времени) все элементы этого множества и только их.

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

Вычислимые функции.

Функция называется вычислимой, если существует алгоритм, её вычисляющий, т.е. та-кой алгоритм А, что если f(x) определено для некоторого , то алгоритм А останавливается на входе x и печатает f(x); если f(x) не определено, то алгоритм А не останавливается на входе x.

Пример: .

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

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

1.2. Основные свойства разрешимых и перечислимых множеств (с доказательством).

Пересечение, объединение и разность разрешимых множеств разрешимы.

Если X и Y разрешаются алгоритмами А и В, то их пересечение разрешается алгоритмом С, который имея на входе n, выполняет алгоритм А и если результат положительный, то выполняет В, иначе выводит отрицательный от-вет. Если результат выполнения алгоритма В положительный, то выводится положительный ответ, иначе – отрицательный.

Любое конечное множество разрешимо.

Конечное множество всегда можно перебрать, сравнивая результаты с n.

Пересечение и объединение перечислимых множеств перечислимы.

Если Х и Y перечисляются алгоритмами А и В, то их объединение перечисляется алгоритмом С, который параллельно выполняет по шагам А и В (сначала 1 элемент выводится алгоритмом А, затем элемент выводится алгоритмом В и т. д.) и печатает всё, что печатают А и В. Т.о. все элементы, принадлежащие хотя бы одному из множеств Х или Y, и только они, будут напечатаны алгоритмом С. Итак, С перечисляет множество XY.

С пересечением немного сложнее – алгоритм С, который параллельно выполняет по шагам А и В (сначала 1 элемент выводится алгоритмом А, затем элемент выводится алгоритмом В и т. д.) накапливает результаты работы А и В и каждый новый элемент сверяет с накопленными до этого. Если равенство выполнилось, то последний элемент печатается. Т.о. алгоритм С напечатает все элементы принадлежащие XY, и только их. Итак, С перечисляет множество XY.

Дополнение перечислимого множества не обязано быть перечислимым

1.3. Теоремы, связывающие понятия вычислимость, разрешимость и перечислимость.

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

Т1: Множество X разрешимо его характеристическая функция f(n)=(if nX then 1 else 0) вычислима.

Д-во:Пусть X разрешимо некоторым алгоритмом А. Покажем, что характеристическая функция множества Х вычислима. В самом деле, алгоритм её вычисления таков: получив на вход число n, выполнить алгоритм А. если nX выдать на выход 1, иначе выдать на выход 0. Закончить работу. Т.о. приведённый алгоритм вычисляет характеристическую функцию множества Х.

Пусть Х есть область определения некоторой функции f, равной 1 на элементах Х и 0 вне Х, вычисляемой некоторым алгоритмом В. Тогда Х разрешается таким алгоритмом А: подать на вход n. Запустить алгоритм В. Если результат работы алгоритма В равен 1, то nX, иначе nX.

Соседние файлы в папке ТЕОРИЯ наша!!!