Arithmétique de Péano
On code les entiers naturels à l'aide des entiers de Péano :
- la constante 0 et de
- la fonction unaire s.
Par exemple, 3 est codé s(s(s(0))).
Proposer et discuter, suivant l'instanciation des arguments,
les différentes définitions sous forme de clauses de Horn définies (i.e. en Prolog pur)
des relations suivantes :
inf(X,Y) | ssi | X<Y |
infe(X,Y) | ssi | X≤Y |
add(X,Y,Z) | ssi | Z=X+Y |
mul(X,Y,Z) | ssi | Z=X*Y |
exp(X,Y,Z) | ssi | Z=X^Y |
max(X,Y,Z) | ssi | Z=max(X,Y) |
div(A,B,Q,R) | ssi | A=B*Q+R et 0≤R<B |
pgcd(X,Y,Z) | ssi | Z=pgcd(X,Y) |
fact(X,Y) | ssi | Y=X! |
premier(X) | ssi | X est premier |
Reprendre tout l'exercice, cette fois en utilisant les nombres prédéfinis de Prolog. Comparer.
Fred Mesnard