Abstract
We present a solution to the PoplMark challenge designed by Aydemir et al., which has as a goal the formalization of the meta-theory of System \(\hbox{F}_{<:}\). The formalization is carried out in the theorem prover Isabelle/HOL using an encoding based on de Bruijn indices. We start with a relatively simple formalization covering only the basic features of System \(\hbox{F}_{<:}\), and explain how it can be extended to also cover records and more advanced binding constructs. We also discuss different styles of formalizing the evaluation relation, and how this choice influences executability of the specification.
Similar content being viewed by others
References
Ashley-Rollman, M., Crary, K., Harper, R.: Solution to the poplmark Challenge in Twelf. Available electronically at http://fling-l.seas.upenn.edu/~plclub/mmm/ (2005)
Aydemir, B.E., Bohannon, A., Fairbairn, M., Foster, J.N., Pierce, B.C., Sewell, P., Vytiniotis, D., Washburn, G., Weirich, S., Zdancewic, S.: Mechanized metatheory for the masses: the poplmark challenge. In: Melham, T., Hurd, J. (eds.) Theorem Proving in Higher Order Logics: TPHOLs 2005, LNCS. Springer, New York (2005)
Barras, B.: Coq en Coq. Rapport de Recherche 3026. INRIA (1996)
Berghofer, S.: Extracting a normalization algorithm in Isabelle/HOL. In: Filliâtre, J.-C., Paulin, C., Werner, B. (eds.) Types for Proofs and Programs (TYPES 2004), Lecture Notes in Computer Science, vol. 3839. Springer, New York (2005)
Berghofer, S., Bulwahn, L., Haftmann, F.: Turning inductive into equational specifications. In: Berghofer, S., Nipkow, T., Urban, C., Wenzel, M. (eds.) 22nd International Conference on Theorem Proving in Higher Order Logics (TPHOLs 2009), Lecture Notes in Computer Science, vol. 5674, pp. 131–146. Springer, New York (2009)
Berghofer, S., Nipkow, T.: Executing higher order logic. In: Callaghan, P., Luo, Z., McKinna, J., Pollack, R. (eds.) Types for Proofs and Programs: TYPES’2000, LNCS, vol. 2277. Springer, New York (2002)
Huet, G.P.: Residual theory in lambda-calculus: a formal development. J. Funct. Program. 4(3), 371–394 (1994)
Nipkow, T.: More Church–Rosser proofs (in Isabelle/HOL). J. Autom. Reason. 26, 51–66 (2001)
Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle/HOL—a proof assistant for higher-order logic. In: LNCS, vol. 2283. Springer, New York (2002)
Paulson, L.C.: ML for the Working Programmer. Cambridge University Press, Cambridge (1991)
Pierce, B.C.: Types and Programming Languages. MIT Press, Cambridge (2002)
Rasmussen, O.: The Church–Rosser Theorem in Isabelle: A Proof Porting Experiment. Technical Report 364, Computer Laboratory, University of Cambridge (1995)
Schürmann, C.: Automating the Meta Theory of Deductive Systems. PhD thesis, School of Computer Science, Carnegie Mellon University (2000)
Urban, C., Tasson, C.: Nominal techniques in Isabelle/HOL. In: Proceedings of the 20th International Conference on Automated Deduction (CADE), LNCS, vol. 3632, pp. 38–53 (2005)
Vouillon, J.: Solution to the poplmark Challenge in Coq. Available electronically at http://fling-l.seas.upenn.edu/~plclub/mmm/ (2005)
Author information
Authors and Affiliations
Corresponding author
Additional information
The author was supported by BMBF in the VerisoftXT project under grant 01 IS 07008 F.
Rights and permissions
About this article
Cite this article
Berghofer, S. A Solution to the PoplMark Challenge Using de Bruijn Indices in Isabelle/HOL. J Autom Reasoning 49, 303–326 (2012). https://doi.org/10.1007/s10817-011-9231-4
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10817-011-9231-4