Abstract
We present an implementation of a program logic of objects, extending that (AL) of Abadi and Leino. In particular, the implementation uses higher-order abstract syntax (HOAS) and—unlike previous approaches using HOAS—at the same time uses the built-in higher-order logic of the theorem prover to formulate specifications. We give examples of verifications, extending those given in [1], that have been attempted with the implementation. Due to the mixing of HOAS and built-in logic the soundness of the encoding is nontrivial. In particular, unlike in other HOAS encodings of program logics, it is not possible to directly reduce normal proofs in the higher-order system to proofs in the first-order object logic.
Studentship funded by the EPSRC, UK.
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
MartĂn Abadi and Rustan Leino. A logic of object-oriented programs. In Michel Bidoit and Max Dauchet, editors, TAPSOFT’ 97: Theory and Practice of Software Development, 7th International Joint Conference CAAP/FASE, Lille, France, volume 1214 of Lecture Notes in Computer Science, pages 682–696. Springer-Verlag, New York, N.Y., 1997.
MartĂn Abadi and Rustan Leino. A logic of object-oriented programs. SRC Research Reports SRC-161, Compaq SRC, September 1998. Revised version of [1]
F. Honsell and M. Miculan. A natural deduction approach to dynamic logic. Lecture Notes in Computer Science, 1158, 1996.
Tobias Nipkow, David von Oheimb, and Cornelia Pusch. µJava: Embedding a programming language in a theorem prover. In F.L. Bauer and R. Steinbrüggen, editors, Foundations of Secure Computation. IOS Press, 2000.
Lawrence C. Paulson. Isabelle: A Generic Theorem Prover. Springer-Verlag LNCS 828, 1994.
Robert Pollack. The Theory of LEGO: A Proof Checker for the Extended Calculus of Constructions. PhD thesis, University of Edinburgh, 1994.
U.S. Reddy. Objects and classes in algol-like languages. In Foundations of Object-oriented Languages, January 1998.
John C. Reynolds. Idealized algol and its specification logic. In Danielle Néel, editor, Tools and Notions for Program Construction, pages 121–161. Cambridge University Press, 1982.
A. W. Roscoe. The Theory and Practice of Concurrency. Prentice Hall, 1997.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Hofmann, M., Tang, F. (2000). Implementing a Program Logic of Objects in a Higher-Order Logic Theorem Prover. In: Aagaard, M., Harrison, J. (eds) Theorem Proving in Higher Order Logics. TPHOLs 2000. Lecture Notes in Computer Science, vol 1869. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44659-1_17
Download citation
DOI: https://doi.org/10.1007/3-540-44659-1_17
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67863-2
Online ISBN: 978-3-540-44659-0
eBook Packages: Springer Book Archive