% ==========================================================================
% $Id: roots.pl,v 1.3 2014/01/30 19:27:09 jlang Exp $
% CSI2120 example Code for lecture 4
% ==========================================================================
% (C)opyright:
%
%   Jochen Lang
%   SITE, University of Ottawa
%   800 King Edward Ave.
%   Ottawa, On., K1N 6N5
%   Canada. 
%   http://www.eecs.uottawa.ca/~jlang
% 
% Creator: jlang (Jochen Lang) based on CSI2520 course material
% Email:   jlang@eecs.uottawa.ca
% ==========================================================================
% $Log: roots.pl,v $
% Revision 1.3  2014/01/30 19:27:09  jlang
% Corrected root predicate.
%
% Revision 1.2  2014/01/21 17:07:09  jlang
% Removed extra line feeds
%
% Revision 1.1  2014/01/21 17:05:53  jlang
% Added cut examples for lecture 4
%
% ==========================================================================
int(0).
int(N) :- int(N1), N is N1+1.

root(N,R) :- int(K), K*K>N,!, R is K-1.
