debian man page for restrictbddnode

Query: restrictbddnode

OS: debian

Section: 3

Links: debian man pages   all man pages

Forums: unix linux community   forum categories

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

RESTRICTBDDNODE(3)						   BDD FUNCTIONS						RESTRICTBDDNODE(3)

NAME
restrictbddnode - substitutes a variable by a zero or one, in a 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 *restrictbddnode( 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
restrictbddnode 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. The BddSubst must be a the node BddSystem->ONE or BddSystem->ZERO.
RETURN VALUE
restrictbddnode 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. "index xxx out of range, error !" The BddSubst parameter must have its index less than BDD_INDEX_MIN.
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_OR, createablatom( "i0" ), createablatom( "i1" ) ); BddNode = addbddcircuitabl( BddCircuit, Expr ); freeablexpr( Expr ); BddSubst = BddSystem->ONE; BddVariable = searchbddcircuitin( (bddcircuit *)0, "i0" ); Variable = getbddvarbyindex( (bddsystem *)0, BddVariable->INDEX ); BddNode = restrictbddnode( (bddsystem *)0, BddNode, Variable, BddSubst ); Expr = convertbddcircuitabl( BddCircuit, BddNode ); /* displays '1' */ 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 RESTRICTBDDNODE(3)
Related Man Pages
addbddnodeassoc(3) - debian
applybddnodenot(3) - debian
cofactorbddnode(3) - debian
delbddnodeassoc(3) - debian
substbddnodeassoc(3) - debian
Similar Topics in the Unix Linux Community
Variable Testing for size
Variable within a Variable
Substitute Variable
Variable Substitution
How to get an Indirect Variable Value..?