Scroll to navigation

UPVARBDD(3) BDD functions UPVARBDD(3)

ORIGIN

This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at LIP6 laboratory of Université Pierre et Marie CURIE, in Paris, France.

Web : http://asim.lip6.fr/recherche/alliance/
E-mail : alliance-users@asim.lip6.fr

NAME

upVarBdd - brings up an index in a BDD

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.

SEE ALSO

log(1), bdd(1), applyBdd(3), notBdd(3), constraintBdd(3), composeBdd(3), applyBinBdd(3), addListBdd(3), displayBdd(3), createNodeTermBdd(3).

BUG REPORT

This tool is under development at the ASIM department of the LIP6 laboratory.
We need your feedback to improve documentation and tools.

October 1, 1997 ASIM/LIP6