Average Path Length as a Paradigm for the Fast Evaluation of Functions Represented by Binary Decision Diagrams

Abstract : This paper focuses on the average path length (APL) of BDD's for switching functions. APL is a metric for the time it takes to evaluate the function by a computer program. We derive the APL for the AND, OR, parity, carry-out, comparison, threshold symmetric, and majority functions. We also consider the average of the APL for various classes of functions, including symmetric, threshold symmetric, and unate cascade. For symmetric functions, we show the average APL is close to the maximum path length, n, the number of variables. We show there are exactly two functions, the parity functions, that achieve the upper bound, n, on the APL for BDD's over all functions dependent on n variables. All other functions have an APL strictly less than n. We show that the APL of BDD's over all functions dependent on n variables is bounded below by 2 - 1/2n-1 . The set of functions that achieves this small value is uniquely the set of unate cascade realizable functions. We also show that the APL for benchmark functions is typically much less than for random functions.

[1]  Yuri Breitbart,et al.  Analysis of Algorithms for the Evaluation of Monotonic Boolean Functions , 1978, IEEE Transactions on Computers.

[2]  Michael Z. Hanani An optimal evaluation of Boolean expressions in an online query system , 1977, CACM.

[3]  Bernard M. E. Moret,et al.  Symmetric and Threshold Boolean Functions Are Exhaustive , 1983, IEEE Transactions on Computers.

[4]  Michael Z. Hanani An Optimal Evaluation of Boolean Expressions in an On-Line Query System , 1976, GI Jahrestagung.

[5]  TingTing Hwang,et al.  Binary decision diagram with minimum expected path length , 2001, Proceedings Design, Automation and Test in Europe. Conference and Exhibition 2001.

[6]  Bernard M. E. Moret,et al.  Decision Trees and Diagrams , 1982, CSUR.

[7]  Donald A. Bell,et al.  Decision Trees, Tables, and Lattices , 1978 .

[8]  Yasuhiko Sasaki,et al.  Top-down pass-transistor logic design , 1996, IEEE J. Solid State Circuits.

[9]  Donald E. Knuth,et al.  Mathematical Analysis of Algorithms , 1971, IFIP Congress.