1DESTROYBDDASSOC(3) BDD FUNCTIONS DESTROYBDDASSOC(3)
2
3
4
6 destroybddassoc - frees all the variable associations.
7
9 #include "bdd101.h"
10 bddassoc ∗destroybddassoc( BddSystem )
11 bddsystem ∗BddSystem;
12
14 BddSystem The bdd system.
15
17 destroybddassoc frees all the variable associations in the bdd system
18 BddSystem. If a null pointer is given, the default bdd system is used.
19
21 destroybddassoc returns nothing.
22
25 #include "bdd101.h"
26 bddsystem ∗BddSystem;
27 bddcircuit ∗BddCircuit;
28 bddnode ∗BddNode;
29 bddnode ∗BddSubst;
30 bddnode ∗BddVariable;
31 bddassoc ∗Assoc;
32 chain_list ∗Expr;
33 bddvar Variable;
34 BddSystem = createbddsystem( 100, 1000, 100, 50000 );
35 BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
36 Expr = createablbinexpr( ABL_AND,
37 createablatom( "i0" ),
38 createablatom( "i1" ) );
39 BddNode = addbddcircuitabl( BddCircuit, Expr );
40 freeablexpr( Expr );
41 Expr = createablbinexpr( ABL_OR,
42 createablatom( "i2" ),
43 createablatom( "i3" ) );
44 BddSubst = addbddcircuitabl( BddCircuit, Expr );
45 freeablexpr( Expr );
46 BddVariable = searchbddcircuitin( (bddcircuit ∗)0, "i0" );
47 Variable = getbddvarbyindex( (bddsystem ∗)0, BddVariable->INDEX );
48 Assoc = addbddassoc( (bddsystem ∗)0 );
49 addbddnodeassoc( (bddsystem ∗)0, Assoc, Variable, BddSubst );
50 BddNode = substbddnodeassoc( (bddsystem ∗)0, BddSubst, Assoc );
51 delbddassoc( (bddsystem ∗)0, Assoc );
52 Expr = convertbddcircuitabl( BddCircuit, BddNode );
53 /* displays ((i3 or i2) and i1) */
54 viewablexpr( Expr, ABL_VIEW_VHDL );
55 freeablexpr( Expr );
56 destroybddassoc( (bddsystem ∗)0 );
57 destroybddsystem( (bddsystem ∗)0 );
58 destroybddcircuit( (bddcircuit ∗)0 );
59
61 bdd(1)
62
63
64
65
66
67
68ASIM/LIP6 October 1, 1997 DESTROYBDDASSOC(3)