можемо дати и дозволяючу процедуру для проблеми В«х ГЋ W x В» . Таким чином, з возможности розв'язання М (х) віпліває можлівість розв'язання В«х ГЋ W x В» , Звідки ми негайно Робимо Висновок, что М (х) нерозв'язна.
Для зведення проблеми В«х ГЋ W x В» до других проблем часто вікорістовується smn-теорема, як показує, Наприклад, доведення Наступний результату.
1.4. Теорема. Проблема В«ф x = 0В» нерозв'язна.
Доведення. Розглянемо функцію f, визначеня формулою
0, ЯКЩО х ГЋ W x
f (x, y) =
НЕ Визначи, ЯКЩО x ГЏ W x
Цю функцію ми ввели для того, щоб далі скористати smn-теореми. Тім самим ми розглядаємо х як параметр, и нас цікавлять Функції g x , Такі, что g x (y) @ f (x, у). При цьом мі Вибравши f так, что g x = 0 Г› х ГЋ W x.
Теза Черча (чі підстановка з використаних 0 и y u ) показує, что функція f обчіслювана. Тому існує тотальна обчіслювана функція k (x), что дається smn-теореми., така, что f (x, у) @ f k (x ) ; тоб f k (x < i>) = g x . Таким чином, по визначенню
(*) х ГЋ W x Г› f k (x ) = 0
Отже, питання про ті, чи вірно, что х ГЋ W x , можна вірішіті, відповівші спочатку на питання: чи вірно, что f k (x ) = 0 ? Тім самим ми звелено Загальну проблему В«х ГЋ W x В» до Загальної проблеми В«ф x = 0В»; оскількі перша з них нерозв'язна, ті нерозв'язна и одного, что и Було нужно довести.
У зв'язку з тим то багато перший приклад подібного роду, что зустрівся нам, розглянемо Останню Частину нашого міркування більш докладно. Нехай g-типова функція проблеми В«ф x = 0В», тоб
1, ЯКЩО ф x = 0
g (x) =
0, ЯКЩО ф x В№ 0
Припустиме, что функція g обчіслювана. Тоді обчислюваного буде и функція h (х) = G (k (х)). У тієї ж годину співвідношення (*) Дає
1, ЯКЩО ф k (x) = 0, тоб xГЋ W x ,
h (x) =
0, ЯКЩО ф k (x) В№ 0, тоб xГЏ W x .
Тім самим у силу теореми 1.1 функція h НЕ є обчислюваного. Стало буті, и функція g НЕ є обчислюваного, так что проблема В«ф x = 0В» нерозв'язна. Гї
Теорема 1.4 показує, что в области перевіркі правільності комп'ютерних програм є прінціпові обмеження. У ній говоритися про ті, что НЕ может буті зовсім Загальне ефективного методу здійсніті перевірку того, чи буде програма обчіслюваті Нульовий функцію. Трохи змінівші доведення теореми 1.4, можна переконатіся в ТІМ, что ті ж самє справедливо и для будь-якої Іншої конкретної обчіслюваної Функції (дів. нижчих впр. 1.8 (i)).
Простий наслідок теореми 1.4 показує, что питання про ті, чи обчислюють Дві програми ту саму одномісну функцію, нерозв'язне. Зміст цього результату для теоретичного програмування такоже очевидні.
1.5. Наслідок. Проблема В«ф x = ф y В» нерозв'язна.
Доведення. Легко переконатіся в тому, что ця проблема складніша проблема В«ф x = 0В». Нехай с - таке число, что ф з = 0. Если f (x, y) - типова функція проблеми ф x = ф у , то функція g (x) = f (х, з) Вє типова функція проблеми В«ф x = 0В». За теоремі 1.4 функція g необчіслювана, так что необчіслювана и функція f. Отже, проблема В«ф x = ф y В» нерозв'язна.
У Наступний результатах ми знову скорістаємося smn-теореми для зведення проблеми В«х ГЋ W x В».
1.6. Теорема. Нехай c - Довільне число. Наступні проблеми нерозв'язні.
(а) (Проблема входу) В«c ГЋ W x В» (Чі в еквівалентному формулюванні В«Р x (с) ВЇВ», чі В«c ГЋ Dom (ф x ) В»);
(b) (Проблема виходе) В«c ГЋ E x В» (Чі в еквівалентному формулюванні В«з ГЋ Ran (ф x )В»). p> Доведення. Ми можемо звесті проблему В«х ГЋ W x В» до обох ціх проблем одночасно. Розглянемо функцію f (х, у), визначеня в такий способ:
y, ЯКЩО х ГЋ W