SYNOPSYS
#include "logmmm.h" pNode upVarBdd(pBdd,oldIndex,newIndex) pNode pBdd; short oldIndex,newIndex;
PARAMETERS
- pBdd
- BDD in wich index is came up
- oldIndex
- index to come up
- newIndex
- new index
DESCRIPTION
upVarBdd() constructs a graph obtained by bringing up oldIndex to newIndex. This function is called by the BDDs reordering function.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 = upVarBdd(res,2,4); displayBdd(res,1); /* it will display @res INDEX 4 LOW = @nodeB HIGH = ONE @nodeB INDEX 3 LOW = ZERO HIGH = ONE */ destroyBdd(1);
ERROR
"upVarBdd : error - newIndex <= oldIndex"The new index must be higher than the old index.