debian man page for substbddnodeassoc

Query: substbddnodeassoc

OS: debian

Section: 3

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

SUBSTBDDNODEASSOC(3)						   BDD FUNCTIONS					      SUBSTBDDNODEASSOC(3)

NAME
substbddnodeassoc - substitutes a set of variables with a set of bdd node.
ORIGIN
This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at LIP6 laboratory of Universite 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 *substbddnodeassoc( 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
substbddnodeassoc substitutes in the bdd node BddNode all the variables associated to something in the variable association BddAssoc, with the corresponding bdd node, in the bdd system BddSystem. If a null pointer is given, the default bdd system is used.
RETURN VALUE
substbddnodeassoc returns the computed bdd node.
ERRORS
"variable xxx out of range, error !" The Variable parameter must be less or equal to the BddSystem->NUMBER_VAR field. "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_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 ); 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
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 SUBSTBDDNODEASSOC(3)
Related Man Pages
composebddnode(3) - debian
delbddassoc(3) - debian
delbddnodeassoc(3) - debian
satisfybddnode(3) - debian
simpbddnodedcon(3) - debian
Similar Topics in the Unix Linux Community
Adding the individual columns of a matrix.
awk or sed - Convert 2 lines to 1 line
Is UNIX an open source OS ?
Detecting unused variables...
A (ksh) Library For and From UNIX.com