Compilation of predicate abstractions in higher-order logic programming
We explore higher-order logic programming and its relationship to computation in predicate calculus. The framework is based upon a logic of untyped λ-calculus which has a general model-theoretic semantics and whose equality theory corresponds to α-equivalence. The focus of the paper is on computing with predicate abstractions that are formalized by equivalence axioms with respect to a notion called top reduction. It is shown that, under certain conditions, computation with predicate abstractions can be compiled into predicate calculus and all most general answers are still preserved.
KeywordsLogic Programming Function Symbol Atomic Formula Predicate Abstraction Logic Programming System
Unable to display preview. Download preview PDF.
- K.R. Apt and M.H. van Emden. Contributions to the theory of logic programming. JACM, 29(3):841–862, July 1982.Google Scholar
- H.P. Barendregt. The Lambda Calculus: Its Syntax and Semantics (Revised Edition). North-Holland Publishing Co., 1984.Google Scholar
- W. Chen, M. Kifer, and D.S. Warren. HiLog: A first order semantics for higher-order logic programming constructs. In Proc. North American Conference on Logic Programming, October 1989.Google Scholar
- W. Chen and D.S. Warren. Predicate abstractions in higher-order logic programming. Manuscript, March 1991.Google Scholar
- M.H.M. Cheng, M.H. van Emden, and B.E. Richards. On Warren's method for functional programming in logic. In Proc. ICLP, pages 546–560, 1990.Google Scholar
- W.D. Goldfarb. The undecidability of the second-order unification problem. Theoretical Computer Science, 13:225–230, 1981.Google Scholar
- G.P. Huet. A unification algorithm for typed λ-calculus. TCS, 1:27–57, 1975.Google Scholar
- G. Nadathur and N. Miller. Higher-order horn clauses. JACM, 37(4), 1990.Google Scholar
- J. Staples and P.J. Robinson. Efficient unification of quantified terms. Journal of Logic Programming, 5:133–149, 1988.Google Scholar
- A. van Gelder, K.A. Ross, and J.S. Schlipf. Unfounded sets and well-founded semantics for general logic programs. In Proc. 7th ACM Symp. on PODS, 1988.Google Scholar
- D.H.D. Warren. Higher-order extensions to Prolog: are they needed? Machine Intelligence, 10:441–454, 1982.Google Scholar