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

Дискретная математика и теория алгоритмов. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
1 Мб
Скачать

§ 17. Частично рекурсивные функции

91

 

 

значение ( , 1). Если это значение не определено, то ( ) тоже не определено. Иначе если ( , 1) = 0, то вычисления заканчиваются — число 1 будет подано на выход. Если же ( , 1) ̸= 0, то данный процесс продолжается. В результате мы либо вычислим наименьшее решение уравнения ( , ) = 0, либо ничего не вычислим. Последнее возможно по двум причинам: либо некоторое вычисляемое значение функции окажется неопределённым, либо ( , ) определено для всех , но не равно нулю.

Пример. Применим оператор минимизации к функции ( , ) = ( + )−1 — получим функцию ( ) = [( + )−1 = 0].

Если = 0, то (0) = [ −1=0] = 0. Если = 1, то (1) = [(1 + )−1=0] = = [ =0] = 0. Если же > 2, то ( + )−1 > 0 при любом значении , и значит, минимизация в этом случае не определена.

Таким образом, функция ( ) имеет следующее кусочное представление:

( ) =

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

если > 2.

 

0,

 

если 6 1;

Определение. Определим семейство

примитивно рекурсивных функций (сокра-

щённо п.р.ф.) по индукции:

 

 

 

(1)любая простейшая функция — п.р.ф.;

(2)если , 1, . . . , — п.р.ф., а получена из , 1, . . . , с помощью оператора суперпозиции, то тоже п.р.ф.;

(3)если , — п.р.ф., а получена из , с помощью оператора примитивной рекурсии, то тоже п.р.ф.

Любая п.р.ф. получается конечным числом применений пунктов (1)–(3).

Определение. Определим семейство частично рекурсивных функций (сокращённо ч.р.ф.) по индукции:

(1)любая простейшая функция — ч.р.ф.;

(2)если , 1, . . . , — ч.р.ф., а получена из , 1, . . . , с помощью оператора суперпозиции, то тоже ч.р.ф.;

(3)если , — ч.р.ф., а получена из , с помощью оператора примитивной рекурсии, то тоже ч.р.ф.;

(4)если — ч.р.ф., а получена из с помощью оператора минимизации, то тоже ч.р.ф.

Любая ч.р.ф. получается конечным числом применений пунктов (1)–(4).

Определение. Всюду определённые частично рекурсивные функции называются рекурсивными (сокращённо р.ф.).

Замечание. Таким образом, частичная функция является частично рекурсивной (примитивно рекурсивной), если существует конечная последовательность функций0, . . . , такая, что = и для любого 6 функция либо простейшая, либо

92 Глава IV. Формализации понятия вычислимой функции

получается из некоторых предыдущих , < , с помощью одного из операторов, или (операторов или ).

Очевидно, между введёнными классами функций имеют место следующие теоре- тико-множественные включения:

ПРФ РФ ЧРФ.

Пример. Рассмотрим последовательность частичных функций:0( ) = = 11( ) — простейшая функция;

1( ) = ( ) — простейшая функция;2( , , ) = 33( , , ) — простейшая функция;

3( , , ) = + 1 — функция, полученная с помощью оператора из 1 и 2;4( , ) = + — функция, полученная с помощью оператора из 0 и 3;

5 = 0 — простейшая функция;6( , ) = 12( , ) — простейшая функция;

7

 

— функция, полученная с помощью оператора из 5

и 6;

 

( ) = −1

 

8

 

 

 

 

и 4;

( , ) = ( + )−1 — функция, полученная с помощью оператора из 7

9

