|
| BDD () |
| The NULL BDD.
|
|
| BDD (const BDD &other) |
| Copies ownership of another BDD.
|
|
BDD & | operator= (const BDD &other) |
| Copy ownership of another BDD during assignment.
|
|
| BDD (BDD &&other) |
| Move ownership of another BDD.
|
|
BDD & | operator= (BDD &&other) |
| Move ownership of another BDD during assignment.
|
|
| ~BDD () |
| Decrement reference count upon leaving scope.
|
|
bool | IsOne () const |
| true if the this BDD is constant one, false otherwise. More...
|
|
bool | IsZero () const |
| true if the this BDD is constant zero, false otherwise. More...
|
|
bool | IsNull () const |
| true if the this BDD is NULL, false otherwise.
|
|
bool | IsConst () const |
| true if the this BDD is either constant one or constant zero, otherwise returns false . More...
|
|
bool | IsCube () const |
| true if the this BDD is a cube, false otherwise.
|
|
bool | IsEqualTo (const BDD &other) const |
| true if this BDD is equal to other , false otherwise.
|
|
bool | operator== (const BDD &other) const |
| true if argument BDDs are equal, false otherwise. More...
|
|
bool | operator!= (const BDD &other) const |
| false if argument BDDs are equal, true otherwise. More...
|
|
bool | DependsOn (const BDD &var) const |
| true if this depends on var , false otherwise.
|
|
BDD | If () const |
| BDD corresponding to the top variable of the this BDD. More...
|
|
Id_t | Id () const |
| Returns the id of this BDD's top variable. More...
|
|
Index_t | Index () const |
| Returns the index of this BDD's top variable. More...
|
|
BDD | Then () const |
| The positive cofactor of this BDD with respect to its top variable.
|
|
BDD | Else () const |
| The negative cofactor of this BDD with respect to its top variable.
|
|
Type_t | Type () const |
| The BDD type (0, 1, +var, -var, overflow, nonterminal).
|
|
unsigned long | Size (bool negout=true) const |
| This BDD's size. More...
|
|
double | SatisfyingFraction () const |
| Fraction of valuations which make this BDD true. More...
|
|
BDD | Identity () const |
| Duplicate of this BDD. More...
|
|
BDD | Regular () const |
| Returns a BDD in positive form (regardless of this BDDs phase). More...
|
|
BDD | Not () const |
| Complement of this BDD.
|
|
BDD | operator~ () const |
|
BDD | Compose (const BDD &g, const BDD &h) const |
| Substitute a BDD variable by a function. More...
|
|
BDD | Intersects (const BDD &g) const |
| Computes a BDD that implies conjunction of this and g . More...
|
|
BDD | Implies (const BDD &g) const |
| Computes a BDD that implies conjunction of this and g.Not() . More...
|
|
BDD | ITE (const BDD &g, const BDD &h) const |
| Logical If-Then-Else. More...
|
|
BDD | And (const BDD &g) const |
| Logical AND operation.
|
|
BDD | operator& (const BDD &other) const |
|
BDD & | operator&= (const BDD &other) |
|
BDD | Nand (const BDD &g) const |
| Logical Negated AND operation.
|
|
BDD | Or (const BDD &g) const |
| Logical OR operation.
|
|
BDD | operator| (const BDD &other) const |
|
BDD & | operator|= (const BDD &other) |
|
BDD | Nor (const BDD &g) const |
| Logical Negated OR operation.
|
|
BDD | Xor (const BDD &g) const |
| Logical XOR operation.
|
|
BDD | operator^ (const BDD &other) const |
|
BDD & | operator^= (const BDD &other) |
|
BDD | Xnor (const BDD &g) const |
| Logical Negated XOR operation.
|
|
BDD | Diff (const BDD &g) const |
| Logical Difference operation.
|
|
BDD | operator- (const BDD &other) const |
|
BDD & | operator-= (const BDD &other) |
|
BDD | Satisfy () const |
| A satisfying assignment of this BDD. More...
|
|
BDD | SatisfySupport () const |
| Returns a special cube contained in this. More...
|
|
BDD | SwapVars (const BDD &g, const BDD &h) const |
| The function obtained by swapping two variables. More...
|
|
BDD | Cofactor (const BDD &c) const |
| Generalized cofactor of this with respect to c . More...
|
|
BDD | Reduce (const BDD &c) const |
| A function that agrees with this for all valuations which satisfy c . More...
|
|
void | Print (FILE *fp=stdout) const |
| Prints this BDD in the human readable form.
|
|
void | FunctionPrint (std::string &name) const |
| Prints the function implemented by this BDD.
|
|
std::vector< long > | Profile (bool negout=true) const |
| Obtain a vector with the number of nodes at each level in f. More...
|
|
void | PrintProfile (int lineLength=79, FILE *fp=stdout) const |
| Prints a BDD in the human readable form. More...
|
|
std::vector< long > | FunctionProfile () const |
| The number of subfunctions of this which may be obtained by restricting variables with an index lower than n. More...
|
|
void | PrintFunctionProfile (int lineLength=79, FILE *fp=stdout) const |
| Similar to BDD::PrintProfile() but displays a function profile for this. More...
|
|
int | RefCount () const |
| The reference count of this BDD. More...
|
|
std::string | ToString () const |
| String representation of this BDD node.
|
|
C++ wrapper for Cal_Bdd
, managing reference count with RAII.
These BDDs are created from a Cal
object which owns the unique node table. Hence, the life-time of any BDD
object should not outlast its parent Cal
object. Doing so leads to undefined behaviour.
- See also
- Cal