APPLYBDDNODETERM(3) BDD FUNCTIONS APPLYBDDNODETERM(3) NAME applybddnodeterm - applies an operator on two bdd nodes. 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 ∗applybddnodeterm( BddSystem, Oper, Index, BddNode ) bddsystem ∗BddSystem; long Oper; bddindex Index; bddnode ∗BddNode; PARAMETERS BddSystem The bdd system. Oper The binary operator. Index The index of the terminal bdd node. BddNode The bdd node. DESCRIPTION applybddnodeterm computes the boolean function BddNode Oper and the terminal node corresponding to Index in the bdd system BddSystem. The Index parameter can take only the two following values BDD_INDEX_ONE and BDD_INDEX_ZERO. If a null pointer is given, the default bdd system is used. RETURN VALUE applybddnodeterm returns a pointer to the resulting bdd node with its number of external reference incremented. ERRORS "bad operator xxx error !" The Oper parameter must be a valid binary operator. EXAMPLE #include "bdd101.h" bddsystem ∗BddSystem; bddcircuit ∗BddCircuit; bddnode ∗BddNode; chain_list ∗Expr; BddSystem = createbddsystem( 100, 1000, 100, 50000 ); BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem ); addbddcircuitin( (bddcircuit ∗)0, "i0", 0, BDD_IN_MODE_FIRST ); BddNode = applybddnodeterm( (bddsystem ∗)0, ABL_XOR, BDD_INDEX_ONE, searchbddcircuitin( (bddcircuit ∗)0, "i0" ) ); Expr = convertbddcircuitabl( (bddcircuit ∗)0, BddNode ); /* displays (not i0) */ 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 APPLYBDDNODETERM(3)