Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

addbddnodeassoc(3) [debian man page]

ADDBDDNODEASSOC(3)						   BDD FUNCTIONS						ADDBDDNODEASSOC(3)

NAME
addbddnodeassoc - adds a bdd node in a variable association. 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" bddassoc *addbddnodeassoc( BddSystem, BddAssoc, Variable, BddNode ) bddsystem *BddSystem; bddassoc *BddAssoc; bddvar Variable; bddnode *BddNode; PARAMETERS
BddSystem The bdd system. BddAssoc The variable association. Variable The variable number. BddNode The bdd node to add. DESCRIPTION
addbddnodeassoc adds the bdd node BddNode, 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 BddNode is incremented. RETURN VALUE
addbddnodeassoc returns a pointer to the variable association. 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 ); 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 ADDBDDNODEASSOC(3)

Check Out this Related Man Page

COMPOSEBDDNODE(3)						   BDD FUNCTIONS						 COMPOSEBDDNODE(3)

NAME
composebddnode - substitutes a variable by a bdd in another bdd. 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 *composebddnode( BddSystem, BddNode, Variable, BddSubst ) bddsystem *BddSystem; bddnode *BddNode; bddvar Variable; bddnode *BddSubst; PARAMETERS
BddSystem The bdd system. BddNode The bdd node. Variable The variable to find. BddSubst The bdd to substitute with. DESCRIPTION
composebddnode substitutes all the occurency of the variable Variable in the bdd node BddNode by the bdd node BddSubst, in the bdd system BddSystem. If a null pointer is given, the default bdd system is used. RETURN VALUE
composebddnode returns the resulting bdd node. 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 *BddVariable; bddnode *BddNode; bddnode *BddSubst; 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 ); BddNode = composebddnode( (bddsystem *)0, BddNode, Variable, BddSubst ); Expr = convertbddcircuitabl( BddCircuit, BddNode ); /* displays (i1 and (i2 or i3)) */ 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 COMPOSEBDDNODE(3)
Man Page