Efficient Representation and Validation of Logical Proofs

Abstract : This report describes a framework for representing and validating formal proofs in various axiomatic systems. The framework is based on the Edinburgh Logical Framework (LF) but is optimized for minimizing the size of proofs and the complexity of proof validation, by removing redundant representation components. Several variants of representation algorithms are presented with the resulting representations being a factor of 15 smaller than similar LF representations. The validation algorithm is a reconstruction algorithm that runs about 7 times faster than LF typechecking. We present a full proof of correctness of the reconstruction algorithm and hints for the efficient implementation using explicit substitutions. We conclude with a quantitative analysis of the algorithms.

[1]  Frank Pfenning,et al.  Uniication and Anti-uniication in the Calculus of Constructions , 1991 .

[2]  Amy P. Felty,et al.  The Coq proof assistant user's guide : version 5.6 , 1990 .

[3]  Gérard P. Huet,et al.  A Unification Algorithm for Typed lambda-Calculus , 1975, Theor. Comput. Sci..

[4]  Martín Abadi,et al.  Explicit substitutions , 1989, POPL '90.

[5]  F. Pfenning Logic programming in the LF logical framework , 1991 .

[6]  Frank Pfenning,et al.  An Empirical Study of the Runtime Behavior of Higher-Order Logic Programs , 1992 .

[7]  de Ng Dick Bruijn,et al.  Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church-Rosser theorem , 1972 .

[8]  F. Honsell,et al.  A Framework for De ning LogicsRobert Harper , 1987 .

[9]  George C. Necula,et al.  Safe kernel extensions without run-time checking , 1996, OSDI '96.

[10]  Richard Statman,et al.  The typed λ-calculus is not elementary recursive , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[11]  F. Pfenning Elf : A MetaLanguage for Deductive Systems ( System Description ) , 1994 .

[12]  Frank Pfenning,et al.  Higher-Order Logic Programming as Constraint Logic Programming , 1993, PPCP.

[13]  Dale A. Miller,et al.  A compact representation of proofs , 1987, Stud Logica.

[14]  Dale Miller,et al.  A Logic Programming Language with Lambda-Abstraction, Function Variables, and Simple Unification , 1991, J. Log. Comput..