#include <IbexBisector.h>

Public Member Functions | |
| RoundRobin (Space &space, REAL w=Bisector::default_prec, REAL ratio=Bisector::default_ratio) | |
| RoundRobin (const RoundRobin &rr) | |
| virtual RoundRobin * | copy () const |
| virtual void | accept_printer (const OperatorPrinter &p) const |
| Bisection | bisect () |
| Bisection | bisect (int last_var) const |
Public Attributes | |
| const REAL | w |
| ibex::RoundRobin::RoundRobin | ( | Space & | space, | |
| REAL | w = Bisector::default_prec, |
|||
| REAL | ratio = Bisector::default_ratio | |||
| ) | [inline] |
Create a bisector with round-robin heuristic.
| space | - The space, passed by reference. | |
| w | - the minimum width (diameter) an interval must have to be bisected (see w). | |
| ratio | (optional) - the ratio between the diameters of the left and the right parts of the bisected interval. Default value is 0.5, i.e. the interval is bisected at the midpoint. |
| ibex::RoundRobin::RoundRobin | ( | const RoundRobin & | rr | ) | [inline] |
Duplicate this instance (space is passed by reference).
| virtual RoundRobin* ibex::RoundRobin::copy | ( | ) | const [inline, virtual] |
Implement the contractor abstract copy.
Implements ibex::Bisector.
Reimplemented in ibex::SmearFunction.
| virtual void ibex::RoundRobin::accept_printer | ( | const OperatorPrinter & | p | ) | const [inline, virtual] |
| Bisection ibex::RoundRobin::bisect | ( | ) | [inline, virtual] |
Bisect the current box. The result is obtained via getBisection().
Implements ibex::Bisector.
Reimplemented in ibex::SmearFunction.
| Bisection ibex::RoundRobin::bisect | ( | int | last_var | ) | const |
Bisect the box.
| last_var | - the last component that has been bisected (hence, if the domain of the last_var+1 component is wider than w, it will be bisected) or -1 if this is the first call (in this case, the variable examinated first is the first one). In case all the variables have domain diameter less than w, the first variable (0) will be bisected. |
Reimplemented in ibex::SmearFunction.
| const REAL ibex::RoundRobin::w |
Allow to skip variables whose domain is too small in the round-robin heuristic. This parameter usually matches the ceil paramter of the precision contractor since boxes that are too small are usually both not bisected and considered as precise enough.
1.5.5