Journal of the ACM (JACM)
Typed Higher-Order Narrowing without Higher-Order Strategies
FLOPS '99 Proceedings of the 4th Fuji International Symposium on Functional and Logic Programming
Evaluation strategies for functional logic programming
Journal of Symbolic Computation
Tabling for higher-order logic programming
CADE' 20 Proceedings of the 20th international conference on Automated Deduction
Automatic proof and disproof in Isabelle/HOL
FroCoS'11 Proceedings of the 8th international conference on Frontiers of combining systems
Hi-index | 0.00 |
We present the idea of using a proof checking algorithm for the purpose of automated proof construction. This is achieved by applying narrowing search on a proof checker expressed in a functional programming language. We focus on higher-order formalisms, such as logical frameworks, whereas the narrowing techniques we employ are first-order. An obvious advantage of this approach is that a single representation of the semantics can in principle be used for both proof checking and proof construction. The correctness of the search algorithm is consequently more or less trivially provided. The question is whether this representation of the search procedure allows a performance plausible for practical use. In order to achieve this, we add some features to the general narrowing search. We also present some small modifications which can be applied on a proof checker and which further improve the performance. We claim that the resulting proof search procedure is efficient enough for application in an interactive environment, where automation is used mostly on small subproofs.