1APPLYBDD(3)                      BDD functions                     APPLYBDD(3)
2
3
4

NAME

6       applyBdd - applies an operator to a list of BDD.
7

SYNOPSIS

9       #include "logmmm.h"
10       pNode applyBdd(oper,pt)
11       short oper;
12       chain_list *pt;
13

PARAMETERS

15       oper                operator          number          to          apply
16                           (OR,AND,XOR,NAND,NOR,NXOR,NOT)
17
18       pt                  chain_list of BDD.
19

DESCRIPTION

21       applyBdd() applies oper to a list of Bdd. This list can be  created  by
22       addListBdd() function. This function provides the basic method for cre‐
23       ating the representation of a function according to the operators in  a
24       boolean expression.
25

EXAMPLE

27       #include "mutnnn.h"      /* mbk utilities */
28       #include "logmmm.h"
29       pNode nodeA,nodeB,nodeC;
30       pNode res;
31       chain_list *pt;
32
33       initializeBdd(SMALL_BDD);
34       nodeA = createNodeTermBdd(3);
35       nodeB = createNodeTermBdd(3);
36       nodeC = createNodeTermBdd(4);
37       pt = NULL;
38       pt = addListBdd(pt,nodeA);
39       pt = addListBdd(pt,nodeB);
40       pt = addListBdd(pt,nodeC);
41       res = applyBdd(OR,pt);
42       displayBdd(res,1);
43
44       /* it will display
45       @res    INDEX = 4   LOW = @inter   HIGH = ONE
46       @inter  INDEX = 3   LOW = @nodeA   HIGH = ONE
47       @nodeA  INDEX = 2   LOW = ZERO        HIGH = ONE
48       */
49
50       destroyBdd(1);
51

ERRORS

53       "applyBdd : error - unknown operator"
54       the operator number must be in (OR,AND,XOR,NAND,NOR,NXOR,NOT)
55       "applyBdd : error - chained list is empty"
56       chained list pointer pt = NULL.
57       "applyBdd : error - bad operator"
58       The  number of arguments is 1 and the operator is distinct from NOT.
59       chained list pointer pt = NULL.
60

SEE ALSO

62       log(1),   bdd(1),   addListBdd(3),   applyBinBdd(3),   notBdd(3),  con‐
63       straintBdd(3), composeBdd(3), displayBdd(3), createNodeTermBdd(3).
64
65
66
67
68
69ASIM/LIP6                       October 1, 1997                    APPLYBDD(3)
Impressum