87 static char rcsid[]
DD_UNUSED =
"$Id: cuddZddIsop.c,v 1.22 2012/02/05 01:07:19 fabio Exp $";
242 DdNode *Lsub0, *Usub0, *Lsub1, *Usub1, *Ld, *Ud;
243 DdNode *Lsuper0, *Usuper0, *Lsuper1, *Usuper1;
244 DdNode *Isub0, *Isub1, *Id;
245 DdNode *zdd_Isub0, *zdd_Isub1, *zdd_Id;
247 DdNode *term0, *term1, *sum;
248 DdNode *Lv, *Uv, *Lnv, *Unv;
263 if (U == zero || L == one) {
264 printf(
"*** ERROR : illegal condition for ISOP (U < L).\n");
290 v =
ddMin(top_l, top_u);
368 if (Lsuper0 == NULL) {
377 if (Lsuper1 == NULL) {
510 if (zdd_Isub0 != zdd_zero) {
524 if (zdd_Isub1 != zdd_zero) {
580 DdNode *Lsub0, *Usub0, *Lsub1, *Usub1, *Ld, *Ud;
581 DdNode *Lsuper0, *Usuper0, *Lsuper1, *Usuper1;
582 DdNode *Isub0, *Isub1, *Id;
584 DdNode *term0, *term1, *sum;
585 DdNode *Lv, *Uv, *Lnv, *Unv;
602 v =
ddMin(top_l, top_u);
663 if (Lsuper0 == NULL) {
670 if (Lsuper1 == NULL) {
810 if (node == dd->
zero)
843 if (fd != dd->
zero) {
DdNode * cuddZddGetNodeIVO(DdManager *dd, int index, DdNode *g, DdNode *h)
void Cudd_RecursiveDerefZdd(DdManager *table, DdNode *n)
void Cudd_RecursiveDeref(DdManager *table, DdNode *n)
DdNode * cuddCacheLookup1(DdManager *table, DdNode *(*)(DdManager *, DdNode *), DdNode *f)
void Cudd_Deref(DdNode *node)
DdNode * cuddCacheLookup2(DdManager *table, DdNode *(*)(DdManager *, DdNode *, DdNode *), DdNode *f, DdNode *g)
#define Cudd_Regular(node)
void cuddCacheInsert1(DdManager *table, DdNode *(*)(DdManager *, DdNode *), DdNode *f, DdNode *data)
DdNode * cuddMakeBddFromZddCover(DdManager *dd, DdNode *node)
DdNode * cuddZddIsop(DdManager *dd, DdNode *L, DdNode *U, DdNode **zdd_I)
#define Cudd_IsComplement(node)
DdNode *(* DD_CTFP)(DdManager *, DdNode *, DdNode *)
DdNode * cuddUniqueInterIVO(DdManager *unique, int index, DdNode *T, DdNode *E)
DdNode * Cudd_zddIsop(DdManager *dd, DdNode *L, DdNode *U, DdNode **zdd_I)
int cuddZddGetCofactors3(DdManager *dd, DdNode *f, int v, DdNode **f1, DdNode **f0, DdNode **fd)
DdNode * cuddCacheLookup2Zdd(DdManager *table, DdNode *(*)(DdManager *, DdNode *, DdNode *), DdNode *f, DdNode *g)
DdNode * cuddBddAndRecur(DdManager *manager, DdNode *f, DdNode *g)
DdNode * Cudd_MakeBddFromZddCover(DdManager *dd, DdNode *node)
void cuddCacheInsert2(DdManager *table, DdNode *(*)(DdManager *, DdNode *, DdNode *), DdNode *f, DdNode *g, DdNode *data)
DdNode * cuddBddIsop(DdManager *dd, DdNode *L, DdNode *U)
#define Cudd_NotCond(node, c)
DdNode * Cudd_bddIsop(DdManager *dd, DdNode *L, DdNode *U)
static char rcsid [] DD_UNUSED
DdNode * cuddUniqueInter(DdManager *unique, int index, DdNode *T, DdNode *E)