%
% basic.prolog
%
% Developed by Ondrej Jombik <nepto@platon.sk>
% Copyright (c) 2005 Platon SDG, http://platon.sk/
% Licensed under terms of GNU General Public License.
% All rights reserved.
%
% Changelog:
% 2005-05-02 - created
%
% $Platon$
my_plus(0,Z,Z).
my_plus(s(U),Y,s(W)):-my_plus(U,Y,W).
my_times(0,_,0).
my_times(s(X),Y,Z):-my_times(X,Y,W),my_plus(W,Y,Z).
my_div2(0,0).
my_div2(s(0),0).
my_div2(s(s(X)),s(Y)):-my_div2(X,Y).
my_fact(0,s(0)).
my_fact(s(N), S1):-my_fact(N,S),my_times(S,s(N),S1).
my_less(0,s(_)).
my_less(s(A),s(B)):-my_less(A,B).
my_eq(0,0).
my_eq(s(A),s(B)):-my_eq(A,B).
my_min(A,B,A):-my_less(A,B).
my_min(A,B,B):-my_less(B,A).
my_min(A,B,A):-my_eq(A,B).
% my_mod(X,Y,Z);-my_less(Z,Y),my_plus(W,Z,X),my_times(Y,Q,W).
my_mod(X,Y,X):-my_less(X,Y).
my_mod(X,Y,Z):-my_plus(X1,Y,X),my_mod(X1,Y,Z).
my_gcd(X,Y,Gcd):-my_mod(X,Y,Z),my_gcd(Y,Z,Gcd).
my_gcd(X,0,X):-my_less(0,X).
% my_int(X):-nat(X).
% my_int(m(s(X))):-nat(X).
% ll(A,B):-[A|B].
Platon Group <platon@platon.sk> http://platon.sk/
|