Generated on Thu Apr 11 13:59:59 2019 for Gecode by doxygen 1.6.3

Gecode::Int::Circuit::Dom< View, Offset > Class Template Reference
[Integer propagators]

"Domain consistent" circuit propagator More...

#include <circuit.hh>

List of all members.

Public Member Functions

virtual Actorcopy (Space &home)
 Copy propagator during cloning.
virtual PropCost cost (const Space &home, const ModEventDelta &med) const
 Cost function.
virtual void reschedule (Space &home)
 Schedule function.
virtual ExecStatus propagate (Space &home, const ModEventDelta &med)
 Perform propagation.

Static Public Member Functions

static ExecStatus post (Home home, ViewArray< View > &x, Offset &o)
 Post propagator for circuit on x.

Protected Member Functions

 Dom (Space &home, Dom &p)
 Constructor for cloning p.
 Dom (Home home, ViewArray< View > &x, Offset &o)
 Constructor for posting.

Protected Attributes

Int::Distinct::DomCtrl< View > dc
 Propagation controller for propagating distinct.

Detailed Description

template<class View, class Offset>
class Gecode::Int::Circuit::Dom< View, Offset >

"Domain consistent" circuit propagator

Propagates domain consistent distinct, checks that the induced variable value graph is stronlgy connected, and prunes too shot cycles.

Requires

Definition at line 121 of file circuit.hh.


Constructor & Destructor Documentation

template<class View, class Offset>
Gecode::Int::Circuit::Dom< View, Offset >::Dom ( Space home,
Dom< View, Offset > &  p 
) [protected]

Constructor for cloning p.

template<class View , class Offset >
Gecode::Int::Circuit::Dom< View, Offset >::Dom ( Home  home,
ViewArray< View > &  x,
Offset o 
) [inline, protected]

Constructor for posting.

Definition at line 42 of file dom.hpp.


Member Function Documentation

template<class View , class Offset >
Actor * Gecode::Int::Circuit::Dom< View, Offset >::copy ( Space home  )  [inline, virtual]

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 52 of file dom.hpp.

template<class View , class Offset >
PropCost Gecode::Int::Circuit::Dom< View, Offset >::cost ( const Space home,
const ModEventDelta med 
) const [inline, virtual]

Cost function.

If in stage for naive value propagation, the cost is low linear. Otherwise it is high quadratic.

Reimplemented from Gecode::NaryPropagator< View, Int::PC_INT_DOM >.

Definition at line 58 of file dom.hpp.

template<class View , class Offset >
void Gecode::Int::Circuit::Dom< View, Offset >::reschedule ( Space home  )  [inline, virtual]

Schedule function.

Reimplemented from Gecode::NaryPropagator< View, Int::PC_INT_DOM >.

Definition at line 67 of file dom.hpp.

template<class View , class Offset >
ExecStatus Gecode::Int::Circuit::Dom< View, Offset >::propagate ( Space home,
const ModEventDelta med 
) [inline, virtual]

Perform propagation.

Implements Gecode::Propagator.

Definition at line 78 of file dom.hpp.

template<class View , class Offset >
ExecStatus Gecode::Int::Circuit::Dom< View, Offset >::post ( Home  home,
ViewArray< View > &  x,
Offset o 
) [inline, static]

Post propagator for circuit on x.

Definition at line 114 of file dom.hpp.


Member Data Documentation

template<class View, class Offset>
Int::Distinct::DomCtrl<View> Gecode::Int::Circuit::Dom< View, Offset >::dc [protected]

Propagation controller for propagating distinct.

Definition at line 129 of file circuit.hh.


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