EXISTBDDNODEASSOCOFF(3)
๐ existbddnodeassocoff โ the manual page (EXISTBDDNODEASSOCOFF(3)) ๐
okay bestie, buckle up โ we're reading the <pink>existbddnodeassocoff</pink> page together, and it's literally about existential quantification. iconic behavior. โจ
๐ธ NAME ๐ธ
existbddnodeassocoffโ computes an existential quantification. That's the whole name-line vibe, no cap. ๐
๐ฆ ORIGIN ๐ฆ
This software belongs to the ALLIANCE CAD SYSTEM, developed by the ASIM team at the 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 โญ
Here's the summoning spell:
#include "bdd101.h"
bddnode โexistbddnodeassocoff( BddSystem, BddNode, BddAssoc )
bddsystem โBddSystem;
bddnode โBddNode;
bddassoc โBddAssoc;
๐ PARAMETERS ๐
BddSystemโ the bdd system. Your main-character system, basically.BddNodeโ the bdd node to treat. This is the node getting the existential-quantification treatment.BddAssocโ the variable association. The association that controls which variables are in the mix.
๐ DESCRIPTION ๐
okay so <cyan>existbddnodeassocoff</cyan> suppresses, in the bdd node <pink>BddNode</pink> complemented, all the variables associated with something in the variable association <pink>BddAssoc</pink>, inside the bdd system <pink>BddSystem</pink>. If a null pointer is given, the default bdd system is used. periodt. ๐
๐ RETURN VALUE ๐
It returns the computed bdd node. That's it โ the computed bdd node, served fresh. โจ
๐ ERRORS ๐
"bad variable association xxx, error !"
This means the <pink>BddAssoc</pink> parameter must be a valid variable association. No fake associations, bestie โ it has to be valid.
๐ EXAMPLE ๐
Here's a full little demo:
#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_NAND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = 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, BddSystem->ONE );
BddNode = existbddnodeassocoff( (bddsystem โ)0, BddNode, Assoc );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays (not i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddassoc( (bddsystem โ)0 );
destroybddsystem( (bddsystem โ)0 );
destroybddcircuit( (bddcircuit โ)0 );
๐ง SEE ALSO ๐ง
bdd(1)โ go give it a read, iykyk.
๐ซถ BUG REPORT ๐ซถ
This tool is under development at the ASIM department of the LIP6 laboratory.
We need your feedback to improve documentation and tools. So bestie, if you spot something weird, send feedback โ they literally need it. ๐
๐ sign-off: this page is from ASIM/LIP6, dated October 1, 1997, and it's filed under EXISTBDDNODEASSOCOFF(3). mwah ๐
โจ
๐ฆ 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