Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

МЛИТА / fv_-_kopia

.pdf
Скачиваний:
25
Добавлен:
17.04.2018
Размер:
956.11 Кб
Скачать

37.1 Оператор минимизации. Рекурсивные функции.

 

39.1 Универсальные вычислимые функции

 

 

Пусть дана функция

 

f ( x1 , ... , x n , x n 1 ) .

Зафиксируем какие-либо

Функция

U ( n , x )

двух натуральных аргументов называется

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

значения

x

1

, ... , x

n

первых n переменных и будем вычислять

 

универсальной для класса всех вычислимых функций одного

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

аргумента, если для каждого n функция U n ( x ) U ( n , x )

вычислима и

f ( x1 , ... , x n , 0 ) ,

 

f ( x1 , ... , x n , 1 )

и т.д. Если y- наименьшее натуральное

 

 

 

 

 

 

 

 

 

 

 

 

любая вычислимая функция f(x) одного переменного совпадает с

число, для которого

 

f ( x1 , ... , x n , y )

x n 1 (т.е. значения

 

 

 

одной из функций Un(x)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

все существуют и не равны

 

 

 

 

 

f ( x1 , ... , x n , 0 ) , ... ,

 

 

f ( x1 , ... , x n , y 1)

Теорема 4. Существует вычислимая функция двух аргументов,

x n 1 ) , то полагаем

 

g ( x1 , ... ,

x n , x n 1 )

y .

Таким образом,

 

являющаяся универсальной функцией для класса всех вычислимых

 

 

функций одного аргумента.

 

 

 

 

 

 

 

 

 

 

 

 

m in { y | f ( x1 , ... , x n , y )

 

 

 

 

Если такого y - нет,

 

 

 

 

g ( x1 , ... , x n , x n 1 )

x n 1 } .

Доказательство. Вычислимые (т.е. рекурсивные) функции одного

 

 

то считаем, что

f ( x1 , ... , x n , x n 1 ) не определено. Итак, возможны три

аргумента получаются из функций о(x)=0, s(x)=x+1 с помощью

случая: 1) f ( x

 

, ... , x

 

, 0 ) , ... ,

f ( x

 

, ... , x

 

, y 1)

существуют и не равны

операций суперпозиции S, примитивной рекурсии R и минимизации M.

1

n

1

n

Значит, всякая функция одного переменного – это слово в алфавите A

x n 1 , а f ( x1 , ... , x n ,

y ) x n 1 ; 2) f ( x1 , ... , x n , 0 ) ,

 

 

 

 

 

... ,

f ( x1 , ... , x n , y 1)

= {о, s, S, R, M, (, )}.

Очевидно, существует алгоритм A перебора всех

существуют и не равны x n 1 ,

а

f ( x1 , ... , x n , y )

не существует; 3)

таких слов (начиная со слов длины 1), а также алгоритм B

“отбраковывания”

бессмысленных слов, т.е. слов, не определяющих

 

 

 

 

 

 

существуют при всех

 

и отличны от x n 1 . Если

f ( x1 , ... , x n , i )

 

никакой функции. Далее, существует алгоритм C “перевода” слова,

имеет место 1-й случай, то

g ( x1 , ... , x n , x n 1 )

 

 

y , а если 2-й или 3-й,

задающего рекурсивную функцию, в программу машины Тьюринга.

то g ( x1 , ... , x n , x n 1 ) не определено. Про функцию g , полученную

Алгоритм вычисления универсальной функции U(n,x) будет состоять

теперь в следующем. Пусть заданы n и x. Включаем алгоритмы A и B и

таким образом, говорят, что она получена из

 

применением

f

находим n-е слово, определяющее рекурсивную функцию fn. Далее

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

оператора минимизации M .

Мы пишем

g

M f . Оператор миним-и

включаем алгоритм C составления программы для машины Тьюринга T

– очевидное обобщение оператора взятия обратной функции. Обобщ-е

Запускаем машину T для аргумента, равного x, и получаем

 

U ( n , x ) .

 

 

 

 

 

 

довольно глубокое, так как от функции

f

не требуется, чтобы она

f n ( x )

 

 

 

 

 

 

была взаимно однозначной (по переменной

 

 

 

)

 

 

 

 

 

 

 

 

 

 

 

 

38.1 Разрешимые и перечислимые множества. Характеризация.

38.3 …

Положим

f ( x )

f A ( x ) ,

е с л и

x 2 k ,

Тогда f

– вычислимая

Множество

 

X

 

натуральных

чисел называется

 

разрешимым, если

 

 

 

 

 

 

е с л и x 2 k 1 .

 

 

 

 

 

 

 

 

 

 

 

 

 

существует алгоритм, который по каждому натуральному

числу n

 

 

 

 

 

 

f B ( x ) ,

 

 

функция, множество значений которой равно

A B .

По теореме 1

определяет,

 

принадлежит

n

 

 

множеству

X

 

или не принадлежит.

 

 

 

 

множество A B

перечислимо.

 

 

 

 

Другими словами,

множество

 

X разрешимо в том и только в том

 

 

 

 

 

Теорема 3.

Всякое разреш-е мн-о натур чисел перечислимо. Если мн-

случае,

 

 

если

 

 

 

 

его

 

 

 

характеристическая

функция

 

 

 

 

 

 

 

 

 

во A и его дополн-е N\A перечислимы, то A разрешимо. Док-во. Пусть

 

 

 

 

 

 

 

 

n X ,

вычислима.

 

 

 

 

 

 

1, е с л и

 

 

 

 

 

 

 

A – разреш-е мн-во натур чисел. Тогда

машина Тьюринга M которая,

X ( n )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n X

 

 

 

 

 

 

 

 

 

 

 

 

имея на входе число n, выдаёт на выходе 1 при n A

и 0 при n A.

0 ,

е с л и

 

 

 

 

 

 

 

 

 

 

 

 

Понятно, что если множества A и B

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

Добавим к программе машины M команды так, чтобы после перехода

A B ,

A B , A \

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

машины M в финальное состояние продолжение работы было

является разрешимым. Неразрешимые множества также существуют,

следующим: 1) если на выходе 1, машина заменяет её на 0 и завершает

работу, 2)

если на выходе уже был 0, то машина далее работает

так как разрешимые подмножества образуют счётное множество, а все

безостановочно (например, движется направо и печатает на ленте 1).

подмножества множества натуральных чисел образуют множество

Очевидно,

построенная

нами

машина вычисляет функцию

мощности континуума.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Значит, множество A перечислимо.

 

 

 

Множество X

 

называется перечислимым, если его

 

 

 

 

 

 

Пусть A и N\A перечислимы, а M1 и M2 – машины Тьюринга, вычисл-е

полухарактеристическая функция

 

 

 

 

 

 

 

 

 

 

 

 

 

 

соотв функции

 

и

Построим новую маш Тьюринга M.

0 ,

е с л и

n X ,

 

 

 

 

 

 

является вычислимой.

 

 

 

 

 

 

 

Она, имея на входе число n, делает вначале один шаг работы машины

X ( n )

 

 

 

 

 

 

 

 

 

 

 

 

 

n X

 

 

 

 

 

 

 

н е о п р е д е л е н о ,

е с л и

 

 

 

 

 

 

 

M1 ,затем один шаг работы M2, затем два шага M1 (начиная с первого),

Теорема 1. Пусть X

 

– подмножество множества натуральных чисел (

 

затем два шага M2

и т.д. По завершению работы одной из машин M1 ,

X N ). Тогда следующие условия эквивалентны: (1) множество X

M2 дальнейшие действия: если M1 завершила работу раньше, то

перечислимо; (2)

 

X есть область определения некоторой вычислимой

заменяем выходное значение 0 на 1 и производим остановку машины,

ф-и;(3) X

есть множество значений некоторой вычислимой функции.

а если ранее заверш M2 то она остановится. На выходе будет 1 при

n A и 0 при

 

Остановка произойдёт обязательно, так как по

Доказательство.

 

(1) ( 2 ) очевидно(областью определения

 

 

условию обе функции

и

 

вычислимы.

 

полухарактиристикой функции является Х).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

40.1 Существование перечислимого неразрешимого множества.

41.1 Алгоритмически неразрешимые задачи. Проблема остановки

Теорема 8. Существует перечислимое неразрешимое множество

машины Тьюринга.

 

 

 

 

 

Будем говорить, что для машины Тьюринга M проблема остановки

натуральных чисел.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

алгоритмически разрешима, если существует другая машина

Доказательство. Рассмотрим вычислимую функцию, не имеющую

Тьюринга T которая для каждого натурального числа n выясняет,

вычислимого всюду определённого продолжения. Докажем, что её

остановится или не остановится машина M, имея на входе число n. Для

