cudd  3.0.0
The University of Colorado Decision Diagram Package
Functions
cuddZddPort.c File Reference

Functions that translate BDDs to ZDDs. More...

#include "util.h"
#include "cuddInt.h"
Include dependency graph for cuddZddPort.c:

Functions

DdNodeCudd_zddPortFromBdd (DdManager *dd, DdNode *B)
 Converts a BDD into a ZDD. More...
 
DdNodeCudd_zddPortToBdd (DdManager *dd, DdNode *f)
 Converts a ZDD into a BDD. More...
 
static DdNodezddPortFromBddStep (DdManager *dd, DdNode *B, int expected)
 Performs the recursive step of Cudd_zddPortFromBdd. More...
 
static DdNodezddPortToBddStep (DdManager *dd, DdNode *f, int depth)
 Performs the recursive step of Cudd_zddPortToBdd. More...
 

Detailed Description

Functions that translate BDDs to ZDDs.

Author
Hyong-kyoon Shin, In-Ho Moon

Function Documentation

◆ Cudd_zddPortFromBdd()

DdNode* Cudd_zddPortFromBdd ( DdManager dd,
DdNode B 
)

Converts a BDD into a ZDD.

This function assumes that there is a one-to-one correspondence between the BDD variables and the ZDD variables, and that the variable order is the same for both types of variables. These conditions are established if the ZDD variables are created by one call to Cudd_zddVarsFromBddVars with multiplicity = 1.

Returns
a pointer to the resulting ZDD if successful; NULL otherwise.
Side effects None
See also
Cudd_zddVarsFromBddVars

◆ Cudd_zddPortToBdd()

DdNode* Cudd_zddPortToBdd ( DdManager dd,
DdNode f 
)

Converts a ZDD into a BDD.

Returns
a pointer to the resulting ZDD if successful; NULL otherwise.
Side effects None
See also
Cudd_zddPortFromBdd

◆ zddPortFromBddStep()

static DdNode* zddPortFromBddStep ( DdManager dd,
DdNode B,
int  expected 
)
static

Performs the recursive step of Cudd_zddPortFromBdd.

Side effects None

◆ zddPortToBddStep()

static DdNode* zddPortToBddStep ( DdManager dd,
DdNode f,
int  depth 
)
static

Performs the recursive step of Cudd_zddPortToBdd.

Side effects None