1ABLTOBDDCCT(3) BDD functions ABLTOBDDCCT(3)
2
3
4
6 ablToBddCct - converts an ABL into a BDD within a circuit
7
9 #include "logmmm.h"
10 pNode ablToBddCct(pC,expr)
11 pCircuit pC;
12 chain_list *expr;
13
15 pC Circuit in which is made the conversion
16
17 expr expression to convert
18
20 ablToBddCct() constructs the graph that is computed from expr. This
21 function provides the basic method for constructing easily the BDDs.
22 The applyBdd() function is called recursively by going through the ABL.
23
25 #include "mutnnn.h" /* mbk utilities */
26 #include "logmmm.h"
27 chain_list *expr;
28 pNode res;
29 pCircuit pC;
30
31 initializeBdd(SMALL_BDD);
32 pC = initializeCct("circuit 1",10,10);
33
34 addInputCct(pC,"a");
35 addInputCct(pC,"b");
36
37 /* let's suppose that expr = (OR (AND (NOT a) b) a) */
38
39 res = ablToBddCct(pC,expr);
40 displayBdd(res,1);
41
42 /* it will display
43 @res INDEX = 3 LOW = @nodeA HIGH = ONE
44 @nodeA INDEX = 2 LOW = ZERO HIGH = ONE
45 */
46
47 destroyCct(pC);
48 destroyBdd(1);
49
51 log(1), bdd(1), abl(1), bddToAblCct(3).
52
53
54
55
56
57ASIM/LIP6 October 1, 1997 ABLTOBDDCCT(3)