Generated on Mon Aug 27 2012 17:15:58 for Gecode by doxygen 1.8.1.2
Gecode::BoolExpr::NNF Class Reference

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 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 {
      bool   neg
 Is atomic formula negative.
      Node *   x
 Pointer to corresponding Boolean expression node.
   }   a
 For atomic nodes.
u
 Union depending on nodetype t.

Detailed Description

Node for negation normalform (NNF)

Definition at line 1019 of file minimodel.hh.

Member Function Documentation

BoolExpr::NNF * Gecode::BoolExpr::NNF::nnf ( Region r,
Node n,
bool  neg 
)
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.

void * Gecode::BoolExpr::NNF::operator new ( size_t  s,
Region r 
)
inlinestatic

Allocate memory from region.

Definition at line 172 of file bool-expr.cpp.

void Gecode::BoolExpr::NNF::operator delete ( void *  )
inlinestatic

No-op (for exceptions)

Definition at line 166 of file bool-expr.cpp.

void Gecode::BoolExpr::NNF::operator delete ( void *  ,
Region  
)
inlinestatic

No-op.

Definition at line 169 of file bool-expr.cpp.

Member Data Documentation

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.


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