Binary Decision Diagrams: from Tree Compaction to Sampling

07/15/2019
by   Julien Clément, et al.
0

Any Boolean function corresponds with a complete full binary decision tree. This tree can in turn be represented in a maximally compact form as a direct acyclic graph (dag) where common subtrees are factored and shared, keeping only one copy of each unique subtree. This yields the celebrated and widely used structure called reduced ordered binary decision diagram (robdd). We propose to revisit the classical compaction process to give a new way of enumerating robdds of a given size without considering fully expanded trees and the compaction step. Our method also provides an unranking procedure for the set of robdds. As a by-product we get a random uniform and exhaustive sampler for robdds for a given number of variables and size. For efficiency our algorithms rely on a precomputation step. Finally, we give some key ideas to extend the approach to other strategies of compaction, in relation with variants of bdds (namely qbdds and zbdds).

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset