Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория алгоритмов / из Интернета / теория алгоритмов (учебник 87 стр).pdf
Скачиваний:
191
Добавлен:
27.05.2015
Размер:
771.07 Кб
Скачать

I2

 

S(1)

 

 

 

 

I3

 

S(3)

 

 

 

 

I4

 

J(1,1,1)

 

 

 

Таб.3.8.

Заданный алгоритм вычисляет функцию x + y.

 

 

 

Пример

3.

Докажите

МНР-вычислимость

функции

f

(x)= x 1 =

0, если x 1

 

 

 

 

&

 

 

 

 

 

 

 

x 1, если x >1

 

 

Решение. Составим алгоритм для начальной конфигурации x, 0, 0, ... .

Типичной конфигурацией в процессе вычисления является:

R1

R2

R3

R4

R5

...

X

K

k + 1

0

0

...

Таб.3.9.

Следующий алгоритм МНР-вычисляет функцию.

I1

J(1, 2, 6)

I2

S(2)

I3

J(1, 2, 6)

I4

S(3)

I5

J(1, 1, 2)

I6

T(3, 1)

Таб.3.10.

Практические задания

а) Составьте алгоритмы МНР– вычисляющие функции:

1.f (x)= x + 5;

2.f (x)= 3 x + 5 ;

3.f (x)= x −& 1;

4.

 

 

1,

x > 0

;

 

Sgx =

x = 0

 

 

 

 

0,

 

 

5.

 

 

0,

x > 0

;

 

 

 

Sgx =

x = 0

 

 

 

1,

 

6.f (x)= C51 (x) ;

7.f (x, y)= I 22 (x, y)+1;

8.f (x, y, z)= I 23 (x, y, z)−& 1 ;

75

9. f (x, y)= max(x, y)= x, x > y ;

y, x y

10.f (x)= x!.

б) Покажите, что для каждой команды переадресации существует программа без команд переадресации, которая на всякой конфигурации МНР дает тот же результат, что и T(m, n). Это означает, что команды переадресации на самом деле избыточны в нашем определении МНР. Тем не менее, представляется естественным и удобным иметь такие команды, облегчающие построение алгоритмов.

в) Докажите разрешимость следующих предикатов на множестве натуральных чисел:

1.p(x, y)= (x y) ;

2.p(x, y)= (x y) ;

3.p(x, y)= (x < y) ;

1.p(x)= (x четноечисло);

2.p(x, y)= (3x + 2 y = 0).

76