suivant: Le programme
monter: Un exemple de fonction
précédent: Un exemple de fonction
Table des matières
Index
Voici la définition de la fonction a dite fonction de ackermann
qui est une fonction de
×
dans
:
a(0,y)=y+1,
a(x,0)=a(x-1,1) si x>0,
a(x,y)=a(x-1,a(x,y-1) si x>0 et si y>0.
Ainsi on a :
a(0,0)=1
a(1,0)=a(0,1)=2
a(1,1)=a(0,a(1,0))=a(0,2)=3
a(1,2)=a(0,a(1,1))=4
a(1,n)=a(0,a(1,n-1))=1+a(1,n-1)=...=n+2
a(2,0)=a(1,1)=3
a(2,1)=a(1,a(2,0))=a(1,3)=5
a(2,2)=a(1,a(2,1))=2+a(2,1)=7
a(2,n)=a(1,a(2,n-1))=2+a(2,n-1)=2n+3
a(3,0)=a(2,1)=5
a(3,1)=a(2,a(3,0))=2*a(3,0)+3=13
a(3,2)=a(2,a(3,1))=2*a(3,1)+3=29
a(3,n)=a(2,a(3,n-1))=2*a(3,n-1)+3
*1.5cm=2^
(n+1)+3*(2^
n+2^
(n-1)...+1)
*1.5cm=2^
(n+1)+3*(2^
(n+1)-1)=
2^
(n+3)-3
On a donc par exemple : a(3,5)=2^
8-3=253
Les calculs sont vite gigantesques on a par exemple :
a(4,1)=a(3,a(4,0)=a(3,a(3,1))=a(3,13)=65533
a(4,2)=a(3,a(4,1))=a(3,65533)=2^
65536-3
a(4,3)=a(3,a(4,2))=a(3,2^
65533-3)=2^
(2^
65536-3)-3
On a donc :
a(4,y)=a(3,a(4,y-1))=2^
(a(4,y-1)+3)-3
*1.5cm=2^
(2^
(a(4,y-2)+3)-3+3)-3=2^
(2^
(a(4,y-2)+3))-3
et donc
a(4,y)=2^
(2^
..(2^
(a(4,0)+3))..)-3=
2^
(2^
..(2^
16)..)-3,
avec 2^
qui se répète y fois, et comme
16=2^
(2^
2) on a,
a(4,y)=2^
(2^
..(2^
2)..)-3,
avec 2 qui se répète y + 3 fois.
Documentation de giac écrite par Renée De Graeve