From 2dce50fbd5ef72bbcd51533cf04f8722f8139d6a Mon Sep 17 00:00:00 2001 From: Peter Mikkelsen Date: Thu, 8 Jul 2021 00:49:34 +0000 Subject: Add arithmetic comparison predicates --- stdlib.pl | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'stdlib.pl') diff --git a/stdlib.pl b/stdlib.pl index 596aff6..b36a851 100644 --- a/stdlib.pl +++ b/stdlib.pl @@ -129,3 +129,24 @@ write_canonical(Term) :- write_canonical(S, Term) :- write_term(S, Term, [quoted(true), ignore_ops(true)]). +% Arithmetic comparisons defined in terms of >=. This is not the most effective way, +% but it is fine for now. + +E1 =:= E2 :- + E1 >= E2, + E2 >= E1. + +E1 =\= E2 :- + \+ E1 =:= E2. + +E1 < E2 :- + E2 >= E1, + E1 =\= E2. + +E1 =< E2 :- + E2 >= E1. + +E1 > E2 :- + E2 < E1. + + -- cgit v1.2.3