Summary
A verification system is developed for proving the correctness of programs containing procedures with procedure-type parameters. The system, which reduces programs and their specifications to assertions to be proved in ordinary logic, is shown to be logically sound. The reduction process is controlled by the syntax of the program and is completely mechanical, requiring no human intervention. The resulting assertions involve higher-order predicates, but they engender no significant difficulties which are not already present in ordinary first-order theories.
Our system views the intermediate objects in the reduction process as extended programs, thereby making verification a much less abstruse process. Treating logical assertions as commands appeals strongly to a programmer's intuition.
Similar content being viewed by others
References
Bradshaw, F.T., Ernst, G.W., Hookway, R.J., Ogden, W.F.: Procedure Semantics and Language Definition. SIGPLAN Notices, pp. 28–33, June, 1980
Luckham, D.C.: Program Verification and Verification-Oriented Programming, Information Processing 77, North-Holland, pp. 783–793, 1977
Floyd, R.W.: Assigning Meanings to Programs. Proc. Appl. Math., Am. Math. Soc. pp. 19–32, 1967
Hoare, C.A.R.: An Axiomatic Basis for Computer Programming. Comm. ACM, pp. 576–581, 1969
Kleene, S.C.: Mathematical Logic. John Wiley, 1967
Navlakha, J.K.: A Syntax Directed Program Verification System. Computer Engineering and Science Dept., Case Institute of Technology, 1978
Scott, D., Strachey, C: Toward a Mathematical Semantics for Computer Languages, Computers and Automata, John Wiley, pp. 19–46, 1972
Jensen, K., Wirth, N.: PASCAL User Manual and Report. Springer, 1976
Author information
Authors and Affiliations
Additional information
This research was partially supported by the National Science Foundation under grant MCS77-24236
Rights and permissions
About this article
Cite this article
Ernst, G.W., Navlakha, J.K. & Ogden, W.F. Verification of programs with procedure-type parameters. Acta Informatica 18, 149–169 (1982). https://doi.org/10.1007/BF00264436
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00264436