Search code examples
binary-decision-diagramcudd

CUDD package : Way to pass a specific variable order?


I am working with the CUDD package to do BDD manipulations. I was wondering if anyone knows of a way to pass a specific variable order to instruct the program to use this order while building BDDs. I am working with Boolean functions that have a relatively small number of variables.

In fact, even if there is a way to pass to the program a particular input variable to root the BDD at, that would serve my purpose as well. If anyone knows how to do this, then I would really appreciate the help. I went through the documentation, and I did not find anything to this effect. Maybe I missed something.


Solution

  • You can set the reorder algorithm to CUDD_REORDER_NONE

    Cudd_ReduceHeap(manager, CUDD_REORDER_NONE, 0);
    

    In this way the order of the variables is given by the order you introduce them.