Étudions un exemple,
Tout d'abord, on remarque que est bien une fonction
récursive terminale. Ensuite observons que si l'on invoque
, on obtient la séquence suivante :
Au moment où la condition d'arrêt est vérifiée, le paramètre
contient la valeur
, à savoir
. On se sert de
l'accumulateur pour fabriquer le résultat. Démontrons par
récurrence sur
que
:
On en déduit qu'en posant , on a
On
encapsule
dans le sous-programme
que l'on
redéfinit de la sorte :