factorial(0, 1) :- !. factorial(N,X) :- M is N - 1, factorial(M, Y), X is N * Y.