Formalized Metatheory with Terms Represented by an Indexed Family of Types
It is possible to represent the terms of a syntax with binding constructors by a family of types, indexed by the free variables that may occur. This approach has been used several times for the study of syntax and substitution, but never for the formalization of the metatheory of a typing system. We describe a recent formalization of the metatheory of Pure Type Systems in Coq as an example of such a formalization. In general, careful thought is required as to how each definition and theorem should be stated, usually in an unfamiliar ‘big-step’ form; but, once the correct form has been found, the proofs are very elegant and direct.
Unable to display preview. Download preview PDF.
- 4.Barendregt, H.: Lambda calculi with types. In: Abramsky, S., Gabbay, D.M., Maibaum, T.S.E. (eds.) Handbook of Logic in Computer Science, vol. II. Oxford University Press, Oxford (1992)Google Scholar
- 7.Barras, B.: Auto-validation d’un sysème de preuves avec familles inductives. PhD thesis, Université Paris 7 (1999)Google Scholar
- 8.Letouzey, P.: Vectors. Message to Coq-Club mailing list (2004), http://pauillac.inria.fr/pipermail/coq-club/2004/001265.html
- 9.Adams, R.: A formalization of the theory of PTSs in Coq (2005), Available online at, http://www.cs.rhul.ac.uk/~robin/coqPTS/docu.dvi
- 10.Adams, R.: Pure type systems with judgemental equality. Accepted for publication in the Journal of Functional ProgrammingGoogle Scholar
- 11.Barras, B.: A formalization of the calculus of constructions, Web page, http://coq.inria.fr/contribs/coq-in-coq.html
- 14.Stehr, M.O.: CINNI: A generic calculus of explicit substitutions and its application to lambda-, sigma- and pi-calculi. In: Third International Workshop on Rewriting Logic and its Applications (WRLA 2000). Electronic Notes in Theoretical Computer Science, vol. 36, Kanazawa, Japan, September 18-20. Elsevier, Amsterdam (2000)Google Scholar