Rechercher une page de manuel
restrictbddnode
Langue: en
Version: October 1, 1997 (fedora - 06/07/09)
Section: 3 (Bibliothèques de fonctions)
NAME
restrictbddnode - substitutes a variable by a zero or one, in a bdd.man2html: unable to open or read file man1/alc_origin.1
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.
- 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)man2html: unable to open or read file man1/alc_bug_report.1
Contenus ©2006-2024 Benjamin Poulain
Design ©2006-2024 Maxime Vantorre