ISBDDVARINSUPPORT(3)
π ISBDDVARINSUPPORT(3) π
ok so bestie, welcome to the bdd function family β this one lives in the BDD FUNCTIONS section of the third manual, and it's genuinely one of the cutest little helpers in the whole set. it's called isbddvarinsupport and it literally just answers one yes/no question for you. no cap. π¦
β¨ ORIGIN β¨
ok so this software is part of the ALLIANCE CAD SYSTEM, built by the ASIM team at the LIP6 laboratory of UniversitΓ© Pierre et Marie CURIE, in Paris, France. very main character, very French, we love that for them. π₯β¨
- Web :
http://asim.lip6.fr/recherche/alliance/ - E-mail :
alliance-users@asim.lip6.fr
πΈ SYNOPSIS πΈ
ok here's the vibe, exactly as written:
#include "bdd101.h"
int isbddvarinsupport( BddSystem, BddNode, Variable )
bddsystem βBddSystem;
bddnode βBddNode;
bddvar Variable;
π PARAMETERS π
three args, all besties, here's the rundown:
BddSystemβ the bdd system π (and heads up: if you hand it a null pointer, the default bdd system gets used instead, no drama)BddNodeβ the bdd node in question π§Variableβ the variable number you're asking about β
π DESCRIPTION π
ok so here's what this icon actually does: isbddvarinsupport tests whether the variable numbered Variable shows up in the support of the bdd node BddNode, inside the bdd system BddSystem. πβ¨
and the cute part: if a null pointer is given, the default bdd system is used. so you don't have to pass anything if you're feeling lazy. slay. π
π₯ RETURN VALUE π₯
1if Variable appears β¨0otherwise π
that's it. that's the whole answer. periodt.
π ERRORS π
"variable xxx out of range, error !"β the Variable parameter must be less or equal to theBddSystem->NUMBER_VARfield. that's the rule, bestie, out of range means error. π
π EXAMPLE π
ok here's a whole little program showing the vibe β copying it exactly:
#include "bdd101.h"
bddsystem βBddSystem;
bddcircuit βBddCircuit;
bddnode βBddNode;
bddnode βBddVariable;
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 );
BddVariable = searchbddcircuitin( (bddcircuit β)0, "i0" );
Variable = getbddvarbyindex( (bddsystem β 0), BddVariable->INDEX ) );
/* displays 1 */
printf( "%d", isbddvarinsupport( (bddsystem β)0, BddNode, Variable ) );
destroybddsystem( (bddsystem β)0 );
destroybddcircuit( (bddcircuit β)0 );
see that /* displays 1 */? yeah. it prints 1. we love a predictable queen. π (and yes, that example is written exactly like the original β i'm not touching it, iykyk.)
π«Ά SEE ALSO π«Ά
bdd(1)β go read it, bestie, it's the gateway β¨
π BUG REPORT π
ok so this tool is under development at the ASIM department of the LIP6 laboratory. π οΈ
and fr fr: they need your feedback to improve documentation and tools. so if something's weird, tell them. be nice about it. π₯Ίπ
lowkey reminder: this whole page is the ASIM/LIP6 era β dated October 1, 1997 β and it's page ISBDDVARINSUPPORT(3) of the manual. genuinely vintage. iconic behavior. πβ¨π¦
π¦ 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