cofactorbddnode

COFACTORBDDNODE(3)               BDD FUNCTIONS              COFACTORBDDNODE(3)



NAME
       cofactorbddnode - computes the generalized cofactor.



ORIGIN
       This software belongs to the  ALLIANCE CAD SYSTEM developed by the ASIM
       team at LIP6 laboratory of Université Pierre et Marie CURIE, in Paris,
       France.

       Web : http://asim.lip6.fr/recherche/alliance/
       E-mail : alliance-users@asim.lip6.fr


SYNOPSYS
       #include "bdd101.h"
       bddnode ∗cofactorbddnode( BddSystem, BddNode1, BddNode2 )
         bddsystem ∗BddSystem;
         bddnode   ∗BddNode1;
         bddnode   ∗BddNode2;

PARAMETERS
       BddSystem           The bdd system.

       BddNode1            The first bdd node.

       BddNode2            The second bdd node.

DESCRIPTION
       cofactorbddnode computes the generalized cofactor of BddNode1 by
       BddNode2, in the bdd system BddSystem.  If a null pointer is given, the
       default bdd system is used.

RETURN VALUE
       cofactorbddnode returns the resulting bdd node.

ERRORS
       "index xxx out of range"
              The BddNode2 parameter must be different to the zero bdd node.

EXAMPLE
       #include "bdd101.h"
          bddsystem  ∗BddSystem;
          bddcircuit ∗BddCircuit;
          bddnode    ∗BddNode1;
          bddnode    ∗BddNode2;
          bddnode    ∗BddNode;
          chain_list ∗Expr;
          BddSystem  = createbddsystem( 100, 1000, 100, 50000 );
          BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
          Expr = createablbinexpr( ABL_OR,
                                   createablatom( "i0" ),
                                   createablatom( "i1" ) );
          BddNode1 = addbddcircuitabl( BddCircuit, Expr );
          freeablexpr( Expr );
          Expr = createablbinexpr( ABL_AND,
                                   createablatom( "i0" ),
                                   createablatom( "i1" ) );
          BddNode2 = addbddcircuitabl( BddCircuit, Expr );
          freeablexpr( Expr );
          BddNode = cofactorbddnode( (bddsystem ∗)0, BddNode1, BddNode2 );
          Expr = convertbddcircuitabl( BddCircuit, BddNode );
          /* displays '1' */
          viewablexpr( Expr, ABL_VIEW_VHDL );
          freeablexpr( Expr );
          destroybddsystem( (bddsystem ∗)0 );
          destroybddcircuit( (bddcircuit ∗)0 );

SEE ALSO
       bdd(1)




BUG REPORT
       This tool is under development at the ASIM department of the LIP6
       laboratory.
       We need your feedback to improve documentation and tools.






ASIM/LIP6                       October 1, 1997             COFACTORBDDNODE(3)