FconvexBool::FconvexBoolGq< VA, VC > Class Template Reference

Base-class for convex function boolean propagators. More...

Inheritance diagram for FconvexBool::FconvexBoolGq< VA, VC >:
Propagator FconvexBool::FconvexBoolLq< VA, VC > FconvexBool::ImplyFconvexBoolGq< VA, VC > FconvexBool::ReifiedFconvexBoolGq< VA, VC >

List of all members.

Public Member Functions

virtual PropCost cost (const Space &home, const ModEventDelta &med) const
 Cost function (defined as low linear).
virtual size_t dispose (Space &home)
 Delete propagator and return its size.
virtual Actor * copy (Space &home, bool share)
 Create copy during cloning.
virtual ExecStatus propagate (Space &home, const ModEventDelta &med)
 Perform propagation.
void eliminate (ViewArray< VA > &v, int &l, int &u)
 Eliminate assigned vars and update bounds.

Static Public Member Functions

static ExecStatus post (Space &home, int X, ViewArray< VA > &x, int l_x, int Y, ViewArray< VA > &y, int l_y, VC c, int precision)
 Post propagator but.

Protected Member Functions

 FconvexBoolGq (Space &home, int X, ViewArray< VA > &x, int l_x, int Y, ViewArray< VA > &y, int l_y, VC c, int precision)
 Constructor for creation.
 FconvexBoolGq (Space &home, bool share, FconvexBoolGq &p)
 Constructor for cloning p.

Protected Attributes

int X
 total class 1
ViewArray< VA > x
 Boolean views class 1.
int l_x
 lower bound class 1 (part from class1 views assigned to 1)
int Y
 total class 2
ViewArray< VA > y
 Boolean views class y.
int l_y
 lower bound class 2 (part from class2 views assigned to 1)
VC c
 Righthandside, the treshold.
int precision
 Precision of treshold-integer conversion (eg. 1000).

Detailed Description

template<class VA, class VC>
class FconvexBool::FconvexBoolGq< VA, VC >

Base-class for convex function boolean propagators.

This class NEEDS a global function: convex_function(int pos_total, int pos, int neg_total, int neg, int precision)

Definition at line 50 of file constraint_Fconvex.cpp.


Constructor & Destructor Documentation

template<class VA , class VC >
FconvexBool::FconvexBoolGq< VA, VC >::FconvexBoolGq ( Space &  home,
int  X,
ViewArray< VA > &  x,
int  l_x,
int  Y,
ViewArray< VA > &  y,
int  l_y,
VC  c,
int  precision 
) [inline, protected]
template<class VA , class VC >
forceinline FconvexBool::FconvexBoolGq< VA, VC >::FconvexBoolGq ( Space &  home,
bool  share,
FconvexBoolGq< VA, VC > &  p 
) [inline, protected]

Member Function Documentation

template<class VA , class VC >
Actor * FconvexBool::FconvexBoolGq< VA, VC >::copy ( Space &  home,
bool  share 
) [inline, virtual]
template<class VA , class VC >
PropCost FconvexBool::FconvexBoolGq< VA, VC >::cost ( const Space &  home,
const ModEventDelta &  med 
) const [inline, virtual]

Cost function (defined as low linear).

Definition at line 124 of file constraint_Fconvex.cpp.

References FconvexBool::FconvexBoolGq< VA, VC >::x.

template<class VA , class VC >
forceinline size_t FconvexBool::FconvexBoolGq< VA, VC >::dispose ( Space &  home  )  [inline, virtual]
template<class VA , class VC >
void FconvexBool::FconvexBoolGq< VA, VC >::eliminate ( ViewArray< VA > &  v,
int &  l,
int &  u 
) [inline]
template<class VA , class VC >
ExecStatus FconvexBool::FconvexBoolGq< VA, VC >::post ( Space &  home,
int  X,
ViewArray< VA > &  x,
int  l_x,
int  Y,
ViewArray< VA > &  y,
int  l_y,
VC  c,
int  precision 
) [inline, static]

Post propagator but.

Reimplemented in FconvexBool::FconvexBoolLq< VA, VC >.

Definition at line 130 of file constraint_Fconvex.cpp.

template<class VA , class VC >
ExecStatus FconvexBool::FconvexBoolGq< VA, VC >::propagate ( Space &  home,
const ModEventDelta &  med 
) [inline, virtual]

Member Data Documentation

template<class VA, class VC>
VC FconvexBool::FconvexBoolGq< VA, VC >::c [protected]
template<class VA, class VC>
int FconvexBool::FconvexBoolGq< VA, VC >::l_x [protected]
template<class VA, class VC>
int FconvexBool::FconvexBoolGq< VA, VC >::l_y [protected]
template<class VA, class VC>
int FconvexBool::FconvexBoolGq< VA, VC >::precision [protected]
template<class VA, class VC>
ViewArray<VA> FconvexBool::FconvexBoolGq< VA, VC >::x [protected]
template<class VA, class VC>
int FconvexBool::FconvexBoolGq< VA, VC >::X [protected]
template<class VA, class VC>
ViewArray<VA> FconvexBool::FconvexBoolGq< VA, VC >::y [protected]
template<class VA, class VC>
int FconvexBool::FconvexBoolGq< VA, VC >::Y [protected]

The documentation for this class was generated from the following file:
Generated on Sat Nov 12 12:59:31 2011 for FIM_CP+CIMCP by  doxygen 1.6.3