
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. | |
| void | post (Home home, SetRelType srt, SetVar s) const |
| Post propagators for expression. | |
| void | post (Home home, SetRelType srt, SetVar s, BoolVar b) const |
| Post propagators for reified expression. | |
| void | post (Home home, SetRelType srt, const NNF *n) const |
| Post propagators for relation. | |
| 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) | |
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 { | |
| Node * x | |
| Pointer to corresponding Boolean expression node. | |
| } a | |
| For atomic nodes. | |
| } | u |
| Union depending on nodetype t. | |
| bool | neg |
| Is formula negative. | |
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 |
For binary nodes (and, or, eqv)
| Node* Gecode::SetExpr::NNF::x |
Pointer to corresponding Boolean expression node.
Definition at line 777 of file minimodel.hh.
| struct { ... } Gecode::SetExpr::NNF::a |
For atomic nodes.
| union { ... } Gecode::SetExpr::NNF::u |
Union depending on nodetype t.
| bool Gecode::SetExpr::NNF::neg |
Is formula negative.
Definition at line 781 of file minimodel.hh.