This paper is a report about the use of Matita, an interactive theorem prover under development at the University of Bologna, for the solution of the POPLmark Challenge, part 1a. We provide three different formalizations, including two direct solutions using pure de Bruijn and locally nameless encodings of bound variables, and a formalization using named variables, obtained by means of a sound translation to the locally nameless encoding. According to this experience, we also discuss some of the proof principles used in our solutions, which have led to the development of a generalized inversion tactic for Matita.
A. Asperti, W. Ricciotti, C. Sacerdoti Coen, E. Tassi (2012). Formal Metatheory of Programming Languages in the Matita Interactive Theorem Prover. JOURNAL OF AUTOMATED REASONING, 49(3), 427-451 [10.1007/s10817-011-9228-z].
Formal Metatheory of Programming Languages in the Matita Interactive Theorem Prover
ASPERTI, ANDREA;RICCIOTTI, WILMER;SACERDOTI COEN, CLAUDIO;TASSI, ENRICO
2012
Abstract
This paper is a report about the use of Matita, an interactive theorem prover under development at the University of Bologna, for the solution of the POPLmark Challenge, part 1a. We provide three different formalizations, including two direct solutions using pure de Bruijn and locally nameless encodings of bound variables, and a formalization using named variables, obtained by means of a sound translation to the locally nameless encoding. According to this experience, we also discuss some of the proof principles used in our solutions, which have led to the development of a generalized inversion tactic for Matita.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.