### 2.2.2 The Reference of the Implemented Real-Interval Constraint Solver

The module RI is provided as contribution (being part of the Mozart Oz 3 distribution1) and can be accessed either by

declare [RI] = {Module.link ['x-oz://contrib/RI']}

or by

import RI at 'x-oz://contrib/RI'

as part of a functor definition.

RI.inf

An implementation-dependent float value that denotes the smallest possible float number. It is .

RI.sup

An implementation-dependent float value that denotes the smallest possible float number. It is .

{RI.setPrec +F}

Sets the precision of the real-interval constraints to F.

{RI.getLowerBound +RI ?F}

Returns the lower bound of RI in F.

{RI.getUpperBound +RI ?F}

Returns the upper bound of RI in F.

{RI.getWidth +RI ?F}

Returns the width of RI in F.

{RI.var.decl ?RI}

Constrains RI to a real-interval constraint with the lower bound to be RI.inf and the upper bound to be RI.sup.

{RI.var.bounds +L +U ?RI}

Constrains RI to a real-interval constraint with the lower bound to be L and the upper bound to be U.

{RI.lessEq $X $Y}

Imposes the constraint X Y.

{RI.greater $X $Y}

Imposes the constraint X Y.

{RI.intBounds $RI $D}

Imposes the constraint .

{RI.times $X $Y $Z} Imposes the constraint X Y Z. {RI.plus $X $Y $Z}

Imposes the constraint X + Y Z.

{RI.distribute *RI}

Creates a choice-point for and where .

1. The module RI is not provided on any Windows platform.

Tobias Müller
Version 1.4.0 (20080702)