APPLYBDDNODE(3)
π applybddnode(3) β the one where you smash two BDD nodes together
okay bestie, welcome to APPLYBDDNODE(3) from the BDD FUNCTIONS manual section β yes, section 3, the library-call girlies. this one's short and sweet and honestly kind of iconic, so let's get into it π
β¨ NAME β¨
applybddnode β applies an operator on two bdd nodes.
like, that's it. that's the whole job. she takes two nodes and an operator and she does the thing. periodt. π
πΈ 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
ngl, a whole CAD system born in Paris? it's giving main character energy and I'm obsessed. π«Ά
π¦ SYNOPSIS π¦
#include "bdd101.h"
bddnode βapplybddnode( BddSystem, Oper, BddNode1, BddNode2 )
bddsystem βBddSystem;
long Oper;
bddnode βBddNode1;
bddnode βBddNode2;
look at her. four little params. no cap, this is the whole vibe check. π
π PARAMETERS π
BddSystemβ the bdd system. your whole little universe, bestie. πͺOperβ the binary operator. the what-are-we-even-doing-here of it all.BddNode1β the first bdd node.BddNode2β the second bdd node. (yes, she's the second one. respect the order.) β¨
π DESCRIPTION π
applybddnode computes the boolean function BddNode1 Oper BddNode2 in the bdd system BddSystem. literally just "node one, [operator], node two" β like the most dramatic little math sandwich you've ever seen. π₯ͺ
If a null pointer is given, the default bdd system is used. so if you're feeling lazy and pass a (bddsystem β)0, she's got you. no judgement, we've all been there. π
π RETURN VALUE π
applybddnode returns a pointer to the resulting bdd node with its number of external reference incremented.
β οΈ bestie, hear me β that reference count goes UP. she's handing you a node that counts on you. don't ghost it. π
π ERRORS π
"bad operator xxx error !"β TheOperparameter must be a valid binary operator.
that's the only error and honestly? relatable. give her a bad operator and she WILL say something. π
β EXAMPLE β
#include "bdd101.h"
bddsystem βBddSystem;
bddcircuit βBddCircuit;
bddnode βBddNode;
chain_list βExpr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
addbddcircuitin( (bddcircuit β)0, "i0", 0, BDD_IN_MODE_FIRST );
addbddcircuitin( (bddcircuit β)0, "i1", 0, BDD_IN_MODE_FIRST );
BddNode = applybddnode( (bddsystem β)0,
ABL_AND,
searchbddcircuitin( (bddcircuit β)0, "i0" ),
searchbddcircuitin( (bddcircuit β)0, "i1" ) );
Expr = convertbddcircuitabl( (bddcircuit β)0, BddNode );
/* displays (i0 and i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem β)0 );
destroybddcircuit( (bddcircuit β)0 );
okay so the whole arc here: build a system, build a circuit called "hello_world" (iconic name, no notes), add inputs "i0" and "i1", ABL_AND them together, convert to an ABL expr, and it displays (i0 and i1). then she cleans up after herself β freeablexpr, destroybddsystem, destroybddcircuit. we LOVE a girl who cleans up. π§π
π₯ SEE ALSO π₯
iykyk, go read that one too. π
π BUG REPORT π
This tool is under development at the ASIM department of the LIP6 laboratory.
We need your feedback to improve documentation and tools.
fr fr, they're literally asking. if something's weird, tell them β it's giving community, it's giving glow-up era. π«Ά
written by the ASIM/LIP6 girlies, dated <b>October 1, 1997</b> β and the page header was APPLYBDDNODE(3) while the footer said ASIM/LIP6 ... October 1, 1997 ... APPLYBDDNODE(3). yes bestie, that's the whole 411, mwah πβ¨
π¦ where this page comes from
- fedora 43: alliance-devel 5.1.1-35.20160506gitd8c05cd.fc42 Β· GPL-2.0-only
- fedora 43: alliance-devel 5.1.1-35.20160506gitd8c05cd.fc42 Β· GPL-2.0-only
- fedora 44: alliance-devel 5.1.1-35.20160506gitd8c05cd.fc42 Β· GPL-2.0-only
- fedora 44: alliance-devel 5.1.1-35.20160506gitd8c05cd.fc42 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms