Generated on Sat Feb 7 2015 02:01:46 for Gecode by doxygen 1.8.9.1
Gecode::Int::Bool::NaryEqv Class Reference

Boolean n-ary equivalence propagator. More...

#include <bool.hh>

Public Member Functions

virtual Actorcopy (Space &home, bool share)
 Copy propagator during cloning. More...
 
virtual PropCost cost (const Space &home, const ModEventDelta &med) const
 Cost function (defined as low binary) More...
 
virtual ExecStatus propagate (Space &home, const ModEventDelta &med)
 Perform propagation. More...
 
virtual size_t dispose (Space &home)
 Delete propagator and return its size. More...
 
- Public Member Functions inherited from Gecode::Propagator
ModEventDelta modeventdelta (void) const
 Return the modification event delta. More...
 
virtual ExecStatus advise (Space &home, Advisor &a, const Delta &d)
 Advise function. More...
 
double afc (const Space &home) const
 Return the accumlated failure count. More...
 
- Public Member Functions inherited from Gecode::Actor

Static Public Member Functions

static ExecStatus post (Home home, ViewArray< BoolView > &x, int pm2)
 Post propagator $ x_0 \Leftrightarrow x_1 \Leftrightarrow \cdots \Leftrightarrow x_{|x|-1}=p$. More...
 
- Static Public Member Functions inherited from Gecode::Actor
static void * operator new (size_t s, Space &home)
 Allocate memory from space. More...
 
static void operator delete (void *p, Space &home)
 No-op for exceptions. More...
 

Protected Member Functions

void resubscribe (Space &home, BoolView &x0)
 Update subscription. More...
 
 NaryEqv (Home home, ViewArray< BoolView > &x, int pm2)
 Constructor for posting. More...
 
 NaryEqv (Space &home, bool share, NaryEqv &p)
 Constructor for cloning p. More...
 
- Protected Member Functions inherited from Gecode::BinaryPropagator< BoolView, PC_BOOL_VAL >
 BinaryPropagator (Space &home, bool share, BinaryPropagator &p)
 Constructor for cloning p. More...
 
 BinaryPropagator (Home home, BoolViewx0, BoolViewx1)
 Constructor for creation. More...
 
 BinaryPropagator (Space &home, bool share, Propagator &p, BoolViewx0, BoolViewx1)
 Constructor for rewriting p during cloning. More...
 
- Protected Member Functions inherited from Gecode::Propagator
 Propagator (Home home)
 Constructor for posting. More...
 
 Propagator (Space &home, bool share, Propagator &p)
 Constructor for cloning p. More...
 
Propagatorfwd (void) const
 Return forwarding pointer during copying. More...
 

Protected Attributes

ViewArray< BoolViewx
 Views not yet subscribed to. More...
 
int pm2
 Parity information mod 2. More...
 
- Protected Attributes inherited from Gecode::BinaryPropagator< BoolView, PC_BOOL_VAL >
BoolView x0
 Two views. More...
 
BoolView x1
 

Detailed Description

Boolean n-ary equivalence propagator.

Enforces that the parity of the views is odd.

Requires

#include <gecode/int/bool.hh>

Definition at line 451 of file bool.hh.

Constructor & Destructor Documentation

Gecode::Int::Bool::NaryEqv::NaryEqv ( Home  home,
ViewArray< BoolView > &  x,
int  pm2 
)
inlineprotected

Constructor for posting.

Definition at line 162 of file eqv.hpp.

Gecode::Int::Bool::NaryEqv::NaryEqv ( Space home,
bool  share,
NaryEqv p 
)
inlineprotected

Constructor for cloning p.

Definition at line 170 of file eqv.hpp.

Member Function Documentation

void Gecode::Int::Bool::NaryEqv::resubscribe ( Space home,
BoolView x0 
)
inlineprotected

Update subscription.

Definition at line 182 of file eqv.hpp.

Actor * Gecode::Int::Bool::NaryEqv::copy ( Space home,
bool  share 
)
virtual

Copy propagator during cloning.

Implements Gecode::Actor.

Definition at line 53 of file eqv.cpp.

PropCost Gecode::Int::Bool::NaryEqv::cost ( const Space home,
const ModEventDelta med 
) const
virtual

Cost function (defined as low binary)

Reimplemented from Gecode::BinaryPropagator< BoolView, PC_BOOL_VAL >.

Definition at line 48 of file eqv.cpp.

ExecStatus Gecode::Int::Bool::NaryEqv::propagate ( Space home,
const ModEventDelta med 
)
virtual

Perform propagation.

Implements Gecode::Propagator.

Definition at line 85 of file eqv.cpp.

ExecStatus Gecode::Int::Bool::NaryEqv::post ( Home  home,
ViewArray< BoolView > &  x,
int  pm2 
)
static

Post propagator $ x_0 \Leftrightarrow x_1 \Leftrightarrow \cdots \Leftrightarrow x_{|x|-1}=p$.

Definition at line 58 of file eqv.cpp.

size_t Gecode::Int::Bool::NaryEqv::dispose ( Space home)
inlinevirtual

Delete propagator and return its size.

Reimplemented from Gecode::BinaryPropagator< BoolView, PC_BOOL_VAL >.

Definition at line 176 of file eqv.hpp.

Member Data Documentation

ViewArray<BoolView> Gecode::Int::Bool::NaryEqv::x
protected

Views not yet subscribed to.

Definition at line 456 of file bool.hh.

int Gecode::Int::Bool::NaryEqv::pm2
protected

Parity information mod 2.

Definition at line 458 of file bool.hh.


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