[ Arithmetic | The ECLiPSe Built-In Predicates | Reference Manual | Alphabetic Index ]
breal_max(+Number, ?Result)
Extracts the upper floating point bound of the bounded real Number
- Number
- A bounded real number.
- Result
- A variable or float.
Description
This predicate is used by the ECLiPSe compiler to expand evaluable
arithmetic expressions. So a call to breal_max(Number, Result) is
equivalent to
Result is breal_max(Number).
A bounded real is a real number represented by a lower and upper
bound in floating point format. This predicate extracts the upper
bound and unifies it with Result.
Fail Conditions
Fails if the result of the evaluation does not unify with Result.
Resatisfiable
No
Exceptions
- (4) instantiation fault
- Number is not instantiated
- (5) type error
- Number is a not a bounded real number.
- (5) type error
- Result is neither a variable nor a float.
Examples
Success:
?- breal_max(0.99__1.01, X).
X = 1.01
Error:
?- breal_max(1, Z).
type error in breal_max(1, Z)
?- breal_max(1.0, Z).
type error in breal_max(1.0, Z)
?- breal_max("a", Z).
type error in breal_max("a", Z)
?- breal_max(2 + 4, Z).
type error in breal_max(2 + 4, Z)
See Also
breal_min / 2, breal / 1, breal / 2, breal_bounds / 3, breal_from_bounds / 3, is / 2