Polynomial Bounds of CFLOBDDs against BDDs
<|reference_start|>Polynomial Bounds of CFLOBDDs against BDDs: Binary Decision Diagrams (BDDs) are widely used for the representation of Boolean functions. Context-Free-Language Ordered Decision Diagrams (CFLOBDDs) are a plug-compatible replacement for BDDs -- roughly, they are BDDs augmented with a certain form of procedure call. A natural question to ask is, ``For a given Boolean function $f$, what is the relationship between the size of a BDD for $f$ and the size of a CFLOBDD for $f$?'' Sistla et al. established that, in the best case, the CFLOBDD for a function $f$ can be exponentially smaller than any BDD for $f$ (regardless of what variable ordering is used in the BDD); however, they did not give a worst-case bound -- i.e., they left open the question, ``Is there a family of functions $\{ f_i \}$ for which the size of a CFLOBDD for $f_i$ must be substantially larger than a BDD for $f_i$?'' For instance, it could be that there is a family of functions for which the BDDs are exponentially more succinct than any corresponding CFLOBDDs.   This paper studies such questions, and answers the second question posed above in the negative. In particular, we show that by using the same variable ordering in the CFLOBDD that is used in the BDD, the size of a CFLOBDD for any function $f$ cannot be far worse than the size of the BDD for $f$. The bound that relates their sizes is polynomial: If BDD $B$ for function $f$ is of size $|B|$ and uses variable ordering $\textit{Ord}$, then the size of the CFLOBDD $C$ for $f$ that also uses $\textit{Ord}$ is bounded by $O(|B|^3)$.   The paper also shows that the bound is tight: there is a family of functions for which $|C|$ grows as $\Omega(|B|^3)$.<|reference_end|>
@article{zhi2024polynomial,
    title={Polynomial Bounds of CFLOBDDs against BDDs},
    author={Xusheng Zhi (University of Wisconsin-Madison and Peking University)
  and Thomas Reps (University of Wisconsin-Madison)},
    journal={arXiv preprint arXiv:2406.01525},
    year={2024},
    archivePrefix={arXiv},
    eprint={2406.01525},
    primaryClass={cs.SC cs.DM cs.DS cs.FL}
}