DOKK / manpages / debian 10 / alliance / existbddnodeassocoff.3.en
EXISTBDDNODEASSOCOFF(3) BDD FUNCTIONS EXISTBDDNODEASSOCOFF(3)

existbddnodeassocoff - computes an existantial quantification.

See the file buster/alliance/alc_origin.1.en.gz.

#include "bdd101.h"
bddnode ∗existbddnodeassocoff( BddSystem, BddNode, BddAssoc )

bddsystem ∗BddSystem;
bddnode ∗BddNode;
bddassoc ∗BddAssoc;

The bdd system.
The bdd node to treat.
The variable association.

existbddnodeassocoff suppress in the bdd node BddNode complemented, all the variables associated with something in the variable association BddAssoc, in the bdd system BddSystem. If a null pointer is given, the default bdd system is used.

existbddnodeassocoff returns the computed bdd node.

"bad variable association xxx, error !"

The BddAssoc parameter must a valid variable association.

#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 );

bdd(1)

See the file buster/alliance/alc_bug_report.1.en.gz.

October 1, 1997 ASIM/LIP6