Generated on Tue Jul 27 2010 21:59:26 for Gecode by doxygen 1.7.1

Node for negation normalform (NNF) More...

#include <minimodel.hh>

List of all members.

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 NNFnnf (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.

Detailed Description

Node for negation normalform (NNF)

Definition at line 741 of file minimodel.hh.


Member Function Documentation

SetExpr::NNF * Gecode::SetExpr::NNF::nnf ( Region r,
Node n,
bool  neg 
) [static]

Create negation normalform.

Definition at line 423 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 342 of file set-expr.cpp.

void Gecode::SetExpr::NNF::post ( Home  home,
SetRelType  srt,
SetVar  s 
) const

Post propagators for expression.

Definition at line 95 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 240 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 372 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 392 of file set-expr.cpp.

void * Gecode::SetExpr::NNF::operator new ( size_t  s,
Region r 
) [inline, static]

Allocate memory from region.

Definition at line 90 of file set-expr.cpp.

void Gecode::SetExpr::NNF::operator delete ( void *   )  [inline, static]

No-op (for exceptions).

Definition at line 84 of file set-expr.cpp.

void Gecode::SetExpr::NNF::operator delete ( void *  ,
Region  
) [inline, static]

No-op.

Definition at line 87 of file set-expr.cpp.


Member Data Documentation

Type of node.

Definition at line 744 of file minimodel.hh.

Number of positive literals for node type.

Definition at line 746 of file minimodel.hh.

Number of negative literals for node type.

Definition at line 748 of file minimodel.hh.

Left subtree.

Definition at line 754 of file minimodel.hh.

Right subtree.

Definition at line 756 of file minimodel.hh.

struct { ... } Gecode::SetExpr::NNF::b

For binary nodes (and, or, eqv).

Pointer to corresponding Boolean expression node.

Definition at line 761 of file minimodel.hh.

struct { ... } Gecode::SetExpr::NNF::a

For atomic nodes.

union { ... } Gecode::SetExpr::NNF::u

Union depending on nodetype t.

Is formula negative.

Definition at line 765 of file minimodel.hh.


The documentation for this class was generated from the following files: