Heuristics and Experiments on BDD Representation of Boolean Functions for Expert Systems in Software Verification Domains
Binary decision diagrams (BDDs) are graph-theoretical, compact representation of Boolean functions, successfully applied in the domain of expert systems for practical VLSI design. The authors have been developing the methods of using BDDs for expert systems that mechanically try to prove the termination of rule-based computer programs. To make BDD representation really practical, however, we need good heuristics for ordering Boolean variables and operations. In this paper, we will present some heuristic methods that could affect the performance and evaluate them through the comprehensive experiments on sample rule-based programs taken from practical domains such as hardware diagnosis, software specification, and mathematics. The results show the big difference among the heuristics and provide us useful information for optimizing the overall systems.
Unable to display preview. Download preview PDF.
- 1.Akers, S. B.: Binary decision diagrams, IEEE Trans. Comput., Vol. C-27, No. 6, pp.509–516 (1978)Google Scholar
- 2.Bryant, R. E.: Graph-based algorithm for boolean function manipulation, IEEE Trans. Comput., Vol. C-35, No. 5, pp.677–691 (1986)Google Scholar
- 3.Bundy, A.: Rewrite rules, The Computer Modelling of Mathematical Reasoning, Academic Press, pp.115–149 (1983)Google Scholar
- 4.Coudert, O. and Madre, J. C: Towards an interactive fault tree analyser, Proc. IASTED Int. Conf. on Reliability, Quality Control and Risk Assessment (1992)Google Scholar
- 5.Detlefs, D. and Forgaad, R.: A procedure for automatically proving the termination of a set of rewrite rules, Proc. of 1st Conf. on Rewriting Techniques and Applications, Springer, LNCS 202, pp.255–270 (1985)Google Scholar
- 6.Kondo, H. and Kurihara, M.: Termination verification system for term rewriting systems using binary decision diagram, Intern. Journal of Japanese Society for Artificial Intelligence, Vol.13, No.5, pp.822–834 (1998) (in Japanese)Google Scholar
- 8.Kurihara, M. and Kondo, H.: Binary decision diagrams for mechanical verification of precedence-based termination of rewrite rules, Poster Proc. of 5th Pacific Rim Int. Conf. on Artificial Intelligence, pp.7–12 (1998)Google Scholar
- 9.Madre, J. C. and Coudert, O.: A logically complete reasoning maintenance system based on a logical constraint solver, Proc. IJCAI, pp.294–299 (1991)Google Scholar
- 10.Malik, S., et al.: Logic verification using binary decision diagrams in a logic synthesis environment, Proc. IEEE Int. Conf. on Computer-Aided Design, pp.6–9 (1988)Google Scholar
- 12.Plaisted, D. A.: Equational reasoning and term rewriting systems, in Gabbay, D. M. (ed.), Handbook of Logic in Artificial Intelligence and Logic Programming, pp.274–364 (1993)Google Scholar
- 13.Steinbach, J.: Termination of rewriting, Ph.D thesis, Univ. Kaiserslautern, Germany (1994)Google Scholar
- 14.Steinbach, J. and Kühler, U.: Check your ordering — termination proofs and open problems, SEKI report SR-90-25(SFB), Univ. Kaiserslautern, Germany (1990)Google Scholar