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

4.

Пусть дана функция g(x)

 

 

и

ϕ(x)= g(x, x), то говорят, что функция ϕ

 

 

 

получена из функции g с помощью операции отождествленной переменной.

 

 

 

Действительно, функцию ϕ можно представить следующим образом:

 

 

 

 

 

 

ϕ = g(I11 , I11 ),

т.е. ϕ(x)= S(g; I11 , I11 ).

 

 

 

 

 

 

 

5.

Пусть заданы функции g, h1 , h2 ,..., hk ,

где hi , i =1,2,...k – некоторые функции

различного количества переменных. Если

ϕ = g(h1 , h2 ,..., hk ),

то

говорят,

что

функция

ϕ получена из функции

g

с

помощью

операции

произвольной

подстановки (суперпозиции).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Например, пусть имеются функции

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

g(x1 , x2 , x3 ),

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h1

(x)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h2

(x, y)

 

 

 

 

 

 

 

 

 

 

и

 

 

 

 

 

 

 

 

h3

(x, y, z)

 

 

 

 

 

 

 

 

 

 

 

 

ϕ(x, y, z)= g(h1 (x), h2 (x, y), h3 (x, y, z)).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Тогда функция ϕ является ПРФ относительно совокупности {g, h1, h2 , h3}.

 

 

 

Покажем, что данная операция справедлива.

Функции ϕ можно представить

следующим образом.

3 (x, y, z)), h

 

(I

 

 

 

 

 

(x, y, z)), h

(I

 

 

 

 

 

(x, y, z))).

ϕ(x, y, z)= g(h (I

2

3 (x, y, z), I 3

3 (x, y, z), I 3

(x, y, z), I 3

 

 

1

1

 

 

1

 

 

2

 

3

1

 

 

2

3

 

 

 

Введем следующие обозначения:

 

 

(I 3

(x, y, z))

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h* (x, y, z)

= h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h2* (x, y, z)= h2

(I13 (x, y, z), I 23 (x, y, z))

 

(x, y, z))

 

 

 

 

 

 

 

 

 

h* (x, y, z)

= h

 

(I 3

(x, y, z), I 3 (x, y, z), I 3

 

 

 

 

 

 

 

 

 

3

 

 

3

1

 

 

 

2

 

3

 

 

 

 

 

 

 

 

Как видим, что функции

h* , h*

получены из функции

h , h

2

соответственно

 

 

 

 

 

 

1

 

2

 

 

 

 

 

 

 

1

 

 

 

 

 

операцией

введения

фиктивных

 

переменных.

Поэтому

h* ,

 

является

ПРФ

относительно совокупности {h }

 

 

 

 

 

 

 

 

 

 

1

 

 

 

{h

 

}.

 

 

и

h* – ПРФ относительно совокупности

2

 

 

 

1

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

Очевидно, h3* – ПРФ относительно совокупности {h3 }. Тогда функция ϕ приобретает

вид:

ϕ = S(g; h1* , h2* , h3* ).

Следовательно, она ПРФ относительно совокупности {g, h1* , h2* , h3* }. Учитывая свойство 10 относительно примитивной рекурсивности , получаем, что функция ϕ – ПРФ относительно совокупности {g, h1 , h2 , h3 }.

I.4. Операции конечного суммирования и конечного произведения

Пусть задана функция g(x1,K, xn , y).

15

Определение. Говорят,

что функция

σ(x1,K, xn , z) получена

из функции

g(x1,K, xn , y) с применением операции конечного суммирования, если для любого

набора переменных (x1 ,K, xn , z) выполняется следующее равенство:

 

σ(x1,K, xn , z)= g(x1 ,K, xn ,0)

+ g(x1 ,K, xn ,1)+K+ g(x1 ,K, xn , z)=

 

z

 

 

(1)

= g(x1,K, xn , t)

 

 

 

t=0

 

 

 

Определение. Говорят,

что функция

δ(x1,K, xn , z) получена

из функции

g(x1,K, xn , y) с применением операции конечного произведения, если для любого

набора переменных (x1,K, xn , z) выполняется следующее равенство:

 

δ(x1 ,K, xn , z)= g(x1 ,K, xn ,0) g(x1 ,K, xn ,1) K g(x1 ,K, xn , z)=

 

z

 

 

(2)

= g(x1 ,K, xn , t)

 

 

 

t=0

Теорема 1. Операции конечного суммирования и конечного произведения сохраняют свойство примитивной рекурсивности функции.

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

Пусть σ(x1 ,K, xn , z)= z

g(x1 ,K, xn , t),

тогда по определению операции

 

 

t=0

 

 

 

примитивной рекурсии получим:

 

 

 

 

σ(x1,K, xn ,0)= g(x1,K, xn ,0)

 

 

 

σ(x1,K, xn , z +1)= z

g(x1,K, xn ,t)+ g(x1 ,K, xn , z +1)

 

 

 

t=0

 

 

Таким образом, функция σ получается по операцией примитивной рекурсии из

функции

 

 

 

g

 

 

 

 

и h(x1,K, xn , z,u), т.е. σ = R(g , h).

Действительно

g (x1 ,K, xn )= g(I1n , I 2n ,K, I nn , C0n )

h(x1 ,K, xn , z, u)= g(I1n+2 (x1 ,K, xn , z, u),K, I nn+2 (x1 ,K, xn , z, u), I nn++12 ((x1 ,K, xn , z, u)+1)+ I nn++22 (x1 ,K, xn , z, u)

Очевидно, что

σ(x1 ,K, xn ,0)= g(x1 ,K, xn )

σ(x1 ,K, xn , z +1)= h(x1 ,K, xn , z, σ(x1 ,K, xn , z))

Из задания функций gи h следует, что они являются ПРФ соответственно относительно совокупности {g}. Функция σ–ПРФ относительно функций gи h.

16

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

 

 

x

 

 

y 0

 

Пример.

 

целойчастиот делениячисла x на число y, если

.

 

 

 

=

 

 

 

 

y

x, если y = 0

 

 

Покажем, что данная функция является примитивно рекурсивной. Для доказательства ПРФ данной функции используем операцию конечного суммирования.

Рассмотрим два случая:

1) пусть y > 0. Введем обозначения

x = q .y

Тогда по теореме о делении с остатком,

x = q y + r,

где 0 r < y .

Очевидно, что число q удовлетворяет соотношениям q y x < y (q +1).

Рассмотрим следующие разности:

y 0 −& x y 1 −& x

...

y q −& x

y (q +1)−& x

...

y x −& x

Нетрудно подсчитать, что число нулей в этой последовательности равно q +1.

Поэтому, исходя из вышеуказанной разности, q можно выразить следующим образом

q =

x

=

x

 

 

(y t x)1

 

sg

 

 

 

 

 

 

 

 

 

& &

(3)

 

y

 

t=0

.

2) Пусть y=0. В этом случае, функция

x

 

– может быть получена из функции

 

 

 

 

 

 

y

 

 

17