delbddassoc.3alc - Man Page
deletes a variable association.
Synopsis
#include "bdd101.h" int delbddassoc( BddSystem, BddAssoc ) bddsystem ∗BddSystem; bddassoc ∗BddAssoc;
Parameters
- BddSystem
The bdd system.
- BddAssoc
The variable association to delete.
Description
delbddassoc deletes the variable association BddAssoc in the bdd system BddSystem. If a null pointer is given, the default bdd system is used. For all the bdd nodes of the variable association BddAssoc, the number of external reference is decremented.
Return Value
delbddassoc returns 1 if the variable association is found, 0 otherwise.
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_AND, createablatom( "i0" ), createablatom( "i1" ) ); BddNode = addbddcircuitabl( BddCircuit, Expr ); freeablexpr( Expr ); Expr = createablbinexpr( ABL_OR, createablatom( "i2" ), createablatom( "i3" ) ); BddSubst = addbddcircuitabl( BddCircuit, Expr ); freeablexpr( Expr ); BddVariable = searchbddcircuitin( (bddcircuit ∗)0, "i0" ); Variable = getbddvarbyindex( (bddsystem ∗)0, BddVariable->INDEX ); Assoc = delbddassoc( (bddsystem ∗)0 ); addbddnodeassoc( (bddsystem ∗)0, Assoc, Variable, BddSubst ); BddNode = substbddnodeassoc( (bddsystem ∗)0, BddSubst, Assoc ); delbddassoc( (bddsystem ∗)0, Assoc ); Expr = convertbddcircuitabl( BddCircuit, BddNode ); /* displays ((i3 or i2) and i1) */ viewablexpr( Expr, ABL_VIEW_VHDL ); freeablexpr( Expr ); destroybddassoc( (bddsystem ∗)0 ); destroybddsystem( (bddsystem ∗)0 ); destroybddcircuit( (bddcircuit ∗)0 );
See Also
Info
October 1, 1997 ASIM/LIP6 BDD FUNCTIONS