Node for negation normalform (NNF) More...
#include <minimodel.hh>
Public Member Functions | |
void | post (Home home, NodeType t, BoolVarArgs &bp, BoolVarArgs &bn, int &ip, int &in, IntConLevel icl) const |
Post propagators for nested conjunctive and disjunctive expression. | |
BoolVar | expr (Home home, IntConLevel icl) const |
Post propagators for expression. | |
void | rel (Home home, IntConLevel icl) const |
Post propagators for relation. |
Static Public Member Functions | |
static NNF * | nnf (Region &r, Node *n, bool neg) |
Create negation normalform. | |
static void * | operator new (size_t s, Region &r) |
Allocate memory from region. | |
static void | operator delete (void *) |
No-op (for exceptions) | |
static void | operator delete (void *, Region &) |
No-op. |
Public Attributes | |
NodeType | t |
Type of node. | |
int | p |
Number of positive literals for node type. | |
int | n |
Number of negative literals for node type. | |
union { | |
struct { | |
NNF * l | |
Left subtree. | |
NNF * r | |
Right subtree. | |
} b | |
For binary nodes (and, or, eqv) | |
struct { | |
bool neg | |
Is atomic formula negative. | |
Node * x | |
Pointer to corresponding Boolean expression node. | |
} a | |
For atomic nodes. | |
} | u |
Union depending on nodetype t. |
Node for negation normalform (NNF)
Definition at line 1019 of file minimodel.hh.
|
static |
Create negation normalform.
Definition at line 355 of file bool-expr.cpp.
void Gecode::BoolExpr::NNF::post | ( | Home | home, |
NodeType | t, | ||
BoolVarArgs & | bp, | ||
BoolVarArgs & | bn, | ||
int & | ip, | ||
int & | in, | ||
IntConLevel | icl | ||
) | const |
Post propagators for nested conjunctive and disjunctive expression.
Definition at line 240 of file bool-expr.cpp.
BoolVar Gecode::BoolExpr::NNF::expr | ( | Home | home, |
IntConLevel | icl | ||
) | const |
Post propagators for expression.
Definition at line 177 of file bool-expr.cpp.
void Gecode::BoolExpr::NNF::rel | ( | Home | home, |
IntConLevel | icl | ||
) | const |
Post propagators for relation.
Definition at line 287 of file bool-expr.cpp.
|
inlinestatic |
Allocate memory from region.
Definition at line 172 of file bool-expr.cpp.
|
inlinestatic |
No-op (for exceptions)
Definition at line 166 of file bool-expr.cpp.
|
inlinestatic |
No-op.
Definition at line 169 of file bool-expr.cpp.
NodeType Gecode::BoolExpr::NNF::t |
Type of node.
Definition at line 1022 of file minimodel.hh.
int Gecode::BoolExpr::NNF::p |
Number of positive literals for node type.
Definition at line 1024 of file minimodel.hh.
int Gecode::BoolExpr::NNF::n |
Number of negative literals for node type.
Definition at line 1026 of file minimodel.hh.
NNF* Gecode::BoolExpr::NNF::l |
Left subtree.
Definition at line 1032 of file minimodel.hh.
NNF* Gecode::BoolExpr::NNF::r |
Right subtree.
Definition at line 1034 of file minimodel.hh.
struct { ... } Gecode::BoolExpr::NNF::b |
For binary nodes (and, or, eqv)
bool Gecode::BoolExpr::NNF::neg |
Is atomic formula negative.
Definition at line 1039 of file minimodel.hh.
Node* Gecode::BoolExpr::NNF::x |
Pointer to corresponding Boolean expression node.
Definition at line 1041 of file minimodel.hh.
struct { ... } Gecode::BoolExpr::NNF::a |
For atomic nodes.
union { ... } Gecode::BoolExpr::NNF::u |
Union depending on nodetype t.