Abstract

This paper presents a study of operational and type-theoretic properties of different resolution strategies in Horn clause logic. We distinguish four different kinds of resolution: resolution by unification (SLD-resolution), resolution by term-matching, the recently introduced structural resolution, and partial (or lazy) resolution. We express them all uniformly as abstract reduction systems, which allows us to undertake a thorough comparative analysis of their properties. To match this small-step semantics, we propose to take Howard’s System H as a type-theoretic semantic counterpart. Using System H, we interpret Horn formulas as types, and a derivation for a given formula as the proof term inhabiting the type given by the formula. We prove soundness of these abstract reduction systems relative to System H, and we show completeness of SLD-resolution and structural resolution relative to System H. We identify conditions under which structural resolution is operationally equivalent to SLD-resolution. We show correspondence between term-matching resolution for Horn clause programs without existential variables and term rewriting.

Highlights

  • Horn clause logic is a fragment of first-order logic that gives theoretical foundation to logic programming

  • The formulation of LP-Struct in this paper is based on the abstract reduction system framework, instead of the tree formalism in previous work

  • We have shown that Howard’s system H is a suitable foundation for logic programming

Read more

Summary

Introduction

Horn clause logic is a fragment of first-order logic that gives theoretical foundation to logic programming. When SLD-resolution produces a finite or infinite ground answer for a variable in the query, we say the query is locally productive at that variable (see Definition 12) This gives us an alternative notion of productivity for logic programming. Program 1 is not productive for the query P (x ) by any of these three notions of productivity: it does not compute an infinite ground formula, it is not terminating by term-matching resolution, and it does not compute a ground answer for x. Program 3 is not globally productive for the query P (x , y) as SLD-resolution computes an infinite formula P

Horn formulas as types
Soundness and completeness of LP-Unif
Partial LP-Unif by labelling
Disscussion
Structual resolution
LP-Struct and LP-Unif
Discussion
Functionalisation of LP-TM
Realizability transformation and LP-Struct
Related work
Conclusions
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call