Proof-Term Synthesis on Dependent-Type Systems via Explicit Substitutions
INSTITUTE FOR COMPUTER APPLICATIONS IN SCIENCE AND ENGINEERING HAMPTON VA
Pagination or Media Count:
Typed lambda-terms are used as a compact and linear representation of proofs in intuitionistic logic. This is possible since the Curry-Howard isomorphism relates proof trees with typed lambda-terms. The proofs-as-terms principle can be used to check a proof by type checking the lambda-term extracted from the complete proof tree. However, proof trees and typed lambda-terms are built differently. Usually, an auxiliary representation of unfinished proofs is needed, where type checking is possible only on complete proofs. In this paper we present a proof synthesis method for dependent-type systems where typed open terms are built incrementally at the same time as proofs are done. This way, every construction step, not just the last one, may be type checked. The method is based on a suitable calculus where substitutions as well as meta-variables are first-class objects.
- Computer Programming and Software