Provided by: alliance_5.0-20120515-6_amd64
NAME
existbddnodeassocoff - computes an existantial quantification.
SYNOPSYS
#include "bdd101.h" bddnode ∗existbddnodeassocoff( BddSystem, BddNode, BddAssoc ) bddsystem ∗BddSystem; bddnode ∗BddNode; bddassoc ∗BddAssoc;
PARAMETERS
BddSystem The bdd system. BddNode The bdd node to treat. BddAssoc The variable association.
DESCRIPTION
existbddnodeassocoff suppress in the bdd node BddNode complemented, all the variables associated with something in the variable association BddAssoc, in the bdd system BddSystem. If a null pointer is given, the default bdd system is used.
RETURN VALUE
existbddnodeassocoff returns the computed bdd node.
ERRORS
"bad variable association xxx, error !" The BddAssoc parameter must a valid variable association.
EXAMPLE
#include "bdd101.h" bddsystem ∗BddSystem; bddcircuit ∗BddCircuit; bddnode ∗BddNode; bddnode ∗BddSubst; bddnode ∗BddVariable; bddassoc ∗Assoc; chain_list ∗Expr; bddvar Variable; BddSystem = createbddsystem( 100, 1000, 100, 50000 ); BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem ); Expr = createablbinexpr( ABL_NAND, createablatom( "i0" ), createablatom( "i1" ) ); BddNode = addbddcircuitabl( BddCircuit, Expr ); freeablexpr( Expr ); BddVariable = searchbddcircuitin( (bddcircuit ∗)0, "i0" ); Variable = getbddvarbyindex( (bddsystem ∗)0, BddVariable->INDEX ); Assoc = addbddassoc( (bddsystem ∗)0 ); addbddnodeassoc( (bddsystem ∗)0, Assoc, Variable, BddSystem->ONE ); BddNode = existbddnodeassocoff( (bddsystem ∗)0, BddNode, Assoc ); Expr = convertbddcircuitabl( BddCircuit, BddNode ); /* displays (not i1) */ viewablexpr( Expr, ABL_VIEW_VHDL ); freeablexpr( Expr ); destroybddassoc( (bddsystem ∗)0 ); destroybddsystem( (bddsystem ∗)0 ); destroybddcircuit( (bddcircuit ∗)0 );
SEE ALSO
bdd(1)