ibex::Constraint Class Reference
[Constraints]

Root class of all constraint expressions. More...

#include <IbexConstraint.h>

Inheritance diagram for ibex::Constraint:

ibex::ArithConstraint ibex::AtMostNVector ibex::NotIn ibex::Equality ibex::Inequality

List of all members.

Public Member Functions

virtual void forward (const Space &space) const =0
virtual void backward (Space &space) const =0
virtual ~Constraint ()
virtual void accept_printer (const OperatorPrinter &p) const =0
virtual bool is_equality () const =0
Envget_env () const
int get_env_num () const
const char * get_name () const

Public Attributes

hash_map< int, int > adj


Detailed Description

Root class of all constraint expressions.

Constraint example : sin(x+y)^2 >= z-1.

Author:
Gilles Chabert
Date:
December 2008
last update : 12 Sept 09

Constructor & Destructor Documentation

virtual ibex::Constraint::~Constraint (  )  [inline, virtual]

Delete this instance.


Member Function Documentation

virtual void ibex::Constraint::forward ( const Space space  )  const [pure virtual]

Forward evaluation.

Implemented in ibex::ArithConstraint, ibex::NotIn, and ibex::AtMostNVector.

virtual void ibex::Constraint::backward ( Space space  )  const [pure virtual]

virtual void ibex::Constraint::accept_printer ( const OperatorPrinter &  p  )  const [pure virtual]

Return a string representation of the constraint.

Implemented in ibex::Equality, ibex::Inequality, ibex::NotIn, and ibex::AtMostNVector.

virtual bool ibex::Constraint::is_equality (  )  const [pure virtual]

Return true if the constraint is an equality.

Implemented in ibex::ArithConstraint, ibex::Equality, ibex::Inequality, ibex::NotIn, and ibex::AtMostNVector.

Env& ibex::Constraint::get_env (  )  const [inline]

Return the environment of the constraint.

Precondition:
must belong to an environment.
See also:
ibex::Env::add_ctr(const Constraint& c, const char* name).

int ibex::Constraint::get_env_num (  )  const [inline]

Return the constraint number in its environment, -1 if the constraint does not belong to any environment.

See also:
ibex::Env::add_ctr(const Constraint& c, const char* name).

const char* ibex::Constraint::get_name (  )  const [inline]

Return the name of the constraint in its environment, NULL if the constraint does not belong to any environment.


Member Data Documentation

hash_map<int,int> ibex::Constraint::adj

Adjacency of the constraint. adj[x] equals n if variable whose key is x appears n times in the expression of the constraint. (n>1 means that the variable is multi-incident).


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