- #<(+X:integer, +Y:integer, +Cond:boolean) is semidet
- #<(+X:integer, +Y:integer, -Cond:boolean) is det
- #<(+X:integer, -Y:integer, +Cond:boolean) is det
- #<(+X:integer, -Y:integer, -Cond:boolean) is multi
- #<(-X:integer, +Y:integer, +Cond:boolean) is det
- #<(-X:integer, +Y:integer, -Cond:boolean) is multi
- #<(-X:integer, -Y:integer, +Cond:boolean) is det
- #<(-X:integer, -Y:integer, -Cond:boolean) is multi
- True whenever 1) X is strictly less than Y and Cond is true, or 2) whenever
X is greater than or equal to Y and Cond is false. Intended to have zero unnecessary
choice points.
- #>(+X:integer, +Y:integer, +Cond:boolean) is semidet
- #>(+X:integer, +Y:integer, -Cond:boolean) is det
- #>(+X:integer, -Y:integer, +Cond:boolean) is det
- #>(+X:integer, -Y:integer, -Cond:boolean) is multi
- #>(-X:integer, +Y:integer, +Cond:boolean) is det
- #>(-X:integer, +Y:integer, -Cond:boolean) is multi
- #>(-X:integer, -Y:integer, +Cond:boolean) is det
- #>(-X:integer, -Y:integer, -Cond:boolean) is multi
- True whenever 1) X is strictly greater than Y and Cond is true, or 2) whenever
X is less than or equal to Y and Cond is false. Intended to have zero unnecessary
choice points.
- #=<(+X:integer, +Y:integer, +Cond:boolean) is semidet
- #=<(+X:integer, +Y:integer, -Cond:boolean) is det
- #=<(+X:integer, -Y:integer, +Cond:boolean) is det
- #=<(+X:integer, -Y:integer, -Cond:boolean) is multi
- #=<(-X:integer, +Y:integer, +Cond:boolean) is det
- #=<(-X:integer, +Y:integer, -Cond:boolean) is multi
- #=<(-X:integer, -Y:integer, +Cond:boolean) is det
- #=<(-X:integer, -Y:integer, -Cond:boolean) is multi
- True whenever 1) X is less than or equal to Y and Cond is true, or 2) whenever
X is strictly greater than Y and Cond is false. Intended to have zero unnecessary
choice points.
- #>=(+X:integer, +Y:integer, +Cond:boolean) is semidet
- #>=(+X:integer, +Y:integer, -Cond:boolean) is det
- #>=(+X:integer, -Y:integer, +Cond:boolean) is det
- #>=(+X:integer, -Y:integer, -Cond:boolean) is multi
- #>=(-X:integer, +Y:integer, +Cond:boolean) is det
- #>=(-X:integer, +Y:integer, -Cond:boolean) is multi
- #>=(-X:integer, -Y:integer, +Cond:boolean) is det
- #>=(-X:integer, -Y:integer, -Cond:boolean) is multi
- True whenever 1) X is greater than or equal to Y and Cond is true, or 2) whenever
X is strictly less than Y and Cond is false. Intended to have zero unnecessary
choice points.
- ==(+X, +Y, +Cond:boolean) is semidet
- ==(+X, +Y, -Cond:boolean) is det
- ==(+X, -Y, +Cond:boolean) is semidet
- ==(+X, -Y, -Cond:boolean) is det
- ==(-X, +Y, +Cond:boolean) is semidet
- ==(-X, +Y, -Cond:boolean) is det
- ==(-X, -Y, +Cond:boolean) is semidet
- ==(-X, -Y, -Cond:boolean) is det
- Impure reified term (dis)equivalence: this predicate is true whenever 1) X == Y and Cond
is true or 2) X \== Y and Cond is false. All modes are supported; intended to have zero
unnecessary choice points. This predicate is not steadfast:
==(X, Y, false), X = a, Y = a
is true with solution X = a, Y = a
but ==(a, a, false)
is false.
- \==(+X, +Y, +Cond:boolean) is semidet
- \==(+X, +Y, -Cond:boolean) is det
- \==(+X, -Y, +Cond:boolean) is semidet
- \==(+X, -Y, -Cond:boolean) is det
- \==(-X, +Y, +Cond:boolean) is semidet
- \==(-X, +Y, -Cond:boolean) is det
- \==(-X, -Y, +Cond:boolean) is semidet
- \==(-X, -Y, -Cond:boolean) is det
- Impure reified term (dis)equivalence: this predicate is true whenever 1) X \== Y and Cond
is true or 2) X == Y and Cond is false. All modes are supported; intended to have zero
unnecessary choice points. This predicate is not steadfast:
\==(X, Y, true), X = a, Y = a
is true with solution X = a, Y = a
but \==(a, a, true)
is false.
- @<(+X, +Y, +Cond:boolean) is semidet
- @<(+X, +Y, -Cond:boolean) is det
- @<(+X, -Y, +Cond:boolean) is semidet
- @<(+X, -Y, -Cond:boolean) is det
- @<(-X, +Y, +Cond:boolean) is semidet
- @<(-X, +Y, -Cond:boolean) is det
- @<(-X, -Y, +Cond:boolean) is semidet
- @<(-X, -Y, -Cond:boolean) is det
- Impure reified term comparison: this predicate is true whenever 1) X @< Y and Cond is true or
2) X @>= Y and Cond is false. All modes are supported; intended to have zero unnecessary
choice points. This predicate is not steadfast:
@<(X, Y, true), X = b, Y = a
is true
with solution X = b, Y = a
but @<(b, a, true)
is false.
- @=<(+X, +Y, +Cond:boolean) is semidet
- @=<(+X, +Y, -Cond:boolean) is det
- @=<(+X, -Y, +Cond:boolean) is semidet
- @=<(+X, -Y, -Cond:boolean) is det
- @=<(-X, +Y, +Cond:boolean) is semidet
- @=<(-X, +Y, -Cond:boolean) is det
- @=<(-X, -Y, +Cond:boolean) is semidet
- @=<(-X, -Y, -Cond:boolean) is det
- Impure reified term comparison: this predicate is true whenever 1) X @=< Y and Cond is true or
2) X @> Y and Cond is false. All modes are supported; intended to have zero unnecessary
choice points. This predicate is not steadfast:
@=<(X, Y, true), X = b, Y = a
is true
with solution X = b, Y = a
but @=<(b, a, true)
is false.
- @>(+X, +Y, +Cond:boolean) is semidet
- @>(+X, +Y, -Cond:boolean) is det
- @>(+X, -Y, +Cond:boolean) is semidet
- @>(+X, -Y, -Cond:boolean) is det
- @>(-X, +Y, +Cond:boolean) is semidet
- @>(-X, +Y, -Cond:boolean) is det
- @>(-X, -Y, +Cond:boolean) is semidet
- @>(-X, -Y, -Cond:boolean) is det
- Impure reified term comparison: this predicate is true whenever 1) X @> Y and Cond is true or
2) X @=< Y and Cond is false. All modes are supported; intended to have zero unnecessary
choice points. This predicate is not steadfast:
@>(X, Y, false), X = b, Y = a
is true
with solution X = b, Y = a
but @>(b, a, false)
is false.
- @>=(+X, +Y, +Cond:boolean) is semidet
- @>=(+X, +Y, -Cond:boolean) is det
- @>=(+X, -Y, +Cond:boolean) is semidet
- @>=(+X, -Y, -Cond:boolean) is det
- @>=(-X, +Y, +Cond:boolean) is semidet
- @>=(-X, +Y, -Cond:boolean) is det
- @>=(-X, -Y, +Cond:boolean) is semidet
- @>=(-X, -Y, -Cond:boolean) is det
- Impure reified term comparison: this predicate is true whenever 1) X @>= Y and Cond is true or
2) X @< Y and Cond is false. All modes are supported; intended to have zero unnecessary
choice points. This predicate is not steadfast:
@>=(X, Y, false), X = b, Y = a
is true
with solution X = b, Y = a
but @>=(b, a, false)
is false.
- $<(+X, +Y, +Cond:boolean) is semidet
- $<(+X, +Y, -Cond:boolean) is det
- $<(+X, -Y, +Cond:boolean) is det
- $<(+X, -Y, -Cond:boolean) is det
- $<(-X, +Y, +Cond:boolean) is det
- $<(-X, +Y, -Cond:boolean) is det
- $<(-X, -Y, +Cond:boolean) is det
- $<(-X, -Y, -Cond:boolean) is det
- Pure reified term comparison: this predicate is true whenever 1) X @< Y upon sufficient
instantiation of both variables and Cond is true or 2) X @>= Y upon sufficient instantiation
of both variables and Cond is false. All modes are supported; intended to have zero unnecessary
choice points. This predicate guarantees referential transparency by delaying evaluation where
necessary.
- $=<(+X, +Y, +Cond:boolean) is semidet
- $=<(+X, +Y, -Cond:boolean) is det
- $=<(+X, -Y, +Cond:boolean) is det
- $=<(+X, -Y, -Cond:boolean) is det
- $=<(-X, +Y, +Cond:boolean) is det
- $=<(-X, +Y, -Cond:boolean) is det
- $=<(-X, -Y, +Cond:boolean) is det
- $=<(-X, -Y, -Cond:boolean) is det
- Pure reified term comparison: this predicate is true whenever 1) X @=< Y upon sufficient
instantiation of both variables and Cond is true or 2) X @> Y upon sufficient instantiation
of both variables and Cond is false. All modes are supported; intended to have zero unnecessary
choice points. This predicate guarantees referential transparency by delaying evaluation where
necessary.
- $>(+X, +Y, +Cond:boolean) is semidet
- $>(+X, +Y, -Cond:boolean) is det
- $>(+X, -Y, +Cond:boolean) is det
- $>(+X, -Y, -Cond:boolean) is det
- $>(-X, +Y, +Cond:boolean) is det
- $>(-X, +Y, -Cond:boolean) is det
- $>(-X, -Y, +Cond:boolean) is det
- $>(-X, -Y, -Cond:boolean) is det
- Pure reified term comparison: this predicate is true whenever 1) X @> Y upon sufficient
instantiation of both variables and Cond is true or 2) X @=< Y upon sufficient instantiation
of both variables and Cond is false. All modes are supported; intended to have zero unnecessary
choice points. This predicate guarantees referential transparency by delaying evaluation where
necessary.
- $>=(+X, +Y, +Cond:boolean) is semidet
- $>=(+X, +Y, -Cond:boolean) is det
- $>=(+X, -Y, +Cond:boolean) is det
- $>=(+X, -Y, -Cond:boolean) is det
- $>=(-X, +Y, +Cond:boolean) is det
- $>=(-X, +Y, -Cond:boolean) is det
- $>=(-X, -Y, +Cond:boolean) is det
- $>=(-X, -Y, -Cond:boolean) is det
- Pure reified term comparison: this predicate is true whenever 1) X @>= Y upon sufficient
instantiation of both variables and Cond is true or 2) X @< Y upon sufficient instantiation
of both variables and Cond is false. All modes are supported; intended to have zero unnecessary
choice points. This predicate guarantees referential transparency by delaying evaluation where
necessary.