delbddnodeassoc.3alc - Man Page
deletes a bdd node in a variable association.
Synopsis
#include "bdd101.h" int delbddnodeassoc( BddSystem, BddAssoc, Variable ) bddsystem ∗BddSystem; bddassoc ∗BddAssoc; bddvar Variable;
Parameters
- BddSystem
The bdd system.
- BddAssoc
The variable association.
- Variable
The variable number.
Description
delbddnodeassoc deletes the bdd node associated to the variable number Variable, in the variable association BddAssoc, in the bdd system BddSystem. If a null pointer is given, the default bdd system is used. The number of external reference of the associated bdd node is incremented.
Return Value
delbddnodeassoc returns 1 if the variable is found, 0 otherwise.
Errors
"variable xxx out of range, error !"
The Variable parameter must be less or equal to the BddSystem->NUMBER_VAR field.
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 = addbddassoc( (bddsystem ∗)0 ); addbddnodeassoc( (bddsystem ∗)0, Assoc, Variable, BddSubst ); BddNode = substbddnodeassoc( (bddsystem ∗)0, BddSubst, Assoc ); delbddnodeassoc( (bddsystem ∗)0, Assoc, Variable ); 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