Node for negation normalform (NNF) More...
#include <minimodel.hh>
Public Member Functions | |
void | post (Home home, NodeType t, SetVarArgs &b, int &i) const |
Post propagators for nested conjunctive and disjunctive expression. More... | |
void | post (Home home, SetRelType srt, SetVar s) const |
Post propagators for expression. More... | |
void | post (Home home, SetRelType srt, SetVar s, BoolVar b) const |
Post propagators for reified expression. More... | |
void | post (Home home, SetRelType srt, const NNF *n) const |
Post propagators for relation. More... | |
void | post (Home home, BoolVar b, bool t, SetRelType srt, const NNF *n) const |
Post reified propagators for relation (or negated relation if t is false) More... | |
Static Public Member Functions | |
static NNF * | nnf (Region &r, Node *n, bool neg) |
Create negation normalform. More... | |
static void * | operator new (size_t s, Region &r) |
Allocate memory from region. More... | |
static void | operator delete (void *) |
No-op (for exceptions) More... | |
static void | operator delete (void *, Region &) |
No-op. More... | |
Public Attributes | |
NodeType | t |
Type of node. More... | |
int | p |
Number of positive literals for node type. More... | |
int | n |
Number of negative literals for node type. More... | |
union { | |
struct { | |
NNF * l | |
Left subtree. More... | |
NNF * r | |
Right subtree. More... | |
} b | |
struct { | |
Node * x | |
Pointer to corresponding Boolean expression node. More... | |
} a | |
} | u |
bool | neg |
Is formula negative. More... | |
Node for negation normalform (NNF)
Definition at line 757 of file minimodel.hh.
|
static |
Create negation normalform.
Definition at line 475 of file set-expr.cpp.
void Gecode::SetExpr::NNF::post | ( | Home | home, |
NodeType | t, | ||
SetVarArgs & | b, | ||
int & | i | ||
) | const |
Post propagators for nested conjunctive and disjunctive expression.
Definition at line 394 of file set-expr.cpp.
void Gecode::SetExpr::NNF::post | ( | Home | home, |
SetRelType | srt, | ||
SetVar | s | ||
) | const |
Post propagators for expression.
Definition at line 147 of file set-expr.cpp.
void Gecode::SetExpr::NNF::post | ( | Home | home, |
SetRelType | srt, | ||
SetVar | s, | ||
BoolVar | b | ||
) | const |
Post propagators for reified expression.
Definition at line 292 of file set-expr.cpp.
void Gecode::SetExpr::NNF::post | ( | Home | home, |
SetRelType | srt, | ||
const NNF * | n | ||
) | const |
Post propagators for relation.
Definition at line 424 of file set-expr.cpp.
void Gecode::SetExpr::NNF::post | ( | Home | home, |
BoolVar | b, | ||
bool | t, | ||
SetRelType | srt, | ||
const NNF * | n | ||
) | const |
Post reified propagators for relation (or negated relation if t is false)
Definition at line 444 of file set-expr.cpp.
|
inlinestatic |
Allocate memory from region.
Definition at line 142 of file set-expr.cpp.
|
inlinestatic |
No-op (for exceptions)
Definition at line 136 of file set-expr.cpp.
|
inlinestatic |
No-op.
Definition at line 139 of file set-expr.cpp.
NodeType Gecode::SetExpr::NNF::t |
Type of node.
Definition at line 760 of file minimodel.hh.
int Gecode::SetExpr::NNF::p |
Number of positive literals for node type.
Definition at line 762 of file minimodel.hh.
int Gecode::SetExpr::NNF::n |
Number of negative literals for node type.
Definition at line 764 of file minimodel.hh.
NNF* Gecode::SetExpr::NNF::l |
Left subtree.
Definition at line 770 of file minimodel.hh.
NNF* Gecode::SetExpr::NNF::r |
Right subtree.
Definition at line 772 of file minimodel.hh.
struct { ... } Gecode::SetExpr::NNF::b |
Node* Gecode::SetExpr::NNF::x |
Pointer to corresponding Boolean expression node.
Definition at line 777 of file minimodel.hh.
struct { ... } Gecode::SetExpr::NNF::a |
union { ... } Gecode::SetExpr::NNF::u |
bool Gecode::SetExpr::NNF::neg |
Is formula negative.
Definition at line 781 of file minimodel.hh.