Using an induction prover for verifying arithmetic circuits

被引:7
作者
Kapur D. [1 ]
Subramaniam M. [2 ]
机构
[1] Department of Computer Science, University of New Mexico, Albuquerque
[2] Microprocessor Division, HAL Computer Systems, Fujitsu Inc., Campbell
基金
中国国家自然科学基金;
关键词
Arithmetic circuits; Automated reasoning; Decision procedures; Hardware verification; Induction; Rewriting;
D O I
10.1007/PL00010808
中图分类号
学科分类号
摘要
We show that existing theorem proving technology can be used effectively for mechanically verifying a family of arithmetic circuits. A theorem prover implementing: (i) a decision procedure for quantifier-free Presburger arithmetic with uninterpreted function symbols; (ii) conditional rewriting; and (iii) heuristics for carefully selecting induction schemes from terminating recursive function definitions; and (iv) well integrated with backtracking, can automatically verify number-theoretic properties of parameterized and generic adders, multipliers and division circuits. This is illustrated using our theorem prover Rewrite Rule Laboratory (RRL). To our knowledge, this is the first such demonstration of the capabilities of a theorem prover mechanizing induction. The above features of RRL are briefly discussed using illustrations from the verification of adder, multiplier and division circuits. Extensions to the prover likely to make it even more effective for hardware verification are discussed. Furthermore, it is believed that these results are scalable, and the proposed approach is likely to be effective for other arithmetic circuits as well. © 2000 Springer-Verlag Berlin Heidelberg.
引用
收藏
页码:32 / 65
页数:33
相关论文
共 54 条
[1]  
Angelo C.M., Claesen L., De M.H., A Methodology For Proving Correctness of Parameterized Hardware Modules In HOL
[2]  
Basin D., Walsh T., Difference Matching, Proc. CADE 11, (1992)
[3]  
Boyer R.S., Moore J.S., A Computational Logic, ACM Monogr Comput Sci, (1979)
[4]  
Boyer R.S., Moore J.S., Integrating decision procedures into heuristic theorem provers: A case study of linear arithmetic, Mach Intell, 11, pp. 83-157, (1988)
[5]  
Boyer R.S., Moore J.S., A Computational Logic Handbook, (1988)
[6]  
Boyer R.S., Moore J.S., Kaufmann M., Functional Instantiation In Nqthm
[7]  
Brock B.C., Hunt W.A., Kaufmann M., The FM9001 Microprocessor Proof, (1994)
[8]  
Bryant R.E., Graph-based algorithms for Boolean function manipulation, IEEE Trans Comput, C-35, 8, (1986)
[9]  
Bryant R.E., Chen Y.-A., Verification of Arithmetic Functions With Binary Moment Diagrams, (1994)
[10]  
Bryant R.E., Bit-level Analysis of An SRT Divider Circuit, (1995)