The near-Horn approach to disjunctive logic programming

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 596)


This paper presents an overview of the near-Horn Prolog project at Duke University. The basic goal behind this project has been to extend Prolog to disjunctive logic programs (and thus full first-order expressibility) while retaining as much of the clarity and procedural simplicity of Prolog as possible. The approach taken to achieve this goal has been to combine Prolog with case analysis reasoning. The research work within the project can roughly be divided into three areas: procedure design, semantics, and implementation. Three different variants of Near-Horn Prolog have been devised, of which the most recent, Inheritance near-Horn Prolog (InH-Prolog), is the variant currently being favored. The semantics for the near-Horn Prologs, specifically for InH-Prolog, have been investigated, resulting in a case-analysis based fixpoint semantics which mimics the procedural behavior of InH-Prolog. Also, both classical and default negation have been incorporated into the near-Horn Prolog systems. Finally, an interpreter for the original near-Horn Prolog variant has been implemented, and a compiler for the InH-Prolog variant is currently nearing completion.


Logic Program Classical Negation Horn Clause Active Head Disjunctive Program 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    M. Gelfond and V. Lifschitz. Logic programs with classical negation. In D.H.D. Warren and P. Szeredi, editors, Logic Programming: Proc. of the Seventh Int'l Conf., Jerusalem, Israel, 1990. MIT Press.Google Scholar
  2. [2]
    G. Gentzen. Investigations into logical deductions. In M.E. Szabo, editor, The collected papers of Gerhard Gentzen, pages 68–131. North-Holland Publishing Company, Amsterdam, 1969.Google Scholar
  3. [3]
    R. Kowalski and D. Kuehner. Linear resolution with selection function. Artificial Intelligence, 2:227–260, 1971.CrossRefGoogle Scholar
  4. [4]
    J. Lobo, J. Minker, and A. Rajasekar. Extending the semantics of logic programs to disjunctive logic programs. In G. Levi and M. Martelli, editors, Logic Programming: Proc. of the Sixth Int'l Conf, Lisbon, Portugal, 1989.Google Scholar
  5. [5]
    D.W. Loveland. Mechanical theorem proving by model elimination. J. ACM, 15:236–251, 1968.CrossRefGoogle Scholar
  6. [6]
    D.W. Loveland. A simplified format for the model elimination procedure. J. ACM, 16:349–363, 1969.CrossRefGoogle Scholar
  7. [7]
    D.W. Loveland. Automated Theorem Proving: A Logical Basis. North-Holland, Amsterdam, 1978.Google Scholar
  8. [8]
    D.W. Loveland. Near-Horn Prolog. In J. Lassez, editor, Logic Programming: Proc. of the Fourth Int'l Conf., pages 456–469. MIT Press, 1987.Google Scholar
  9. [9]
    D.W. Loveland. Near-Horn Prolog and beyond. J. Automated Reasoning, 7:1–26, 1991.CrossRefGoogle Scholar
  10. [10]
    D.W. Loveland and G. Nadathur. Handbook for Logic in AI and Logic Programming, volume 4, chapter Proof Procedures for Logic Programming. Oxford University Press. (to appear).Google Scholar
  11. [11]
    D.W. Loveland and D.W. Reed. A near-Horn Prolog for compilation. In J. Lassez and G. Plotkin, editors, Computational Logic: Essays in Honor of Alan Robinson. MIT Press, 1991.Google Scholar
  12. [12]
    J. Minker. On indefinite databases and the closed world assumption. In Lecture Notes in Computer Science 138, pages 292–308. Springer-Verlag, Berlin, 1982.Google Scholar
  13. [13]
    J. Minker and A. Rajasekar. A fixpoint semantics for disjunctive logic programs. J. Logic Programming, 9(1):45–74, 1990.CrossRefGoogle Scholar
  14. [14]
    J. Minker and G. Zanon. An extension to linear resolution with selection function. Information Processing Letters, 14(3):191–194, 1982.CrossRefGoogle Scholar
  15. [15]
    A. Rajasekar, J. Lobo, and J. Minker. Weak generalized closed world assumption. J. Automated Reasoning, 5:293–307, 1989.CrossRefGoogle Scholar
  16. [16]
    D.W. Reed. A Case-analysis Approach to Disjunctive Logic Programming. PhD thesis, Duke University, December 1991.Google Scholar
  17. [17]
    D.W. Reed and D.W. Loveland. A comparison of three Prolog extensions. J. Logic Programming, 12(1), 1992.Google Scholar
  18. [18]
    D.W. Reed, D.W. Loveland, and B.T. Smith. An alternative characterization of disjunctive logic programs. In V. Saraswat and K. Ueda, editors, Logic Programming: Proc. of the 1991 Int'l Symp. MIT Press, 1991.Google Scholar
  19. [19]
    K.A. Ross and R.W. Topor. Inferring negative information from disjunctive databases. J. Automated Reasoning, 4(2):397–424, 1988.CrossRefGoogle Scholar
  20. [20]
    B.T. Smith and D.W. Loveland. A simple near-Horn Prolog interpreter. In Kowalski and Bowen, editors, Logic Programming: Proc. of the Fifth Int'l Conf. and Symp., pages 794–809. MIT Press, 1988.Google Scholar
  21. [21]
    M.H. van Emden and R.A. Kowalski. The semantics of predicate logic as a programming language. J. ACM, 23(4):733–742, 1976.CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1992

Authors and Affiliations

  1. 1.Department of Computer ScienceDuke UniversityDurhamUSA
  2. 2.Department of Computer ScienceUniversity of North CarolinaChapel HillUSA

Personalised recommendations