addlistbdd(3) - Linux man page

Name

addListBdd - adds a BDD to a chained list of BDDs

Synopsys

#include "logmmm.h"
chain_list *addListBdd(pt,pBdd)
chain_list *pt;
pNode pBdd;

Parameters

pt

old chain_list pointer

pBdd

BDD to add

Description

addListBdd() adds pBdd to pt. This function computes an optimal reordering on pt that minimizes the number of nodes when the applyBdd() function is called.

Example

#include "mutnnn.h"

/* mbk utilities */

#include "logmmm.h"
pNode nodeA,nodeB,nodeC;
pNode res;
chain_list *pt;

initializeBdd(SMALL_BDD);
nodeA = createnodetermbdd(3);
nodeB = createnodetermbdd(3);
nodeC = createNodeTermBdd(4);
pt = NULL;
pt = addListBdd(pt,nodeA);
pt = addListBdd(pt,nodeB);
pt = addListBdd(pt,nodeC);
res = applyBdd(OR,pt);
displayBdd(res,1);

/* it will display
@res INDEX = 4 LOW = @inter HIGH = ONE
@inter INDEX = 3 LOW = @nodeA HIGH = ONE

@nodeA INDEX = 2 LOW = ZERO

HIGH = ONE

*/
/* total number of nodes = 5 */
destroyBdd(1);

See Also

log(1), bdd(1), addListBdd(3), addListBdd(3), notbdd(3), constraintbdd(3), composebdd(3), displaybdd(3), createnodetermbdd(3).

Referenced By

applybdd(3), applybinbdd(3), numbernodeallbdd(3), numbernodebdd(3), simplifdczerobdd(3), supportchain_listbdd(3), upvarbdd(3)