Hi if i have the next knowladge base
natural(0).
natural(suc(X)):-natural(X).
sum(0,N,N).
sum(suc(N),suc(N),R).
mult(N,1,N).
mult(number,times,result):-mult(number,times-1,partial), sum(partial,number,result).
and i ask the query ? mult(5,3,15).
how does prolog runs this??? first i instanciate number to 5, times to 3, and 5 to result. And after it unificates with the head of the query, how does works with the body of the clause, specially what value would partial take