# SLWV — A theorem prover for logic programming

## Abstract

The purpose of this work is to define a theorem prover that retains the procedural aspects of logic programing. The proof system we propose (SLWV-resolution. for Selected Linear Without contrapositive clause Variants)) is defined for a set of clauses in the implicational form (keeping to the form of logic programs). not requiring contrapositives, and has an execution method that respects the execution order of literals in a clause, preserving the procedural flavor of logic programming. SLWV-resolution can be seen as a combination of SL-resolution and case-analysis, which admits a form of linear derivation. We show its soundness and completeness by establishing a one-to-one mapping between SLWV and SL derivations which also clarifies the motivation and the method.Our work can be seen as an extension to logic programs that goes beyond normal programs, and thus beyond (positive) definite clause programming. by allowing also definite negative heads. Thus we admit program clauses with both positive and (classically) negated atoms conjoined in the body, and at most one literal as its head (clauses with disjunctions of literals in the head are transformed into a single clause of that form). As this approach does not require clause contrapositives and admits a leftmost selection function, the implementation can and does preserve the pragmatic procedural reading explicitly provided by the programmer. The implementation. not described here. relies on the source program being preprocessed into directly executable Prolog. Preprocessing keeps the overall program structure untouched. and thus a directly recognizable execution pattern that mimics Prolog is obtained: this is useful in debugging. Additionally. the preprocessing is such that Prolog programs run with negligible overhead. Various program examples and attending derivations are proffered.

## Preview

Unable to display preview. Download preview PDF.

## References

- 1.Chang C. and R. Lee.: Symbolic Logic and Mechanical Theorem Proving, Academic Press, New York, 1973.Google Scholar
- 2.Eshghi, K. and R. Kowalski.: Abduction Compared with Negation as Failure, Logic Programming: Proceedings of the Sixth International Conference, (Levi and Martelli Hi eds.), MIT Press, 1989.Google Scholar
- 3.Kowalski, R.: Linear Resolution with Selection Function, Artificial Intelligence. vol 2, pp 227–260, 1971.Google Scholar
- 4.Lloyd, J.: Foundations of Logic Programming second edition, Springer-Verlag, 1987.Google Scholar
- 5.Loveland. D.W.: Automated Deduction, North Holland, 1978.Google Scholar
- 6.Loveland, D.W.: Near-Horn Prolog and Beyond. In Journal of Automated Reasoning, vol 7, n∘ 1, pp 1–26, 1991.Google Scholar
- 7.Manthey, R. and F. Bry: SATCHMO: a theorem prover implemented in Prolog. In Proceedings of CADE 88 (9th Conference on Automated Deduction), Argonne, Illinois, pp 23–26 May, LNCS, Springer Verlag.Google Scholar
- 8.Pelletier, F. J.: Seventy-five Problems for testing Automatic Theorem Provers. Journal of Automated Reasoning 2 (1986) pp 191–216.Google Scholar
- 9.Pereira L., L. Caires and J. Alferes: Classical Negation in Logic Programs. In Proceedings of the Seventh “Seminário Brasileiro de Inteligência Artificial”, Campina Grande PB, Brazil, Nov. 90, UFPB/CCT — Departamenio de Sistemas c Computação, 7∘ SBIA, Caixa Postal 10106, 58100 — Campina Grande-PB, Brazil.Google Scholar
- 10.Plaisted, D. A.: Non-Horn clause logic Programing without Contrapositives. Journal of Automated Reasoning 4 (1988) pp 287–325.Google Scholar
- 11.Smith, B.T. and Loveland, D. W.: A Simple near-Horn Prolog Interpreter. In Logic Programming: Proceedings of the Fifth International Conference, pp 794–804, Seattle, 1988.Google Scholar
- 12.Stickel, M.E. et al: An Analysis of Consecutively Bounded Depth-First Search with Applications in Automated Deduction, Proceedings of the Ninth International Joint Conference of Artificial Intelligence, Los Angeles California, August 85.Google Scholar
- 13.Stickel, ME.: A Prolog Technology Theorem Prover: Implementation by an extended Prolog Compiler, Proceedings of the Eight International Conference in Automated Deduction. Oxford, England, July 86.Google Scholar