composebdd(3) - Linux man page

Name

composeBdd - substitutes an index by a BDD in another BDD

Synopsys

#include "logmmm.h"
pNode composeBdd(pBdd1,pBdd2,index)
pNode pBdd1;
pNode pBdd2;
short index;

Parameters

pBdd1

BDD in wich index is substituted

pBdd2

BDD that replaces index

index

index to substitute

Description

composeBdd() constructs the graph for the function obtained by composing pBdd1 and pBdd2. This function can be used when an auxiliary variable has been mistaken for a primary input.

Example

#include "mutnnn.h"

/* mbk utilities */

#include "logmmm.h"
pNode nodeA,nodeB;
pNode res;

initializeBdd(SMALL_BDD);
nodeA = createnodetermbdd(3);
nodeB = createnodetermbdd(3);

res = applyBinBdd(OR,nodeA,nodeB);

/* res = (OR a b) */

res = composeBdd(res,notBdd(nodeB),2);

/* composition : a = (NOT B) */

displayBdd(res,1);

/* it will display
@res ONE
*/
destroyBdd(1);

See Also

log(1), bdd(1), applybdd(3), notbdd(3), constraintbdd(3), applybinbdd(3), addlistbdd(3), displaybdd(3), createnodetermbdd(3).

Referenced By

numbernodeallbdd(3), numbernodebdd(3), simplifdconebdd(3), supportchain_listbdd(3), upvarbdd(3)