На этом шаге мы рассмотрим производные операции над функциями.
Кроме операции подстановки и примитивной рекурсии, которые являются основными, используются и другие операции, которые сохраняют свойства примитивной рекурсивности функций, их называют производными и они получаются из основных операций и базы элементарных функций.
Пусть задана совокупность функций Ψ = {Ψ1, Ψ2, ..., Ψn} и в результате некоторой операции над этими функциями получена функция φ = F(Ψ1, Ψ2, ..., Ψn).
Определение. Операция F называется примитивно рекурсивной операцией, если из равенства φ = F(Ψ1, Ψ2, ..., Ψn) следует, что функция φ есть ПРФ относительно совокупности Ψ.
Рассмотрим несколько примеров.
1. Пусть задана некоторая функция g(x,y) и функция φ(x,y,z) = g(x,y).
В этом случае говорят, что функция φ получена из функции g с помощью операции введения фиктивной переменной, именно, введением фиктивной переменной z. При этом функция φ(x,y,z) является ПРФ относительно совокупности {g}. Действительно, φ можно представить следующим образом:
φ(x,y,z) = g(I13(x,y,z), I23(x,y,z)).
Как видим, функция φ получена из функции g и I13, I23 операцией подстановки, т.е. φ = S(g, I13, I23).
2. Пусть задана функция g(x,y,z) и если φ(x,y) = g(x,y,a), то говорят, что функция Ψ получена из функции g с помощью операции замены константы.
Действительно φ(x,y) можно представить следующим образом:
и называется она операцией замены константы.
3. Пусть задана функция g(x,y) и φ(x,y) = g(y,x), то говорят, что функция φ получена из функции g с применением операции перестановки переменных. Действительно, функцию φ(x,y) можно представить следующим образом:
=
4. Пусть дана функция g(x) и φ(x) = g(x,x), то говорят, что функция φ получена из функции g с помощью операции отождествленной переменной. Действительно, функцию φ можно представить следующим образом:
т.е.
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}.
Покажем, что данная операция справедлива. Функцию φ можно представить следующим образом:
Введем следующие обозначения:
Как видим, функции h1*, h2* получены из функций h1, h2 соответственно операцией введения фиктивных переменных. Поэтому h1* является ПРФ относительно совокупности {h1} и h2* - ПРФ относительно совокупности {h2}. Очевидно, h3* - ПРФ относительно совокупности {h3}. Тогда функция φ приобретает вид:
Следовательно, она ПРФ относительно совокупности {g, h1*, h2*, h3*}. Учитывая свойство 1 относительно примитивной рекурсивности, получаем, что функция φ - ПРФ относительно совокупности {g, h1, h2, h3}.
На следующем шаге мы рассмотрим операции конечного суммирования и конечного произведения.