ตัวอย่าง source code prolog
Rules
sum(N, S) :- sum(N, S, 0, 1).
sum(N, S, Sum, M) :-
M =< N,
M1 is M + 1,
Sum1 is Sum + M,
sum(N, S, Sum1, M1).
sum(_, S, S, _) . %%terminating clause when
****************************************************
Consult
:?-sum(5,X) % 5+4+3+2+1 (fibonacci number)
X=5
Step
sum(5,X):- sum(5,X,0,1).
1=<5,
M1is 1+1
Sum1 is 0+1
sum(5,X):- sum(5,X,1,2).
2=<5,
M1is 2+1
Sum1 is 1+2
sum(5,X):- sum(5,X,3,3).
3=<5,
M1is 3+1
Sum1 is 3+3
sum(5,X):- sum(5,X,6,4).
4=<5,
M1is 4+1
Sum1 is 4+6
sum(5,X):- sum(5,X,10,5).
5=<5,
M1is 5+1
Sum1 is 10+5
sum(5,X):- sum(5,X,15,6).