Skip to main content

A prolog technology theorem prover: A new exposition and implementation in Prolog

  • Automated Reasoning
  • Conference paper
  • First Online:
Design and Implementation of Symbolic Computation Systems (DISCO 1990)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 429))

Abstract

A Prolog technology theorem prover (PTTP) is an extension of Prolog that is complete for the full first-order predicate calculus. It differs from Prolog in its use of unification with the occurs check for soundness, depth-first iterative-deepening search instead of unbounded depth-first search to make the search strategy complete, and the model elimination reduction rule that is added to Prolog inferences to make the inference system complete. This paper describes a new Prolog-based implementation of PTTP. It uses three compile-time transformations to translate formulas into Prolog clauses that directly execute, with the support of a few run-time predicates, the model elimination procedure with depth-first iterative-deepening search and unification with the occurs check. Its high performance exceeds that of Prolog-based PTTP interpreters, and it is more concise and readable than the earlier Lisp-based compiler, which makes it superior for expository purposes. Examples of inputs and outputs of the compile-time transformations provide an easy and quite precise way to explain how PTTP works. This Prolog-based version makes it easier to incorporate PTTP theorem-proving ideas into Prolog programs. Some suggestions are made on extensions to Prolog that could be used to improve PTTP's performance.

This research was supported by the National Science Foundation under Grant CCR-8611116. The views and conclusions contained herein are those of the author and should not be interpreted as necessarily representing the official policies, either expressed or implied, of the National Science Foundation or the United States government.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Antoniou, G. and H.J. Ohlbach. Terminator. Proceedings of the Eighth International Joint Conference on Artificial Intelligence, Karlsruhe, West Germany, August 1983, 916–919.

    Google Scholar 

  2. Astrachan, O. METEOR: model elimination theorem prover for efficient OR-parallelism. Unpublished, 1989.

    Google Scholar 

  3. Bose, S., E.M. Clarke, D.E. Long, and S. Michaylov. Parthenon: a parallel theorem prover for non-Horn clauses. Proceedings of the Fourth IEEE Symposium on Logic in Computer Science, Asilomar, California, June 1989.

    Google Scholar 

  4. Chang, C.L. and R.C.T. Lee. Symbolic Logic and Mechanical Theorem Proving. Academic Press, New York, New York, 1973.

    Google Scholar 

  5. Gillogly, J.J. The technology chess program. Artificial Intelligence 3, 3 (Fall 1972), 145–163.

    Google Scholar 

  6. Korf, R.E. Depth-first iterative-deepening: an optimal admissible tree search. Artificial Intelligence 27, 1 (September 1985), 97–109.

    Google Scholar 

  7. Kowalski, R. and D. Kuehner. Linear resolution with selection function. Artificial Intelligence 2 (1971), 227–260.

    Google Scholar 

  8. Letz, R., J. Schumann, S. Bayerl, and W. Bibel. SETHEO: a high-performance theorem prover. To appear in Journal of Automated Reasoning.

    Google Scholar 

  9. Loveland, D.W. A simplified format for the model elimination procedure. Journal of the ACM 16, 3 (July 1969), 349–363.

    Google Scholar 

  10. Loveland, D.W. Automated Theorem Proving: A Logical Basis. North-Holland, Amsterdam, the Netherlands, 1978.

    Google Scholar 

  11. O'Keefe, R.A. Programming meta-logical operations in Prolog. DAI Working Paper No. 142, Department of Artificial Intelligence, University of Edinburgh, June 1983.

    Google Scholar 

  12. Plaisted, D.A. Non-Horn clause logic programming without contrapositives. Journal of Automated Reasoning 4, 3 (September 1988), 287–325.

    Google Scholar 

  13. Satz, R.W. Expert Thinker software package. Transpower Corporation, Parkerford, Pennsylvania, 1988.

    Google Scholar 

  14. Sterling, L. and E. Shapiro. The Art of Prolog. MIT Press, Cambridge, Massachusetts, 1986.

    Google Scholar 

  15. Stickel, M.E. A Prolog technology theorem prover. New Generation Computing 2, 4 (1984), 371–383.

    Google Scholar 

  16. Stickel, M.E. Automated deduction by theory resolution. Journal of Automated Reasoning 1, 4 (1985), 333–355.

    Google Scholar 

  17. Stickel, M.E. A Prolog technology theorem prover: implementation by an extended Prolog compiler. Journal of Automated Reasoning 4, 4 (December 1988), 353–380.

    Google Scholar 

  18. Stickel, M.E. A Prolog technology theorem prover: a new exposition and implementation in Prolog. Technical Note 464, Artificial Intelligence Center, SRI International, Menlo Park, California, June 1989.

    Google Scholar 

  19. Stickel, M.E. and W.M. Tyson. An analysis of consecutively bounded depth-first search with applications in automated deduction. Proceedings of the Ninth International Joint Conference on Artificial Intelligence, Los Angeles, California, August 1985, 1073–1075.

    Google Scholar 

  20. Umrigar, Z.D. and V. Pitchumani. An experiment in programming with full first-order logic. Proceedings of the 1985 Symposium on Logic Programming, Boston, Massachusetts, July 1985, 40–47.

    Google Scholar 

  21. Wos, L., R. Veroff, B. Smith, and W. McCune. The linked inference principle, II: the user's viewpoint. Proceedings of the 7th International Conference on Automated Deduction, Napa, California, May 1984, 316–332.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Alfonso Miola

Rights and permissions

Reprints and permissions

Copyright information

© 1990 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Stickel, M.E. (1990). A prolog technology theorem prover: A new exposition and implementation in Prolog. In: Miola, A. (eds) Design and Implementation of Symbolic Computation Systems. DISCO 1990. Lecture Notes in Computer Science, vol 429. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-52531-9_135

Download citation

  • DOI: https://doi.org/10.1007/3-540-52531-9_135

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-52531-8

  • Online ISBN: 978-3-540-47014-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics