abc/src/bdd/cudd/cuddLiteral.c
/**Function********************************************************************

  Synopsis    [Computes the intesection of two sets of literals
  represented as BDDs.]

  Description [Computes the intesection of two sets of literals
  represented as BDDs. Each set is represented as a cube of the
  literals in the set. The empty set is represented by the constant 1.
  No variable can be simultaneously present in both phases in a set.
  Returns a pointer to the BDD representing the intersected sets, if
  successful; NULL otherwise.]

  SideEffects [None]

******************************************************************************/
Function
Synopsis    [Computes the intesection of two sets of literals
represented as BDDs.]

Description [Computes the intesection of two sets of literals
represented as BDDs. Each set is represented as a cube of the
literals in the set. The empty set is represented by the constant 1.
No variable can be simultaneously present in both phases in a set.
Returns a pointer to the BDD representing the intersected sets, if
successful; NULL otherwise.]


Function Synopsis [ Computes the intesection of two sets of literals represented as BDDs . ] Description [ Computes the intesection of two sets of literals represented as BDDs . Each set is represented as a cube of the literals in the set . The empty set is represented by the constant 1 . No variable can be simultaneously present in both phases in a set . Returns a pointer to the BDD representing the intersected sets if successful ; NULL otherwise . ]
DdNode *
Cudd_bddLiteralSetIntersection(
  DdManager * dd,
  DdNode * f,
  DdNode * g)
{
    DdNode *res;
    do {
        dd->reordered = 0;
        res = cuddBddLiteralSetIntersectionRecur(dd,f,g);
    } while (dd->reordered == 1);
    return(res);
}
DdNode * Cudd_bddLiteralSetIntersection ( DdManager * dd , DdNode * f , DdNode * g ) { DdNode * res ; do { dd -> reordered = 0 ; res = cuddBddLiteralSetIntersectionRecur ( dd , f , g ) ; } while ( dd -> reordered == 1 ) ; return ( res ) ; }
Function
Synopsis    [Computes the intesection of two sets of literals
represented as BDDs.]
Function Synopsis [ Computes the intesection of two sets of literals represented as BDDs . ]