Abstract
Starting from a denotational and a term-rewriting based operational semantics (an interpreter) for a small functional language, we present a correctness proof of the interpreter w.r.t. the denotational semantics. The complete proof has been formalized in the logic LCF and checked with the theorem prover Isabelle. Based on this proof, conclusions for mechanical theorem proving in general are drawn.
Research supported by ESPRIT BRA 6453, TYPES
Research supported by DFG grant Br 887/4-2, Deduktive Programmentwicklung
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
M. Aagaard and M. Leeser. Verifying a logic synthesis tool in Nuprl: A case study in software verification. In K. G. Larsen, editor, Proc. 4th Workshop Computer Aided Verification, volume 663 of Lect. Notes in Comp. Sci. Springer-Verlag, 1992.
R. S. Boyer and J. S. Moore. A Computational Logic Handbook. Academic Press, 1988.
R. S. Boyer and Y. Yu. Automated correctness proofs of machine code programs for a commercial microprocessor. In D. Kapur, editor, Proc. 11th Int. Conf. Automated Deduction, volume 607 of Lect. Notes in Comp. Sci., pages 416–430. Springer-Verlag, 1992.
M. Broy. Experiences with software specification and verification using LP, the Larch proof assistant. Technical Report SRC 93, DIGITAL Systems Research Center, 1992.
B. Buth, K.-H. Buth, A. Fränzle, B. v. Karger, Y. Lakhmeche, H. Langmaack, and M. Müller-Olm. Provably correct compiler developement and implementation. In U. Kastens and P. Pfahler, editors, Compiler Construction, volume 641 of Lect. Notes in Comp. Sci. Springer-Verlag, 1992.
P. Curzon. A verified compiler for a structured assembly language. In M. Archer, J. J. Joyce, K. N. Levitt, and P. J. Windley, editors, Proc. 1991 Int. Workshop on the HOL Theorem Proving System and its Applications, pages 253–262. IEEE Computer Society Press, 1992.
M. Gordon, R. Milner, and C. Wadsworth. Edinburgh LCF: a Mechanised Logic of Computation, volume 78 of Lect. Notes in Comp. Sci. Springer-Verlag, 1979.
C. A. Gunter. Semantics of Programming Languages. MIT Press, 1992.
U. Hinkel. Maschineller Beweis der Korrektheit eines Interpreters. Master's thesis, Institut für Informatik, TU München, 1993. In German.
P. Hudak, S. P. Jones, and P. Wadler. Report on the programming language Haskell: A non-strict, purely functional language. ACM SIGPLAN Notices, 27(5), May 1992. Version 1.2.
D. A. McAllester. Ontic: A Knowledge Representation System for Mathematics. MIT Press, 1989.
P. D. Mosses. Denotational semantics. In J. v. Leeuwen, editor, Formal Models and Semantics, Handbook of Theoretical Computer Science, volume B. Elsevier, 1990.
T. Nipkow and C. Prehofer, Type checking type classes. In Proc. 20th ACM Symp. Principles of Programming Languages, pages 409–418. ACM Press, 1993. Revised version to appear in J. Functional Programming.
L. C. Paulson. Deriving structural induction in LCF. In G. Kahn, D. B. MacQueen, and G. Plotkin, editors, Semantics of Data Types, volume 173 of Lect. Notes in Comp. Sci., pages 197–214. Springer-Verlag, 1984.
L. C. Paulson. Logic and Computation. Cambridge University Press, 1987.
L. C. Paulson. Isabelle: A Generic Theorem Prover, volume 828 of Lect. Notes in Comp. Sci. Springer-Verlag, 1994.
F. Regensburger. HOLCF: Eine konservative Erweiterung von HOL um LCF. PhD thesis, Technische Universität München, 1994. To appear.
B. Schieder. Logic and Proof Method of Recursion. PhD thesis, Institut für Informatik, TU München, 1994. To appear.
G. Winskel. The Formal Semantics of Programming Languages. MIT Press, 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Broy, M., Hinkel, U., Nipkow, T., Prehofer, C., Schieder, B. (1994). Interpreter verification for a functional language. In: Thiagarajan, P.S. (eds) Foundation of Software Technology and Theoretical Computer Science. FSTTCS 1994. Lecture Notes in Computer Science, vol 880. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58715-2_115
Download citation
DOI: https://doi.org/10.1007/3-540-58715-2_115
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-58715-6
Online ISBN: 978-3-540-49054-8
eBook Packages: Springer Book Archive