область определения D будет искомым множеством. В самом деле,

определённости пусть T, имея на входе число n, выдаёт на выходе 1,

по теореме 1 (Пусть X – подмножество множества натуральных

если M останавливается (будучи запущенной на ленте, на которой

чисел ( X N ). Тогда следующие условия эквивалентны: (1)

 

 

написано число n) и выдаёт на выходе 0, если M не останавливается.

множество X

 

перечислимо; (2) X

есть область определения

Теорема 9. Существует машина Тьюринга M для которой проблема

 

остановки алгоритмически неразрешима.

 

 

некоторой вычислимой функции; (3)

X

есть множество значений

 

 

Доказательство. Возьмём вычислимую функцию f(x) не имеющую

некоторой вычислимой функции.)

 

 

 

 

 

 

 

 

всюду определённого вычислимого продолжения (такая функция

множество D перечислимо. Если бы D было разрешимым, то

существует по теореме 7: Существует вычислимая функция, не

функция

 

 

 

 

 

f ( x ) , е с л и

 

x D ,

 

 

 

 

 

 

 

 

имеющая всюду определённого вычислимого продолжения.). По

g ( x )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

теореме 8 её область определения является неразрешимым

 

0 ,

е с л и x

D

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

множеством. Пусть M – машина Тьюринга, вычисляющая функцию f(x)

была бы вычислимым всюду определённым продолжением функции

Тогда проблема остановки машины M является алгоритмически

f . Противоречие.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

неразрешимой задачей.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В разных разделах математики встречаются алгоритмически

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

неразрешимые задачи, т.е. задачи, для которых нет алгоритма

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

решения, причём нет не потому что его пока не придумали, а потому

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

что он невозможен в принципе.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Проблема остановки машины Тьюринга. Пусть n T − машина Тьюринга

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

с номером . n Некоторые машины, начинающие работать на пустой

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ленте, в конце концов останавливаются, а некоторые работают

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

39.2 Теорема 5. Не существует вычислимой всюду определённой

37.2 … Функции, которые могут быть получены из простейших о ( x ) , s

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

( x ) , I nm ( x1 , ... , x n ) применением конечного числа раз операторов

всюду определённых функций одного аргумента. Док-во. Для

 

доказательства мы применим диагональный метод Кантора.

 

суперпозиции, примитивной рекурсии и минимизации, называются

Предположим, что такая функция U(n,x) существует. Тогда при

 

рекурсивными. Рекурсивные функции отражают наше интуитивное

фиксированном n функция fn(x)=U(n,x) n-я всюду определённая

 

представление о функциях, вычислимых некоторым механическим

вычислимая функция от x Рассмотрим функцию g(x) = U(x,x)+1

 

устройством. В частности, они вычислимы на машинах Тьюринга (см.

Очевидно, g(x) – всюду определённая вычислимая функция. Значит,

предыдущий раздел). Наоборот, всякая функция, вычислимая на

g(x)= fn(x) при некотором n. Но g(n)= fn(n)+1 что противоречит равенству

машине Тьюринга, рекурсивна. В предыдущем разделе, впрочем, были

g(x)= fn(x). Теорема 6. Существует вычислимая функция d(n), от которой

построены машины Тьюринга, реализующие функции

o ( x ) , s ( x ) , I

никакая вычислимая функция одного аргумента не может отличаться

1

 

С другой стороны, не всякая функция натуральных аргументов

во всех точках, т.е. для любой вычислимой функции f найдётся такое

2 ( x , y ) .

 

 

 

 

 

что d(n)=f(n). Док-во. Равенство d(n)=f(n) мы понимаем в том

 

и даже не всякая функция одного аргумента является рекурсивной,. В

смысле, что либо d(n) и f(n) оба не определены, либо оба определены

самом деле, рекурсивных функций имеется лишь счётное число (т.е. их

и равны друг другу. Положим d(n)=U(n,n) где U(x,y) – универсальная

можно

 

занумеровать натуральными числами), а все функции

функция (см. теор4). Если f – вычислимая функция одного аргумента, то

 

 

 

 

образуют несчётное множество. Существование

f=fn при некотором n. Тогда f(n)=fn(n)=U(n,n)=d(n).

 

 

 

нерекурсивных функций и является “математической причиной”

Теорема 7. Существует вычислимая функция, не имеющая всюду

 

наличия алгоритмически неразрешимых задач.

 

определённого вычислимого продолжения.Док-во. Пусть U(n,x)

 

 

 

 

 

 

 

