90 static char rcsid[] 
DD_UNUSED = 
"$Id: cuddClip.c,v 1.8 2004/08/13 18:04:47 fabio Exp $";
 
  276     DdNode *F, *ft, *fe, *G, *gt, *ge;
 
  278     unsigned int topf, topg, index;
 
  286     if (f == zero || g == zero || f == 
Cudd_Not(g)) 
return(zero);
 
  287     if (f == g || g == one) 
return(f);
 
  288     if (f == one) 
return(g);
 
  294         if (direction == 1) {
 
  314     if (F->
ref != 1 || G->
ref != 1) {
 
  316         if (r != NULL) 
return(r);
 
  351     if (t == NULL) 
return(NULL);
 
  382     if (F->
ref != 1 || G->
ref != 1)
 
  413     DdNode *F, *ft, *fe, *G, *gt, *ge;
 
  415     unsigned int topf, topg, topcube, top, index;
 
  423     if (f == zero || g == zero || f == 
Cudd_Not(g)) 
return(zero);
 
  424     if (f == one && g == one)   
return(one);
 
  428     if (f == one || f == g) {
 
  434     if (distance == 0) 
return(
Cudd_NotCond(one,(direction == 0)));
 
  448     if (F->
ref != 1 || G->
ref != 1) {
 
  461     top = 
ddMin(topf, topg);
 
  466                                       distance, direction));
 
  494     if (topcube == top) {
 
  501     if (t == NULL) 
return(NULL);
 
  506     if (t == one && topcube == top) {
 
  507         if (F->
ref != 1 || G->
ref != 1)
 
  520     if (topcube == top) {       
 
  522                                     distance, (direction == 0));
 
  557     if (F->
ref != 1 || G->
ref != 1)
 
DdNode * cuddBddExistAbstractRecur(DdManager *manager, DdNode *f, DdNode *cube)
void Cudd_RecursiveDeref(DdManager *table, DdNode *n)
void cuddCacheInsert2(DdManager *table, DD_CTFP op, DdNode *f, DdNode *g, DdNode *data)
static ABC_NAMESPACE_IMPL_START char rcsid[] DD_UNUSED
DdNode * cuddBddClippingAndAbstract(DdManager *dd, DdNode *f, DdNode *g, DdNode *cube, int maxDepth, int direction)
#define Cudd_Regular(node)
#define DD_BDD_CLIPPING_AND_ABSTRACT_DOWN_TAG
void cuddCacheInsert(DdManager *table, ptruint op, DdNode *f, DdNode *g, DdNode *h, DdNode *data)
DdNode *(* DD_CTFP)(DdManager *, DdNode *, DdNode *)
DdNode * cuddBddClippingAnd(DdManager *dd, DdNode *f, DdNode *g, int maxDepth, int direction)
DdNode * Cudd_bddClippingAndAbstract(DdManager *dd, DdNode *f, DdNode *g, DdNode *cube, int maxDepth, int direction)
DdNode * cuddCacheLookup2(DdManager *table, DD_CTFP op, DdNode *f, DdNode *g)
#define Cudd_IsComplement(node)
static DdNode * cuddBddClippingAndRecur(DdManager *manager, DdNode *f, DdNode *g, int distance, int direction)
#define ABC_NAMESPACE_IMPL_END
#define ABC_NAMESPACE_IMPL_START
int Cudd_bddLeq(DdManager *dd, DdNode *f, DdNode *g)
#define Cudd_NotCond(node, c)
static DdNode * cuddBddClipAndAbsRecur(DdManager *manager, DdNode *f, DdNode *g, DdNode *cube, int distance, int direction)
DdNode * cuddUniqueInter(DdManager *unique, int index, DdNode *T, DdNode *E)
DdNode * Cudd_bddClippingAnd(DdManager *dd, DdNode *f, DdNode *g, int maxDepth, int direction)
DdNode * cuddCacheLookup(DdManager *table, ptruint op, DdNode *f, DdNode *g, DdNode *h)
#define DD_BDD_CLIPPING_AND_ABSTRACT_UP_TAG