ОПРЕДЕЛЕНИЕ. Множество A называется разрешимым множеством, если его характеристическая функция является вычислимой.

Множество A называется разрешимым множеством, если его характеристическая функция является вычислимой.

 

Очевидно, что разрешимость множества A означает существование алгоритма, который для произвольного элемента aÎNk за конечное число шагов работы дает ответ на вопрос о принадлежности a множеству A.

 

Пример. Множество {n|n - четное число} является рекурсивным множеством, поскольку имеет рекурсивную характеристическую функцию f(x) = (mod(x, 2)).

Здесь mod(x, 2) -функция остатка от деления x на 2.

 

Упражнение. Пусть A и B разрешимые подмножества множества Nk. Показать, что множества A È B, A Ç B и Nk \ A также являются разрешимыми.

 

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

Увеличим числовые представления всех возможных решений задачи на 1. Это позволяет выделить 0 из множества решений задачи в качестве специального значения.

Произвольной задаче T поставим в соответствие множество

DT= {(a, b) | ((b ¹ 0) & (решение задачи T для начальных данных a равно b)) Ú ((b = 0) & (решение задачи T для начальных данных a не существует))}.

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

Покажем, что для задачи T существует алгоритм получения решения при любых начальных данных тогда и только тогда, когда DTÍ N2 является разрешимым множеством.

1.Пусть для T имеется разрешающий алгоритм A. Тогда для проверки принадлежности пары (a, b) множеству DT достаточно применить A к начальному данному a и сравнить полученное решение c со значением b-1.

2.Пусть DTÍ N2. Тогда нахождение решения T для начального данного a состоит в проверке того, что (a, 0) ÏDT. Если проверяемое условие имеет место, то решение задачи T существует и может быть найдено последовательной проверкой выполнения условия (a, i) Î DT для i = 1, 2, . . . , выполняемой до тех пор пока не будет найдена пара (a, b) Î DT , озгачающая, что решение T на начальных данных a равно b-1.

Рассмотрим три специальные задачи, относящиеся к свойствам программ в произвольном универсальном языке программирования.

 








Дата добавления: 2015-09-18; просмотров: 503;


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

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

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

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