update between/3 to allow inf as upper bound

This commit is contained in:
Mark Thom
2020-02-19 15:55:56 -07:00
parent d3da2683cb
commit 617f803355

View File

@@ -6,10 +6,15 @@
:- use_module(library(error)). :- use_module(library(error)).
between(Lower, Upper, X) :- between(Lower, Upper, X) :-
( Upper == inf ->
must_be(integer, Lower), must_be(integer, Lower),
can_be(integer, X),
enumerate_nats(Lower, X)
; must_be(integer, Lower),
must_be(integer, Upper), must_be(integer, Upper),
can_be(integer, X), can_be(integer, X),
between_(Lower, Upper, X). between_(Lower, Upper, X)
).
between_(Lower, Upper, Lower) :- between_(Lower, Upper, Lower) :-
Lower =< Upper. Lower =< Upper.