Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

composebddnode(3) [debian 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)

Check Out this Related Man Page

EXISTBDDNODEASSOCOFF(3) 					   BDD FUNCTIONS					   EXISTBDDNODEASSOCOFF(3)

NAME
existbddnodeassocoff - computes an existantial quantification. 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 *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) 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 EXISTBDDNODEASSOCOFF(3)
Man Page