( ) = {не определено,

если > 2.

 

 

 

0,

 

если 6 1;

 

 

Функция 9

получена с помощью оператора из 8. Значит, 9 — ч.р.ф. Более

того, все функции 0, . . . , 9 частично рекурсивны, а функции 0, . . . , 8 даже прими- тивно рекурсивны.

Замечание. Часто в число простейших функций включают также одноместную всюду определённую функцию ( ) = 0. Заметим, что класс частично рекурсивных

функций при этом не изменяется. Это следует из того, что ( ) можно получить из 0-

местной функции 0 и 2-местной функции 22( , ) с помощью оператора примитивной рекурсии.

Предложение 31. Любая простейшая функция вычислима по Тьюрингу.

Доказательство. Нульместная константа 0 вычисляется программой, состоящей из одной команды 10 → 00.

Одноместная функция ( ) вычисляется с помощью следующей программы:

10 → 20

30 → 40

21 → 21

41 → 41

20 → 31

40 → 00.

Машина, вычисляющая функцию

( 1, . . . , ), работает по следующей схеме:

 

 

 

 

 

 

 

 

 

101 1 0 . . . 01 0 . . . 01 0 =

01 0 . . . 01 01 1 0 . . . 01 −1 0 =

 

 

Ц

 

 

 

 

 

(Б )

1

 

1

 

 

 

 

 

+

=

01 0 . . . 01 01 1 0 . . . 01 −1 0 =

001 0 . . . 0.

 

(Б )

1

 

(О·

Б

)

1

 

+

 

 

 

 

 

Таким образом, функция вычисляется с помощью следующей композиции ба-

зовых машин:

(Ц ) −1 (Б+) −1 (О Б) −1.

§ 17. Частично рекурсивные функции

93

 

 

Предложение 32. Семейство вычислимых по Тьюрингу функций замкнуто относительно оператора суперпозиции.

Доказательство. Пусть функция ( 1, . . . , ) получена с помощью оператора суперпозиции из частичных функций ( 1, . . . , ), 1( 1, . . . , ), . . . , ( 1, . . . , ) и

пусть функции , 1, . . . , вычислимы на машинах Тьюринга , 1, . . . , соот- ветственно.

Тогда машина, вычисляющая функцию ( ) = ( 1( ), . . . , ( )), работает по следующей схеме:

 

101 1 0 . . . 01 0 =

1 01 1 0 . . . 01 01 1 0 . . . 01 0 =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

К

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Б+

 

 

= 01 1 0 . . . 01 1 01 1 0 . . . 01 0 =

 

 

 

01 1 0 . . . 01 1 01 1(

 

)0 . . . 0 =

 

 

 

 

 

 

 

 

(Б )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(Б)

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= 1 01 1 0 . . . 01 01 1(

 

 

 

)0 . . . 0 =

 

 

 

 

1 01 1(

 

)01 1 0 . . . 01 0 . . . 0 =

 

 

 

 

 

 

 

 

 

 

(Б)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(Ц +1)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Б

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

= 01 1(

 

 

) 1 01 1 0 . . . 01 0 . . . 0 = . . .

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Б

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

К

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

. . . = 01 1(

 

 

)0 . . . 01 −1(

 

 

)

 

 

 

 

01 1 0 . . . 01 0 . . . 0 =

 

 

 

 

 

 

 

 

 

 

 

 

Б

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

−1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

+

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(

 

)

 

 

 

 

 

 

 

 

 

(

 

)

 

 

 

 

 

 

(

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

0 . . . 01 −1

 

 

 

 

 

01

 

 

 

 

 

 

 

 

 

 

 

 

 

= 01 1

 

 

 

 

 

 

 

0 . . . 0 =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Б

 

 

1

 

 

 

 

 

 

 

01 1(

 

)0 . . . 01 (

 

)0 . . . 0 =

001 (

 

)

 

 

 

(

=

 

 

 

 

0 . . . 0.

 

 

Б

)

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таким образом, следующая машина Тьюринга вычисляет функцию :

 

 

(Б+) 1 (Б) (Ц +1) Б+ . . .

 

 

 

(Б+) −1 (Б) (Ц +1) Б+

(

К

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

)

 

 

 

 

 

(

К

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(Б) −1

 

.

 

 

 

 

 

 

 

 

 

 

Предложение 33. Семейство вычислимых по Тьюрингу функций замкнуто относительно оператора примитивной рекурсии.

Доказательство. Пусть функция ( 1, . . . , , ) получена по схеме примитивной рекурсии из частичных функций ( 1, . . . , ) и ( 1, . . . , , , ) и пусть функции ивычислимы на машинах Тьюринга и соответственно. Определим машину , вычисляющую функцию .

Используя базовые машины, можно построить такие машины Тьюринга 1, 2,3, 4, что схема работы выглядит следующим образом:

1

01 1 0 . . . 01 01 0 =

01 1 0 . . . 01 001 01 1 0 . . . 01 0 =

 

1

 

 

 

 

= 01 1 0 . . . 01 001 01 ( )0 . . . 0.

Заметим, что при = 0 имеет место равенство

01 1 0 . . . 01 001 01 ( )0 . . . 0 = 01 1 0 . . . 01 01 01 01 ( , )0 . . . 0.

Далее, для произвольного в состоянии проверяем, есть ли ещё единицы в массиве 1 . Если единицы ещё есть, то переходим в состояние , если нет — в

94

Глава IV. Формализации понятия вычислимой функции

 

 

состояние , т.е. происходит следующее разветвление:

01 1 0 . . . 01 01 01 01 ( , )0 . . . 0 =

2

{01 1

0

2

если

= 0.

. . . 01 01 01 01 ( , )0 . . . 0,

=

01 1

0

. . . 01 01 01 01 (

 

, )0 . . . 0,

если

> 0,

В состоянии , используя машину , переходим к следующей итерации в цикле:

01 1 0 . . . 01 01 01 01 ( , )0 . . . 0 =

3

= 01 1 0 . . . 01 01 +101 −( +1) 01 1 0 . . . 01 01 01 ( , )0 . . . 0 =

3

= 01 1 0 . . . 01 01 +101 ( +1) 01 ( , +1)0 . . . 0.

В состоянии выходим из цикла:

01 1 0 . . . 01 01 0 01 ( , )0 . . . 0 = 001 ( , )0 . . . 0.

4

Таким образом, = 1 2[ → 3 | → 4].

Предложение 34. Семейство вычислимых по Тьюрингу функций замкнуто относительно оператора минимизации.

Доказательство. Пусть функция ( 1, . . . , ) получена с помощью оператора минимизации из частичной функции ( 1, . . . , , ) и пусть функция вычислима на машине Тьюринга . Определим машину , вычисляющую функцию .

Используя базовые машины, можно построить такие машины Тьюринга 1, 2,3, 4, что схема работы выглядит следующим образом:

101 1 0 . . . 01 0 = 01 1 0 . . . 01 0 01 1 0 . . . 01 00.

1

Заметим, что при = 0 имеет место равенство

01 1 0 . . . 01 0 01 1 0 . . . 01 00 = 01 1 0 . . . 01 01 01 1 0 . . . 01 01 0.

Далее, для произвольного в состоянии запускаем машину :

01 1 0 . . . 01 01 01 1 0 . . . 01 01 0 = 01 1 0 . . . 01 01 01 ( , )0 . . . 0.

Если машина остановилась, то в состоянии проверяем, выполняется ли тож-

дество ( 1, . . . , , ) =

0. Если ( 1, . . . , , ) > 0, то переходим в состояние , а

если ( 1, . . . , , ) = 0,

то в состояние , т.е. происходит следующее разветвление:

01

0

 

01

01

01

0

 

0

2

{01 1

0

. . . 01 01 01 ( , )0 . . . 0,

если ( , )=0.

1

 

. . .

 

 

(

 

, )

 

. . .

 

=

01 1

0

. . . 01 01 01 (

 

, )0 . . . 0,

если (

 

, )>0,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В состоянии переходим к следующей итерации в цикле:

01 1 0 . . . 01 01 01 ( , )0 . . . 0 = 01 1 0 . . . 01 01 +1 01 1 0 . . . 01 01 +10.

3

В состоянии выходим из цикла:

01 1 0 . . . 01 01 00 . . . 0 = 001 0 . . . 0.

4

Таким образом, = 1 2[ → 3| → 4].

§ 17. Частично рекурсивные функции

95

 

 

Теорема 35 (о вычислимости ч.р.ф. на машинах Тьюринга) . Любая частично рекурсивная функция является вычислимой по Тьюрингу.

Доказательство. Пусть — ч.р.ф. Следовательно, по определению существует конечная последовательность функций 0, . . . , такая, что = и для любого 6 функция либо простейшая, либо получается из некоторых предыдущих с помощью оператора , или . Индукцией по числу докажем, что вычислима по Тьюрингу.

Если = 0, то является простейшей. Следовательно, в силу предложения 31, функция вычислима по Тьюрингу.

Пусть > 0. Достаточно рассмотреть случай, когда получена из некоторых ,< , с помощью одного из трёх операторов. В силу индукционного предположения, все функции , где < , вычислимы по Тьюрингу. Отсюда, используя предложения 32–34, заключаем, что функция тоже является вычислимой по Тьюрингу.

Теорема доказана.

Упражнения

1.Доказать, что функции ( ) = + 1 и ( ) = 2 нельзя получить из про-

стейших функций 0 и , , , конечным числом применений операторов суперпозиции и примитивной рекурсии.

2.Рассмотрим следующие функции Аккермана :

(0, ) = 2 + ;

( + 1, 0) = sg( );

( + 1, + 1) = ( , ( + 1, ));

( ) = ( , ).

Назовём всюду определённую функцию ( 1, . . . , ) -мажорируемой, если существует такое, что

( 1, . . . , ) < ( , max( 1, . . . , ) + 3).

Доказать, что:

(а) ( , ) и ( ) рекурсивны;

(б) ( + 2, + 1) > 2 +1;

(в) ( + 1, + 2) > ( + 1, + 1);

(г) ( + 2, + 3) > ( + 1, + 4);

(д)простейшие функции -мажорируемы;

(е)функция, полученная из -мажорируемых функций с помощью суперпозиции, -мажорируема;

(ж)функция, полученная из -мажорируемых функций с помощью примитивной рекурсии, -мажорируема;

(з) функция ( ) не является примитивно рекурсивной.

1−1

3. Пусть : −−→ — всюду определённая инъективная функция, вычислимая по Тьюрингу. Доказать, что обратная функция −1 : range( ) −→ тоже вычислима по Тьюрингу.

4. Построить машину Тьюринга, вычисляющую функцию ( ), которая порождает все числа Фибоначчи, т. е. (0) = 0, (1) = 1, ( + 2) = ( ) + ( + 1).

96

Глава IV. Формализации понятия вычислимой функции

 

 

§ 18. Рекурсивность некоторых функций и отношений

Нашей дальнейшей целью является доказательство утверждения, обратного теореме 35. Для этого нам потребуется целая серия предварительных фактов и новых поня-

тий. Всюду далее через мы обозначаем кортеж 1, . . . , , при = 0 этот кортеж считается пустым.

Лемма 36. Все нульместные всюду определённые функции являются примитивно рекурсивными.

Доказательство. Пусть — произвольная константа. Возможны два случая. Если = 0, то это по определению простейшая функция, и значит, она является п.р.ф. Если же > 0, то = ( . . . (0) . . .), т. е. получена из простейших функций

0 и ( ) с помощью -кратного применения оператора .

Лемма 37. Следующие функции являются примитивно рекурсивными:

(а) ( , ) = + ;

 

 

 

 

(б) ( , ) = · ;

 

0

= 1);

 

(в) ( , ) =

(здесь 0

 

(г) sg( ) =

{1,

> 0;

 

 

 

 

 

 

0,

= 0;

 

 

 

(д) sg( ) =

{0,

> 0;

 

 

 

 

 

 

1,

= 0;

 

 

 

(е) ( ) = −1 = {

 

1,

> 0;

 

 

 

 

 

0,

 

= 0;

 

(ж) ( , ) = − =

 

 

 

{

, > ;

 

 

 

 

 

0,

6

;

(з) ( , ) = | − |.

Доказательство. (а) См. пример в предыдущем параграфе.

(б) Для функции ( , ) = · имеет место следующая схема примитивной рекурсии:

{

( , 0) = 0,

( , + 1) = + = ( , ) = ( 33( , , ( , )), 13( , , ( , ))),

где ( , ) = + — п.р.ф. из предыдущего пункта, т. е. ( , ) получена с помощью

оператора из п.р.ф. ( ) = 0 = ( ) и п.р.ф. ( , , )= ( 33( , , ), 13( , , )), которая, в свою очередь, получена из п.р.ф. , 33, 13 с помощью оператора .

(в) Доказывается аналогично путем выписывания соответствующей схемы примитивной рекурсии.

(г) Выписываем схему примитивной рекурсии:

{

sg(0) = 0,

sg( + 1) = 1 = (0) = ( ( 12( , sg( )))).

Другими словами, sg( ) получена с помощью оператора из 0-местной функции 0,

которая является простейшей, и 2-местной функции ( ( 12( , ))), которая является п.р.ф., поскольку получена суперпозициями из п.р.ф.

§ 18. Рекурсивность некоторых функций и отношений

97

 

 

(д) Выписываем схему примитивной рекурсии:

{

sg(0) = 1,

sg( + 1) = 0 = ( 12( , sg( ))).

Таким образом, sg( ) получена с помощью оператора из 0-местной функции 1,

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

(е) См. пример в предыдущем параграфе.

(ж) Обозначим ( , ) = − . Тогда имеет место схема примитивной рекурсии:

{

( , 0) = = 11( ),

( , + 1) = −( + 1) = ( − )−1 = ( ( , )),

где ( ) = −1 — п.р.ф. из предыдущего пункта. Выше мы воспользовались тождеством −( + 1) = ( − )−1, которое верно для любых , .

(з) Заметим, что | − | = ( − )+( − ) — суперпозиция примитивно рекурсивных функций.

Лемма 38. Если функция (

 

, ) является ч.р.ф. (п.р.ф.), то функции

(

 

, ) =

 

 

 

 

 

 

 

∑ ∏

=( , ) и ( , ) = ( , ) тоже являются ч.р.ф. (п.р.ф.).

=0

=0

Доказательство. Частичная (примитивная) рекурсивность функции вытекает из пункта (а) леммы 37 и следующей схемы примитивной рекурсии:

{

( , 0) = ( , 0),

( , + 1) = ( , ) + ( , + 1).

Утверждение для функции доказывается аналогично с использованием пункта (б) леммы 37.

Определение. Говорят, что функция ( ) получается с помощью ограниченной минимизации из всюду определённых функций ( , ) и ( ) и обозначается ( ) = = 6 ( )[ ( , ) = 0], если для любых значений выполняется

 

 

 

{ ( ) + 1

в противном случае.

и 6 (

 

 

(

 

) =

,

 

 

если (

 

, ) ̸= 0 для всех < , (

 

, ) = 0,

 

),

Предложение 39 (об ограниченной минимизации). Если функции и примитивно рекурсивны и функция получена из и с помощью ограниченной минимизации, то тоже примитивно рекурсивна.

Доказательство. Докажем, что для любых 1, . . . , справедливо тождество

 

 

 

 

 

 

 

 

 

 

 

(

 

)

 

 

 

 

(*)

 

 

 

 

 

 

 

 

 

( ) = =0 sg( =0 ( , )).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

sg

=0 ( , )

= 1, а для всех > имеет место

 

=0

( , ) = 0. Следовательно, в

Если ( ) = 6 ( ), то для всех < справедливо

 

=0 ( , ) > 0 и, значит,

(∏

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(*)

 

 

 

 

 

 

 

 

 

 

 

 

 

правой части тождества

 

единица суммируется раз, т.е. правая часть равна .

Предложение 40.

98

 

Глава IV. Формализации понятия вычислимой функции

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Если же ( ) = ( )+1, то =0

( , ) > 0 для всех 0 6

6 ( ). Следовательно,

в правой части тождества (*) единица суммируется ( ) + 1 раз, т.е. правая часть тоже равна ( ) + 1.

Таким образом, примитивная рекурсивность функции следует из лемм 37, 38 и тождества (*).

Распространим понятие рекурсивности на класс всех отношений, заданных на .

Для этого достаточно связать с каждым отношением некоторую частичную функцию, которая однозначно его задаёт, и назвать отношение рекурсивным, если таковой является данная функция.

Определение. Отношение (предикат) называется рекурсивным (примитив- но рекурсивным), если его характеристическая функция

 

 

1

 

 

 

{0,

если

1

, . . . ,

/

 

 

 

(

, . . . ,

 

) =

1,

если

1

, . . . ,

 

,

 

 

 

 

 

 

 

 

 

 

 

 

является рекурсивной (примитивно рекурсивной).

Напомним, что вместо 1, . . . , иногда пишут ( 1, . . . , ) и говорят, что предикат истинен на элементах 1, . . . , . Если же 1, . . . , / , то пишут ¬ ( 1, . . . , ) и говорят, что предикат ложен на элементах 1, . . . , .

Определение. Для , введём следующие обозначения для -местных отношений:

& = { | ( ) истинно, и ( ) истинно},

= { | ( ) истинно, или ( ) истинно},

→ = { | если ( ) истинно, то ( ) истинно},

¬ = { | ( ) ложно}.

Кроме этого, для +1 введём следующие обозначения для ( + 1)-местных отношений:

6 (

 

 

 

, ) = {

 

 

, +1 |

существует 6 такой, что (

 

 

, ) истинно},

 

 

 

6 (

 

 

 

, ) = {

 

 

, +1 |

для всех 6 отношение (

 

 

, ) истинно},

 

 

 

< (

 

, ) = {

 

, +1 |

существует < такой, что (

 

, ) истинно},

 

 

 

< (

 

, ) = {

 

, +1 |

для всех < отношение (

 

, ) истинно}.

 

 

 

Замечание. С теоретико-множественной точки зрения отношение & совпадает с пересечением , отношение — с объединением , а отношение ¬ — с дополнением . Кроме этого, имеет место тождество → = ¬ .

Если отношения ( ) и ( ) рекурсивны (примитивно рекурсивны), то отношения ( )& ( ), ( ) ( ), ¬ ( ), ( ) → ( ) тоже рекурсивны (примитивно рекурсивны).

Доказательство. Следует из леммы 37 и следующих тождеств:

& (

 

) = (

 

) · (

 

),

(

 

) = sg( (

 

) + (

 

)),

¬ (

 

) =

 

 

 

 

 

 

 

 

 

 

 

sg( ( )),

( ) = ¬ ( ) = sg(sg( ( )) + ( )).

§ 18. Рекурсивность некоторых функций и отношений

99

 

 

Предложение 41. Бинарные отношения =, ̸=, <, >, 6, > являются примитивно рекурсивными.

Доказательство. Примитивная рекурсивность данных отношений следует из леммы 37 и тождеств

=( , ) =

 

 

| − |,

̸=( , ) = sg| − |,

sg

 

 

 

 

 

 

 

 

<( , ) = sg( − ),

>( , ) = sg( − ),

 

 

 

 

 

 

 

 

6( , ) = sg( − ),

>( , ) = sg( − ).

Предложение 42. Если отношение ( , ) рекурсивно (примитивно рекурсивно), то отношения 6 ( , ), 6 ( , ), < ( , ), < ( , ) тоже рекурсивны (примитивно рекурсивны).

Доказательство. Утверждение для отношения (

 

, ) = 6 (

 

, ) следует из

 

 

леммы 38 и тождества

 

 

 

 

 

 

( , ) = sg( =0 ( , )).

 

 

 

Утверждение для остальных отношений вытекает из предложений 40, 41 и эквивалентностей

6 ( , ) ¬ 6 ¬ ( , ),

< ( , ) 6 ( ( , ) & ̸= ),

< ( , ) ¬ < ¬ ( , ).

Предложение 43 (о кусочном задании функции). Пусть 0, . . . , — ре- курсивные (примитивно рекурсивные) отношения, такие что 0 . . . = и

∩ = ? при ̸= . Пусть далее 0( 1, . . . , ), . . . , ( 1, . . . , ) — рекурсивные (примитивно рекурсивные) функции. Тогда функция

 

 

 

0(

 

),

если 0(

 

),

(

 

) =

 

 

 

· · ·

 

 

 

 

 

· · ·

 

 

 

 

 

 

 

 

 

( ), если ( )

тоже рекурсивна (примитивно рекурсивна).

Доказательство. Достаточно заметить, что ( ) = 0( )· 0 ( )+. . .+ ( )· ( ).

Лемма 44. Если функция ( , ) рекурсивна (примитивно рекурсивна), то функция

 

 

 

 

 

 

 

 

 

= (

 

, ),

если 6 ,

(

 

, , ) =

 

 

 

 

 

если

> ,

 

 

 

1,

 

 

 

 

 

 

 

тоже рекурсивна (примитивно рекурсивна).

100

Глава IV. Формализации понятия вычислимой функции

 

 

Доказательство. (Примитивная) рекурсивность функции следует из леммы 38, предложения 43 и следующей кусочной схемы:

( , , ) =

=0 ( , + ),

если 6 ,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

если

 

 

 

 

1,

 

> .

 

 

 

 

 

 

 

 

 

 

Определение. Пусть ( , ) — отношение, ( ) — всюду определённая функция.

Обозначим через [ ( , )] функцию [| ( , )−1| = 0], а через 6 ( )[ ( , )]

— функцию 6 ( )[| ( , ) − 1| = 0]. Ясно, что если ( , ) рекурсивно, то[ ( , )] — ч.р.ф. Кроме этого, из предложения 39 следует, что если ( , ) и ( )

примитивно рекурсивны, то 6 ( )[ ( , )] — п.р.ф.

Лемма 45. (а) Функция [ / ], равная целой части от частного / , примитивно рекурсивна (по определению считаем, что [ /0] = ).

(б) Отношение Div( , ), истинное тогда и только тогда, когда делит , примитивно рекурсивно.

(в) Отношение Prime( ), истинное тогда и только тогда, когда — простое число, примитивно рекурсивно.

Доказательство. Докажем утверждение пункта (а). Имеет место цепочка эквивалентностей [ / ] = ( = 0 & = ) ( ̸= 0 & 6 / < + 1)

( = 0 & = ) ( ̸= 0 & 6 < ( + 1) ) ( = 0 & = )

( ̸= 0 & – наименьшее, такое что < ( + 1) ). Кроме этого, ясно, что [ / ] 6 . Отсюда получаем

[ ]

[ / ] = 6 ( = 0 & = ) ( ̸= 0 & < ( + 1) ) .

Таким образом, функция [ / ] получена ограниченной минимизацией из примитивно

рекурсивных функций, а значит, является п.р.ф.

Утверждения пунктов (б) и (в) следуют из эквивалентностей:

Div( , ) 6 ( = )

( )

Prime( ) ( > 2) & 6 Div( , ) −→ ( = 1 = ) .

Лемма 46. (а) Функция ( ) = , где 0 = 2, 1 = 3, 2 = 5, . . . — перечисление всех простых чисел в порядке возрастания, является примитивно рекурсивной.

(б) Функция ex( , ), равная показателю степени в каноническом разложе- нии числа на простые множители, является примитивно рекурсивной (здесь ex( , 0) = 0).

(в) Функция long( ), равная номеру наибольшего простого делителя числа , является примитивно рекурсивной (здесь long(0) = long(1) = 0).

Доказательство. (а) В силу теоремы Чебышёва, утверждающей, что для любого> 1 среди чисел + 1, + 2, . . . , 2 найдётся хотя бы одно простое, заключаем, что

имеет место оценка +1 6 2 .

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]