38 #ifndef __GECODE_SET_LDSB_HH__ 39 #define __GECODE_SET_LDSB_HH__ 48 namespace Gecode {
namespace Set {
namespace LDSB {
50 using namespace Int::LDSB;
60 template<
class View,
int n,
class Val,
unsigned int a,
61 class Filter,
class Print>
115 template<
class View0,
int n0,
class Val0,
unsigned int a0>
132 void updatePart1(
Space& home,
int choicePos);
137 namespace Gecode {
namespace Int {
namespace LDSB {
142 ::symmetric(Literal
l,
const ViewArray<Set::SetView>&
x)
const;
int _nValueSymmetries
Number of value symmetries.
int _nNonValueSymmetries
Number of non-value symmetries.
Symmetry-breaking brancher with generic view and value selection.
std::function< void(const Space &home, const Brancher &b, unsigned int a, Var x, int i, const Val &m, std::ostream &o)> VarValPrint
Function type for printing variable and value selection.
int _prevPos
Position of previous variable that was branched on.
Base-class for both propagators and branchers.
IntSet _leftBranchValues
Set of values used on left branches for the current variable.
struct Gecode::@579::NNF::@61::@63 a
For atomic nodes.
Gecode::FloatVal c(-8, 8)
int n
Number of negative literals for node type.
bool _stable
Is the state of the brancher "stable"?
Implementation of a value symmetry.
std::function< bool(const Space &home, Var x, int i)> BranchFilter
Function type for branch filter functions.
struct Gecode::@579::NNF::@61::@62 b
For binary nodes (and, or, eqv)
int _nCopiedSyms
Number of copied symmetries.
Symmetry-breaking brancher with generic view and value selection.
void postldsbsetbrancher(Home home, ViewArray< View > &x, ViewSel< View > *vs[n], ValSelCommitBase< View, Val > *vsc, SymmetryImp< View > **syms, int nsyms, BranchFilter< typename View::VarType > bf, VarValPrint< typename View::VarType, Val > vvp)
Implementation of a single symmetry.
Choice for performing commit
ValueSymmetryImp< View > ** _copiedSyms
Copy of value symmetries from the first node where the current variable was branched on.
virtual ArgArray< Literal > symmetric(Literal, const ViewArray< View > &) const
Compute symmetric literals.
Post propagator for SetVar x
Gecode toplevel namespace
Home class for posting propagators
TFE post(PropagatorGroup g)
Only post functions (but not propagators) from g are considered.