ablToBddCct.3alc man page

ablToBddCct ā€” converts an ABL into a BDD within a circuit

Synopsis

#include "logmmm.h"
pNode ablToBddCct(pC,expr)
pCircuit pC;
chain_list *expr;

Parameters

pC

Circuit in which is made the conversion

expr

expression to convert

Description

ablToBddCct() constructs the graph that is computed from expr. This function provides the basic method for constructing easily the BDDs. The applyBdd() function is called recursively by going through the ABL.

Example

#include "mutnnn.h"		/* mbk utilities */
#include "logmmm.h"
chain_list *expr;
pNode res;
pCircuit pC;

initializeBdd(SMALL_BDD);
pC = initializeCct("circuit 1",10,10);

addInputCct(pC,"a");
addInputCct(pC,"b");

	/* let's suppose that expr = (OR (AND (NOT a) b) a) */

res = ablToBddCct(pC,expr);
displayBdd(res,1);

/* it will display 
@res      INDEX = 3   LOW = @nodeA   HIGH = ONE 
@nodeA    INDEX = 2   LOW = ZERO     HIGH = ONE
*/

destroyCct(pC);
destroyBdd(1);

See Also

log(1), bdd(1), abl(1), bddToAblCct(3).

Referenced By

bddToAblCct.3alc(3).

October 1, 1997 ASIM/LIP6 BDD functions