1 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
3 %% simple constraint solver for inequalities between variables
4 %% thom fruehwirth ECRC 950519, LMU 980207, 980311
6 %% ported to hProlog by Tom Schrijvers
8 :- module(leq,[main/0,main/1]).
11 reflexivity @ leq(X,X) <=> true.
12 antisymmetry @ leq(X,Y), leq(Y,X) <=> X = Y.
13 idempotence @ leq(X,Y) \ leq(X,Y) <=> true.
14 transitivity @ leq(X,Y), leq(Y,Z) ==> leq(X,Z).
27 write(bench(leq ,N,Time,0,hprolog)), write('.'),nl.
29 genleq([Last],Last) :- ! .
30 genleq([X,Y|Xs],Last):-