% divideQR(+Num, +Denom, -Quot, -Rem)
% Num,Denom,Quot,Rem are Peano numbers
% Quot is the result of Integer division of Num/Denom
% Rem is the remainder (modulus) of Integer division of Num/Denom
% In other words: Num = Denom * Quot + Rem,
% where 0 <= Rem < Denom
minus(X,0,X).
minus(s(X),s(Y),Z):-
minus(X,Y,Z).
divideQR(X,0,X,0).
divideQR(X,X,1,0).
divideQR(X,Y,Quot,Rem):-
Rem2 is X mod Y,
Quot2 is floor(X/Y),
divideQR(X,Y,Quot2,Rem2).
divideQR(s(X),s(Y),Quot,Rem):-
divideQR(X,Y,Quot,Rem),
Rem is X mod Y,
minus(X,Y,Quot).