Abstract
This paper deals with equivalence checking of high-level hardware design descriptions. For this purpose, we propose a method based on validity checking of the quantifier-free first-order logic with equality, combined with boolean validity checking. Since, in the first-order logic, arithmetic functions or inequalities can be abstractly represented by function or predicate symbols, its validity checking becomes more efficient than boolean-based one. The logic, however, ignores the original semantics of the function or predicate symbols. For example, the commutative law over addition cannot be handled. As a result, the verification results are often ‘false negative’. To overcome this difficulty, we propose an algorithm based on replacement of the function or predicate symbols with vectors of boolean formulas. To avoid replacing the entire original first-order formula with boolean functions, the algorithm utilizes counterexamples obtained from validity checking for the first-order logic. This paper also reports a preliminary experimental result for equivalence checking of high-level descriptions by a prototype implementation of the proposed algorithm.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Nelson, G., Oppen, D.C.: Simplification by Cooperating Decision Procedure. ACM Trans. on Programming Languages and Systems 1(2), 245–257 (1979)
Shostak, R.E.: A Practical Decision Procedure for Arithmetic with Function Symbols. Journal of ACM 26(2), 351–360 (1979)
Burch, J.R., Dill, D.L.: Automated Verification of Pipelined Microprocessor Control. In: CAV, pp. 68–80 (1994)
Jones, R.B., Dill, D.L., Burch, J.R.: Efficient Validity Checking for Processor Verification. ACM, 2–6 (1995)
Bryant, R.E., German, S.M., Velev, M.N.: Processor verification using efficient reductions of the logic of uninterpreted functions to propositional logic. ACM, 93–134 (1999)
Currie, D.W., Hu, A., Rajan, S., Fujita, M.: Automatic Formal Verification of DSP software. pp. DAC 2000, pp. 130–135 (2000)
Hamaguchi, K., Urushihara, H., Kashiwabara, T.: Verifying Signal-Transition Consistency of High-Level Designs Based on Symbolic Simulation. IEICE E85-D, 1587–1594 (2002)
Hamaguchi, K.: Symbolic Simulation Heuristics for High-Level Hardware Descriptions Including Uninterpreted Functions. IEICE E87-D(3), 637–641 (2004)
Takenaka, T., Mukaiyama, A., Wakabayashi, K., Nakada, M., Maekawa, A., Yamagiwa, H.: An Equivalence Checking between Behavioral Description and Register Transfer Level Description for Behavioral Synthesis (in Japanese). In: The proceedings of the 17th Karuizawa Workshop, pp. 555–560 (2004)
CVC Lite, http://verify.stanford.edu/CVCL/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Moritomo, A., Hamaguchi, K., Kashiwabara, T. (2004). Validity Checking for Quantifier-Free First-Order Logic with Equality Using Substitution of Boolean Formulas. In: Wang, F. (eds) Automated Technology for Verification and Analysis. ATVA 2004. Lecture Notes in Computer Science, vol 3299. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-30476-0_13
Download citation
DOI: https://doi.org/10.1007/978-3-540-30476-0_13
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-23610-8
Online ISBN: 978-3-540-30476-0
eBook Packages: Springer Book Archive