Generated on Mon Jul 6 18:09:30 2009 for Gecode by doxygen 1.5.9

Gecode::BoolExpr::NNF Class Reference

Node for negation normalform (NNF). More...

#include <minimodel.hh>

List of all members.

Public Member Functions

void post (Space &home, NodeType t, BoolVarArgs &bp, BoolVarArgs &bn, int &ip, int &in, IntConLevel icl) const
 Post propagators for nested conjunctive and disjunctive expression.
BoolVar post (Space &home, IntConLevel icl) const
 Post propagators for expression.
void post (Space &home, bool t, 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.
unsigned int p
 Number of positive literals for node type.
unsigned 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 687 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 318 of file bool-expr.cpp.

void Gecode::BoolExpr::NNF::post ( Space 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 217 of file bool-expr.cpp.

BoolVar Gecode::BoolExpr::NNF::post ( Space home,
IntConLevel  icl 
) const

Post propagators for expression.

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

void Gecode::BoolExpr::NNF::post ( Space home,
bool  t,
IntConLevel  icl 
) const

Post propagators for relation.

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

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

Allocate memory from region.

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

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

No-op (for exceptions).

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

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

No-op.

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


Member Data Documentation

Type of node.

Definition at line 690 of file minimodel.hh.

Number of positive literals for node type.

Definition at line 692 of file minimodel.hh.

Number of negative literals for node type.

Definition at line 694 of file minimodel.hh.

Left subtree.

Definition at line 700 of file minimodel.hh.

Right subtree.

Definition at line 702 of file minimodel.hh.

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

For binary nodes (and, or, eqv).

Is atomic formula negative.

Definition at line 707 of file minimodel.hh.

Pointer to corresponding Boolean expression node.

Definition at line 709 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: