Search code examples
pythonlogicbinary-decision-diagrampyeda

Any way to reorder variables for binary decision diagrams?


I am working on a teaching tool for binary decision diagrams in which there is also a feature for variable reordering. Can anyone suggest a suitable library which implements variable reordering while building the tree or some kind of algorithm which implements the same ?

It would be best if I could work with a library like pyeda, buDDy or pycudd because I am already familiar with these libraries.

Thanks and comment if you need any kind of clarification..


Solution

  • Have you looked at dd, by Ioannis Filippidis?

    I'm the author of pyeda. Implementing ROBDDs in Python was definitely fun, and can probably have some educational value, but it definitely doesn't do any automatic variable reordering, so if that's a requirement I would recommend looking at dd or the other ones on your list.