Abstract
We describe an extension of the PVS system that provides a reasonably efficient and practical notion of reflection and thus allows for soundly adding formalized and verified new proof procedures. These proof procedures work on representations of a part of the underlying logic and their correctness is expressed at the object level using a computational reflection function. The implementation of the PVS system has been extended with an efficient evaluation mechanism, since the practicality of the approach heavily depends on careful engineering of the core system, including efficient normalization of functional expressions. We exemplify the process of applying meta-level proof procedures with a detailed description of the encoding of cancellation in commutative monoids and of the kernel of a BDD package.
This work has been partially supported by the Deutsche Forschungsgemeinschaft (DFG) project Verifix and by the Deutscher Akademischer Austauschdienst (DAAD).
Preview
Unable to display preview. Download preview PDF.
References
S. F. Allen, R. L. Constable, D. J. Howe, and W. E. Aitken. The Semantics of Reflected Proof. In Proc. 5th Annual IEEE Symposium on Logic in Computer Science, pages 95–105. IEEE CS Press, 1990.
H. R. Anderson. An Introduction to Binary Decision Diagrams. Available at: ftp.id.dtu.dk/pub/hra, September 1994.
D. A. Basin. Beyond Tactic Based Theorem Proving. In J. Kunze and H. Stoyan, editors, KI-94 Workshops: Extended Abstracts. Gesellschaft für Informatik e.V, 1994. 18. Deutsche Jahrestagung für Künstliche Intelligenz, Saarbrücken.
D. A. Basin and R. L. Constable. Metalogical Frameworks. Technical Report TR 91-1235, Department of Computer Science, Cornell University, September 1991.
U. Berger and H. Schwichtenberg. An Inverse of the Evaluation Functional for Typed λ-calculus. In Proceedings, Sixth Annual IEEE Symposium on Logic in Computer Science, pages 203–211, Amsterdam, The Netherlands, 15–18 July 1991. IEEE Computer Society Press.
S. Boutin. Using Reflection to Build Efficient and Certified Decision Procedures. In M. Abadi and T. Ito, editors, Theoretical Aspects of Computer Software, volume 1281 of Lecture Notes in Computer Science. Springer-Verlag, 1997.
R. S. Boyer and J. S. Moore. A Computational Logic. Academic Press, New York, 1979.
R. S. Boyer and J. S. Moore. Metafunctions: Proving Them Correct and Using Them Efficiently as New Proof Procedures. In R. S. Boyer and J. S. Moore, editors, The Correctness Problem in Computer Science, chapter 3. Academic Press, 1981.
R. E. Bryant. Symbolic Boolean Manipulation with Ordered Binary Decision Diagrams. ACM Computing Surveys, 24(3):293–318, September 1992.
R. L. Constable, S. F. Allen, and H. M. Bromley et al. Implementing Mathematics with the Nuprl Proof Development System. Prentice-Hall, 1986.
J. Crow, S. Owre, J. Rushby, N. Shankar, and M. Srivas. A Tutorial Introduction to PVS. Presented at WIFT '95: Workshop on Industrial-Strength Formal Specification Techniques, Boca Raton, Florida, April 1995.
M. J. C. Gordon and T. F. Melham. Introduction to HOL: A Theorem Proving Environment for Higher-Order Logic. Cambridge University Press, 1993.
M. J. C. Gordon, A. J. R. Milner, and C. P. Wadsworth. Edinburgh LCF: a Mechanized Logic of Computation, volume 78 of Lecture Notes in Computer Science. Springer-Verlag, Berlin, 1979.
J. Harrison. Metatheory and Reflection in Theorem Proving: A Survey and Critique. Technical Report CRC-053, SRI Cambridge, Millers Yard, Cambridge, UK, 1995.
D. J. Howe. Automating Reasoning in an Implementation of Constructive Type Theory. PhD thesis, Cornell University, 1988. Available as technical report TR 88-925 from the Department of Computer Science, Cornell University.
T. B. Knoblock and R. L. Constable. Formalized Metareasoning in Type Theory. In Proceedings of LICS, pages 237–248. IEEE, 1986. Also available as technical report TR 86-742, Department of Computer Science, Cornell University.
G. Kreisel and A. Lévy. Reflection Principles and Their Use for Establishing the Complexity of Axiomatic Systems. Zeitschrift für math. Logik und Grundlagen der Mathematik, Bd. 14:97–142, 1968.
G. Nelson and D. C. Oppen. Simplification by Cooperating Decision Procedures. ACM Transactions on Programming Languages and Systems, 1(2):245–257, October 1979.
S. Owre, J. Rushby, N. Shankar, and F. von Henke. Formal Verification for Fault-Tolerant Architectures: Prolegomena to the Design of PVS. IEEE Transactions on Software Engineering, 21(2):107–125, February 1995.
L. C. Paulson. Logic and Computation: Interactive Proof with Cambridge LCF. Number 2 in Cambride Tracts in Theoretical Computer Science. Cambridge University Press, 1987.
L. C. Paulson. Isabelle: A Generic Theorem Prover, volume 828 of Lecture Notes in Computer Science. Springer-Verlag, 1994.
S. Pfab. Efficient Symbolic Evaluation of Formal Specifications and Its Interrelationship with Theorem Proving. Master's thesis, UniversitÄt Ulm, FakultÄt für Mathematik, January 1998.
H. Rue\. Computational Reflection in the Calculus of Constructions and Its Application to Theorem Proving. In J. R. Hindley P. de Groote, editor, Proceedings of Typed Lambda Calculus and Applications (TLCA'97), volume 1210 of Lecture Notes in Computer Science, pages 319–335. Springer-Verlag, April 1997.
R. E. Shostak. Deciding Combinations of Theories. Journal of the ACM, 31(1):1–12, 1984.
C. Smorynski. Self-Reference and Modal Logic. Springer-Verlag, 1985.
C. Sprenger. A Verified Model Checker for the Modal Μ-Calculus in Coq. In B. Steffen, editor, Tools and Algorithms for the Construction and Analysis of Systems, volume 1384 of Lecture Notes in Computer Science. Springer-Verlag, 1998.
F. von Henke. An Algebraic Approach to Data Types, Program Verification, and Program Synthesis. In Mathematical Foundations of Computer Science, Proceedings, volume 45 of Lecture Notes in Computer Science. Springer-Verlag, 1976.
Author information
Authors and Affiliations
Corresponding author
Editor information
Rights and permissions
Copyright information
© 1998 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
von Henke, F.W., Pfab, S., Pfeifer, H., Rue\, H. (1998). Case studies in meta-level theorem proving. In: Grundy, J., Newey, M. (eds) Theorem Proving in Higher Order Logics. TPHOLs 1998. Lecture Notes in Computer Science, vol 1479. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0055152
Download citation
DOI: https://doi.org/10.1007/BFb0055152
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-64987-8
Online ISBN: 978-3-540-49801-8
eBook Packages: Springer Book Archive