вычислимая функция, являющаяся универсальной для класса

 

 

 

 

 

 

 

вычислимых функций одного аргумента. Положим

 

 

 

 

 

 

 

 

Тогда

– вычислимая функция, определённая не для всех n. Если

 

 

 

 

 

 

– её всюду определённое вычислимое продолжение, то

 

 

 

 

 

 

 

при некотором k Тогда

 

 

 

Значит,

 

 

 

 

 

 

 

существует и не равно

Таким образом, функция

не

 

 

 

 

 

 

 

является продолжением функции

Противоречие.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

38.2 … (2)=>(3) Пусть f – вычислимая функция с областью определения

 

 

 

 

 

 

 

 

X. Тогда существует машина Тьюринга M, кот. для каждого n X

 

 

 

 

 

 

 

 

вычисляет f(n) и останавливается, а при n X работает бесконечно

 

 

 

 

 

 

 

 

долго. Пусть M’ – машина, которая запоминает значение аргумента n и

 

 

 

 

 

 

 

 

после завершения работы машины M (в случае завершения её работы)

 

 

 

 

 

 

 

 

стирает f(n) и записывает вместо него n. Тогда множество значений

 

 

 

 

 

 

 

 

функции, вычисляемой машиной M’ будет совпадать с множеством X.

 

 

 

 

 

 

 

 

(3)=>(1)Пусть X – множество значений функции f, вычисляемой

 

 

 

 

 

 

 

 

машиной Тьюринга M Обозначим через M’ машину, которая вначале

 

 

 

 

 

 

 

 

работает, как M, т.е. вычисляет f(n), а затем заменяет f(n) на 0.

 

 

 

 

 

 

 

 

Очевидно, M’ вычисляет X .

 

 

 

 

 

 

 

 

 

Теорема 2. Если A и B – перечислимые множества, то множества

 

 

 

 

 

 

 

 

A B

и A B также перечислимы.

 

 

 

 

 

 

 

 

 

Доказательство. Сначала рассмотрим пересечение A B . По

 

 

 

 

 

 

 

 

условию существуют машины Тьюринга M1 и M2, вычисляющие

 

 

 

 

 

 

 

 

функции A и B соответственно. Обозначим через M новую машину

 

 

 

 

 

 

 

 

Тьюринга, которая для каждого натурального числа n сначала

 

 

 

 

 

 

 

 

запоминает это n, затем работает как M1 и вычисляет A ,

а после

 

 

 

 

 

 

 

 

окончания работы M1 (в случае окончания работы) работает как M2 и

 

 

 

 

 

 

 

 

вычисляет

B .

Эта машина останавливается тогда и только тогда,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

когда n A B , поэтому она вычисляет функцию A B .

Докажем

 

 

 

 

 

 

 

 

теперь утверждение теоремы для объединения A B . Ввиду теоремы

 

 

 

 

 

 

 

 

1 мы можем считать, что A и B – множества значений вычислимых

 

 

 

 

 

 

 

 

функций fa

и fb соответственно.

 

41.2 … бесконечно долго. Возникает задача: по натуральному числу n

 

 

 

 

 

 

определить, остановится или нет машина Тьюринга , Tn запущенная на

 

 

 

 

 

 

пустой ленте.

 

 

 

 

 

 

 

 

 

 

 

 

Проблема доказуемости формулы в логике первого порядка. По

 

 

 

 

 

 

данным конечному множеству гипотез Γ в некоторой сигнатуре и

 

 

 

 

 

 

формуле ϕ в той же сигнатуре определить, верно ли,

что

?

 

 

 

 

 

 

Оказывается, что эта задача неразрешима. Более того, существуют

 

 

 

 

 

 

такие , Γ для которых неразрешима задача – выяснить по формуле , ϕ

 

 

 

 

 

 

верно ли

 

 

 

 

 

 

 

 

 

 

 

 

Проблема существования решения диофантова уравнения.

 

 

 

 

 

 

Диофантовым

уравнением

называется

уравнение

вида

 

 

 

 

 

 

 

 

, где P – многочлен с целыми коэффициентами.

 

 

 

 

 

 

Оказывается, что существуют такие многочлены P, для которых не

 

 

 

 

 

 

существует алгоритма определения для каждого натурального числа , n

 

 

 

 

 

 

имеет

или не

имеет

целочисленных

решений

уравнение

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Соседние файлы в папке МЛИТА