extern int bdd_markwidth(int bdd, int var1, int var2) { int level; int seenTerminals[2]; int ret; seenTerminals[0] = 0; seenTerminals[1] = 0; level = bdd_var2level(var1); if(bdd_var2level(var2) > level) level = bdd_var2level(var2); ret = bdd_markwidth_rec(bdd, level, seenTerminals); bdd_unmark(bdd); return ret; }
/* ML type: varnum -> level */ EXTERNML value mlbdd_bdd_var2level(value num) /* ML */ { return Val_long(bdd_var2level(Int_val(num))); }