40#ifndef __GECODE_SET_BRANCH_HH__
41#define __GECODE_SET_BRANCH_HH__
50namespace Gecode {
namespace Set {
namespace Branch {
201namespace Gecode {
namespace Set {
namespace Branch {
205 ViewSel<SetView>*
viewsel(Space& home,
const SetVarBranch& svb);
209namespace Gecode {
namespace Set {
namespace Branch {
298namespace Gecode {
namespace Set {
namespace Branch {
340namespace Gecode {
namespace Set {
namespace Branch {
372 std::ostream& o)
const;
393 std::ostream& o)
const;
400namespace Gecode {
namespace Set {
namespace Branch {
404 ValSelCommitBase<SetView,int>*
409 ValSelCommitBase<SetView,int>*
int n
Number of negative literals for node type.
struct Gecode::@603::NNF::@65::@67 a
For atomic nodes.
Class for AFC (accumulated failure count) management.
Class for action management.
Class for CHB management.
Base-class for merit class.
No-good literal recorded during search.
Status
The status of a no-good literal.
No-good literal for exclusion.
virtual NGL::Status status(const Space &home) const
Test the status of the no-good literal.
virtual NGL * copy(Space &home)
Create copy.
ExcNGL(Space &home, SetView x, int n)
Constructor for creation.
virtual ExecStatus prune(Space &home)
Propagate the negation of the no-good literal.
No-good literal for inclusion.
IncNGL(Space &home, SetView x, int n)
Constructor for creation.
virtual NGL::Status status(const Space &home) const
Test the status of the no-good literal.
virtual NGL * copy(Space &home)
Create copy.
virtual ExecStatus prune(Space &home)
Propagate the negation of the no-good literal.
Merit class for AFC over size.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed)
double operator()(const Space &home, SetView x, int i)
Return AFC over size as merit for view x at position i.
MeritAFCSize(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
void dispose(Space &home)
Dispose view selection.
Merit class for action over size.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed)
void dispose(Space &home)
Dispose view selection.
Action action
Action information.
MeritActionSize(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
double operator()(const Space &home, SetView x, int i)
Return action over size as merit for view x at position i.
Merit class for CHB Q-score over size.
double operator()(const Space &home, SetView x, int i)
Return CHB Q-score over size as merit for view x at position i.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed)
void dispose(Space &home)
Dispose view selection.
MeritCHBSize(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
Merit class for degree over size.
double operator()(const Space &home, SetView x, int i)
Return degree over size as merit for view x at position i.
MeritDegreeSize(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
Merit class for maximum of set view.
MeritMax(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
int operator()(const Space &home, SetView x, int i)
Return maximum as merit for view x at position i.
Merit class for mimimum of set views.
MeritMin(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
int operator()(const Space &home, SetView x, int i)
Return minimum as merit for view x at position i.
Merit class for size of set view.
MeritSize(Space &home, const VarBranch< Var > &vb)
Constructor for initialization.
unsigned int operator()(const Space &home, SetView x, int i)
Return size as merit for view x at position i.
Value commit class for exclusion.
NGL * ngl(Space &home, unsigned int a, View x, int n) const
Create no-good literal for alternative a.
void print(const Space &home, unsigned int a, SetView x, int i, int n, std::ostream &o) const
Print on o the alternative with view x at position i and value n.
ValCommitExc(Space &home, const ValBranch< Var > &vb)
Constructor for initialization.
ModEvent commit(Space &home, unsigned int a, SetView x, int i, int n)
Commit view x at position i to value n for alternative a.
Value commit class for inclusion.
ModEvent commit(Space &home, unsigned int a, SetView x, int i, int n)
Commit view x at position i to value n for alternative a.
ValCommitInc(Space &home, const ValBranch< Var > &vb)
Constructor for initialization.
void print(const Space &home, unsigned int a, SetView x, int i, int n, std::ostream &o) const
Print on o the alternative with view x at position i and value n.
NGL * ngl(Space &home, unsigned int a, View x, int n) const
Create no-good literal for alternative a.
Value selection class for maximum of view.
int val(const Space &home, SetView x, int i)
Return value of view x at position i.
ValSelMax(Space &home, const ValBranch< Var > &vb)
Constructor for initialization.
Value selection class for median of view.
ValSelMed(Space &home, const ValBranch< Var > &vb)
Constructor for initialization.
int val(const Space &home, SetView x, int i)
Return value of view x at position i.
Value selection class for mimimum of view.
ValSelMin(Space &home, const ValBranch< Var > &vb)
Constructor for initialization.
int val(const Space &home, SetView x, int i)
Return value of view x at position i.
Value selection class for random value of view.
bool notice(void) const
Whether dispose must always be called (that is, notice is needed)
ValSelRnd(Space &home, const ValBranch< Var > &vb)
Constructor for initialization.
Rnd r
The used random number generator.
int val(const Space &home, SetView x, int i)
Return value of view x at position i.
void dispose(Space &home)
Delete value selection.
Set view for set variables
Value branching information.
Base class for value commit.
Base class for value selection.
Variable branching information.
View-value no-good literal.
#define GECODE_SET_EXPORT
ViewSel< IntView > * viewsel(Space &home, const IntVarBranch &ivb)
Return view selectors for integer views.
ValSelCommitBase< IntView, int > * valselcommit(Space &home, const IntValBranch &ivb)
Return value and commit for integer views.
Gecode toplevel namespace
Post propagator for SetVar x
int ModEvent
Type for modification events.