ADDBDDNODEASSOC(3)
๐ ADDBDDNODEASSOC(3) โ addbddnodeassoc
okay so bestie, this page is part of BDD FUNCTIONS (manual section 3), and it's literally about adding a BDD node into a variable association. slay. ๐
โจ 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 Universit๏ฟฝ Pierre et Marie CURIE, in Paris, France.
- Web:
http://asim.lip6.fr/recherche/alliance/ - E-mail:
alliance-users@asim.lip6.fr
๐ SYNOPSIS ๐
#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 !"โ theVariableparameter must be less or equal to theBddSystem->NUMBER_VARfield.
bestie, that's the error to watch for: if the variable is out of range, it's giving error-message energy. ๐
๐ 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 ๐
๐ BUG REPORT ๐
This tool is under development at the ASIM department of the LIP6 laboratory. We need your feedback to improve documentation and tools. ๐ซถ
xoxo, bestie โ this page came from ASIM/LIP6, dated October 1, 1997, and its manual name is ADDBDDNODEASSOC(3). slay. ๐โจ
๐ฆ where this page comes from
- nixos 26.05: alliance 5.1.1-unstable-2025-02-24
- nixpkgs unstable: alliance 5.1.1-unstable-2025-02-24
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms