Abstract
Deductive verification and synthesis of binary addition programs are carried out on the base of the rules of proving the correctness for statements of the predicate programming language P. The paper presents key fragments of verification and synthesis of the programs for the Ripple carry, Carry look-ahead and Ling adders. The correctness conditions of the programs were translated into the specification language of the PVS verification system. The proof is found to be a tedious procedure as compared with the ordinary programming. However, for program synthesis, the development of theories and proofs on PVS are easier and faster than for program verification.
Similar content being viewed by others
References
Karnaukhov, N.S., Pershin, D.Yu., and Shelekhov, V.I., Yazyk predikatnogo programmirovaniya P (P Language of Predicate Programming), Novosibirsk, 2010.
Shelekhov, V., The Language of Calculus of Computable Predicates as a Minimal Kernel for Functional Languages, Bulletin of the Novosibirsk Computing Center. Series: Computer Science. IIS Special Number 2009, 2009, no. 29, pp. 107–117.
Shelekhov, V.I., Model’ korrektnosti programm na yazyke ischisleniya vychislimykh predikatov (Model of Program Correctness on the Language of Calculus of Computable Predicates), Novosibirsk, 2007.
Flynn, M.J. and Oberman, S.F., Advanced Computer Arithmetic Design, New York: Wiley, 2001. http://en.wikipedia.org/wiki/adder-(electronics)
Owre, S., Rushby, J.M., and Shankar, N., PVS: A Prototype Verification System, Lect. Notes Compt. Sci., 1992, vol. 607, pp. 748–752. http://pvs.csl.sri.com/
Sorensen, M.H. and Urzyczyn, P., Lectures on the Carry-Howard Isomorphism, in Logic and the Foundations of Mathematics, 2006, vol. 149.
Hehner, E.C.R., A Practical Theory of Programming, University of Toronto, 2004. http://www.cs.toronto.edu/henner/aptop/
Doran, R.W., Variants of an Improved Carry Look-Ahead Adder, IEEE Trans. Compt., 1988, vol. 37, no. 9, pp. 1110–1113.
Basin, D., DeVille, Y., Flener, P., Hamfelt, A., and Nilsson, J., Synthesis of Programs in Computational Logic, Lect. Notes Compt. Sci., 2004, vol. 3049, pp. 30–65.
Srivastava, S., Gulwani, S., and Foster, J., From Program Verification to Program Synthesis, Proc. Symp. on Principles of Programming Languages (POPL), 2010, pp. 313–326.
Shelekhov, V.I., Verification and Synthesis of the Effective Programs of Standard floor, isqrt and ilog2 Functions in Predicate Programming Technology, Tr. 12-i Mezhd. Konf. “Problemy Upravleniya i Modelirovaniya V Slozhnykh Sistemakh”, (Proc. 12th Int. Conf. “Management and Modeling Problems in Complicated Systems”), Samarskii Nauchnyi Tsentr Ross. Akad. Nauk, 2010, pp. 622–630.
Kapur, D. and Subramaniam, M., Mechanical Verification of Adder Circuits Using Rewrite Rule Laboratory, Formal Methods in System Design, 1998, vol. 13, no. 2, pp. 127–158.
Author information
Authors and Affiliations
Corresponding author
Additional information
Original Russian Text © V.I. Shelekhov, 2010, published in Modelirovanie i Analiz Informatsionnykh Sistem, 2010, No. 4, pp. 101–110.
About this article
Cite this article
Shelekhov, V.I. Verification and synthesis of addition programs under the rules of correctness of statements. Aut. Conrol Comp. Sci. 45, 421–427 (2011). https://doi.org/10.3103/S0146411611070121
Received:
Published:
Issue Date:
DOI: https://doi.org/10.3103/S0146411611070121