ibex::Box Class Reference
[Contractors]

Box consistency contractor. More...

#include <IbexBox.h>

Inheritance diagram for ibex::Box:

ibex::Propagation ibex::Contractor ibex::Operator

List of all members.

Public Member Functions

 Box (const System &sys, REAL propag_ratio=default_ratio, REAL narrow_ratio=BoxNarrow::default_var_ratio, bool incremental=false)
 Box (const Box &b)
virtual Boxcopy () const
virtual void accept_printer (const OperatorPrinter &p) const


Detailed Description

Box consistency contractor.

The Box consistency (BC) is the well-known consistency defined by Van Hentenryck and al.

Author:
Gilles Chabert
Date:
June 2007

Constructor & Destructor Documentation

ibex::Box::Box ( const System sys,
REAL  propag_ratio = default_ratio,
REAL  narrow_ratio = BoxNarrow::default_var_ratio,
bool  incremental = false 
)

Create a box consistency contractor.

Parameters:
sys - The system to build this contractor with.
propag_ratio (optional) - Criterion for stopping propagation. If a projection does not remove more that ratio times the diameter of a variable domain, then this reduction is not propagated. The default value is default_ratio.
narrow_ratio - Minimum width of a slice in the narrow procedure (see ibex::BoxNarrow) (the slice width must not be greater that var_ratio times the initial diameter of the domain). Default value is ibex::BoxNarrow::default_var_ratio.
incremental (optional) - This parameter is only used when contraction is called with a Indicators structure. If set to true, only the pairs (var,ctr) where var is the impacted variable are pushed in the queue. If set to false, all the pairs are pushed in the queue. Default value is false.
See also:
ibex::Contractor::contract(Cell&, const Indicators&) ibex::Contractor::contract(Space&, const Indicators&) ibex::Contractor::contract(const Indicators&)

ibex::Box::Box ( const Box b  )  [inline]

Duplicate this instance.


Member Function Documentation

virtual Box* ibex::Box::copy (  )  const [inline, virtual]

Implement the contractor abstract copy.

Reimplemented from ibex::Propagation.

virtual void ibex::Box::accept_printer ( const OperatorPrinter &  p  )  const [inline, virtual]

Accept the pretty printer.

Reimplemented from ibex::Propagation.


The documentation for this class was generated from the following files:

Generated on Sun Jun 27 15:52:00 2010 for IBEX by  doxygen 1.5.5