1EXISTBDDNODEASSOCON(3) BDD FUNCTIONS EXISTBDDNODEASSOCON(3)
2
3
4
6 existbddnodeassocon - computes an existential quantification.
7
9 #include "bdd101.h"
10 bddnode ∗existbddnodeassocon( BddSystem, BddNode, BddAssoc )
11 bddsystem ∗BddSystem;
12 bddnode ∗BddNode;
13 bddassoc ∗BddAssoc;
14
16 BddSystem The bdd system.
17
18 BddNode The bdd node to treat.
19
20 BddAssoc The variable association.
21
23 existbddnodeassocon suppress in BddNode, all the variables associated
24 with something in the variable association BddAssoc, in the bdd system
25 BddSystem. If a null pointer is given, the default bdd system is used.
26
28 existbddnodeassocon returns the computed bdd node.
29
31 "bad variable association xxx, error !"
32 The BddAssoc parameter must a valid variable association.
33
35 #include "bdd101.h"
36 bddsystem ∗BddSystem;
37 bddcircuit ∗BddCircuit;
38 bddnode ∗BddNode;
39 bddnode ∗BddSubst;
40 bddnode ∗BddVariable;
41 bddassoc ∗Assoc;
42 chain_list ∗Expr;
43 bddvar Variable;
44 BddSystem = createbddsystem( 100, 1000, 100, 50000 );
45 BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
46 Expr = createablbinexpr( ABL_AND,
47 createablatom( "i0" ),
48 createablatom( "i1" ) );
49 BddNode = addbddcircuitabl( BddCircuit, Expr );
50 freeablexpr( Expr );
51 BddVariable = searchbddcircuitin( (bddcircuit ∗)0, "i0" );
52 Variable = getbddvarbyindex( (bddsystem ∗)0, BddVariable->INDEX );
53 Assoc = addbddassoc( (bddsystem ∗)0 );
54 addbddnodeassoc( (bddsystem ∗)0, Assoc, Variable, BddSystem->ONE );
55 BddNode = existbddnodeassocon( (bddsystem ∗)0, BddNode, Assoc );
56 Expr = convertbddcircuitabl( BddCircuit, BddNode );
57 /* displays i1 */
58 viewablexpr( Expr, ABL_VIEW_VHDL );
59 freeablexpr( Expr );
60 destroybddassoc( (bddsystem ∗)0 );
61 destroybddsystem( (bddsystem ∗)0 );
62 destroybddcircuit( (bddcircuit ∗)0 );
63
65 bdd(1)
66
67
68
69
70
71
72ASIM/LIP6 October 1, 1997 EXISTBDDNODEASSOCON(3)