BuK/IIm10/BuK-Übung10 G1

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

= Primitiv rekursive zahlentheoretische Funktionen =
== Aufgabenstellung ==
Weisen Sie nach, dass die folgenden zahlentheoretischen Funktionen primitiv rekursiv sind. Dabei dürfen Sie bereits auf das Ergebnis der folgenden Aufgabe zurückgreifen.

*Vorgängerfunktion <math>P(n)= \begin{cases}
0 & ,\text{wenn } n=0\\
n-1 & sonst
\end{cases}</math>
*Potenzfunktion <math>pot(x,a)=a^x</math>
*Fakultät <math>fak(n)=n!</math>
*Monus-Operation <math>x-y=\begin{cases}
0 & ,\text{wenn } x \leq y\\
x-y & sonst
\end{cases}</math>
*Abstandsfunktion <math>|x-y|</math>
*Signume-Funktion <math>signum(n)</math>
== Lösung ==
Vorgängerfunktion:

<math>P(0)=C_0^1=0</math>

<math>P(n+1)=P(S(n))=U_1^2(n,P(n))=n</math>

Potenzfunktion:

<math>pot(0,a) = C_1^1=1</math>

<math>pot(S(x),a) = g(x,pot(x,a),a) = mult(U_3^3(x,pot(x,a),a), U_2^3(x,pot(x,a),a))</math>

Fakultät:

<math>fak(0) = C_1^1=1</math>

<math>fak(S(n))= g(n, fak(n)) = mult(U_1^2(n,fak(n)), U_2^2(n,fak(n))</math>

Monus-Operation:

<math>mon(0,x)=U_1^1(x)=x</math>

<math>mon(S(y),x)=U_2^3(y,mon(y,x),x)</math>

Abstandsfunktion:

<math>ab(x,y) = add(U_2^2(mon(y,x),mon(x,y)), U_1^2(mon(y,x),mon(x,y)))</math>