Skip to main content

Composing general logic programs

  • Regular Papers
  • Conference paper
  • First Online:
Logic Programming And Nonmonotonic Reasoning (LPNMR 1997)

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 1265))

Abstract

The program composition approach can be fruitfully applied to combine general logic programs, i.e. logic programs possibly containing negative premises. We show how the introduction of a basic set of (meta-level) composition operations over general programs increases the knowledge representation capabilities of logic programming for non-monotonic reasoning. Examples of modular programming, hierarchical reasoning, constraints, and rules with exceptions will be illustrated. The semantics of programs and program compositions is defined in terms of three-valued logic [15]. The computational interpretation of program compositions is formalised by an equivalence preserving syntactic transformation of arbitrary program compositions into standard general programs.

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. K. R. Apt. Logic programming. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, pages 493–574. Eisevier, 1990. Vol. B.

    Google Scholar 

  2. K. R. Apt and R. Bol. Logic Programming and Negation: A Survey. Journal of Logic Programming, 19–20:9–71, 1994.

    Google Scholar 

  3. R. Barbuti, P. Mancarella, D. Pedreschi, and F. Turini. A Transformational Approach to Negation in Logic Programming. Journal of Logic Programming, 8:201–228, 1990.

    Google Scholar 

  4. A. Brogi. Program Construction in Computational Logic. PhD thesis, University of Pisa, 1993.

    Google Scholar 

  5. A. Brogi, E. Lamma, P. Mancarella, and P. Mello. A unifying view for logic programming with non-monotonic reasoning. Theoretical Computer Science, 1997. To appear.

    Google Scholar 

  6. A. Brogi, P. Mancarella, D. Pedreschi, and F. Turini. Modular Logic Programming. ACM Transactions on Programming Languages and Systems, 16(4):1361–1398, 1994.

    Google Scholar 

  7. A. Brogi and F. Turini. Fully abstract compositional semantics for an algebra of logic programs. Theoretical Computer Science, 149(2):201–229, 1995.

    Google Scholar 

  8. L. Cavedon and H. Decker. Generalizing allowedness while retaining completeness of SLDNF-resolution. In E. Börger, H. Kleine Büning, and M. M. Richter, editors, Proceedings of the Third Workshop on Computer Science Logic, number 440 in LNCS, pages 98–115. Springer Verlag, 1990.

    Google Scholar 

  9. K. Clark. Negation as failure. In H. Gallaire and J. Minker, editors, Logic and Data Bases, pages 293–322. Plenum, 1978.

    Google Scholar 

  10. J. Dix. Semantics of logic programs: Intuition and formal properties. In A. Furhmann and K. Rott, editors, Logic, Action and Information. De Gruyter, 1993.

    Google Scholar 

  11. H.C. Doets. Leviatonis laus. Journal of Logic and Computation, 3(5):487–516, 1993.

    Google Scholar 

  12. W. Drabent. Completeness of SLDNF-resolution for Non-floundering Queries. Journal of Logic Programming, 27(2):89–106, 1994.

    Google Scholar 

  13. P.M. Dung. Negation as hypotheses: An abductive foundation for logic programming. In K. Furukawa, editor, Proc. 8th International Conference on Logic Programming, pages 3–17. The MIT Press, 1991.

    Google Scholar 

  14. S. Etalle and F. Teusink. A Compositional Semantics for Normal Open Programs. In M. Maher, editor, JICSLP 96 Proceedings of the Joint International Conference and Symposium on Logic Programming, pages 468–482, 1996.

    Google Scholar 

  15. M. Fitting. A Kriple-Kleene semantics for general logic programs. Journal of Logic Programming, 4:295–312, 1985.

    Google Scholar 

  16. M. Gelfond and V. Lifschitz. The stable model semantics for logic programming. In R. A. Kowalski and K. A. Bowen, editors, Proceedings of the Fifth International Conference and Symposium on Logic Programming, Seattle, 1988, pages 1070–1080. The MIT Press, 1988.

    Google Scholar 

  17. M. Gelfond and V. Lifschitz. Clasical negation in logic programming and disjunctive databases. New Generation Computing, 9:365–385, 1991.

    Google Scholar 

  18. S.C. Kleene. Introduction to Metamathematics. van Nostrand, New York, 1952.

    Google Scholar 

  19. R.A. Kowalski. Problems and Promises of Computational Logic. In J.W. Lloyd, editor, Computational Logic, Symposium Proceedings, pages 1–36. Springer-Verlag, 1990.

    Google Scholar 

  20. K. Kunen. Negation in logic programming. Journal of Logic Programming, 4:289–308, 1987.

    Article  Google Scholar 

  21. K. Kunen. Signed data dependencies in programs. Journal of Logic Programming, 7:231–246, 1989.

    Article  Google Scholar 

  22. V. Lifschitz and H. Turner. Splitting a logic program. In Pascal Van Entenryck, editor, Proc. 11th International Conference on Logic Programming, pages 23–37. The MIT Press, 1994.

    Google Scholar 

  23. J. W. Lloyd and R. W. Topor. A Basis for Deductive Database Systems II. Journal of Logic Programming, 3(1):55–67, 1986.

    Google Scholar 

  24. F.G. McCabe. Logic and Objects. PhD thesis, Imperial College of Science and Technology, November 1988.

    Google Scholar 

  25. T. Przymusinski. On the declarative semantics of deductive databases and logic programs. In J. Minker, editor, Foundations of Deductive Databases and Logic Programming, pages 193–216. Morgan Kaufmann, Los Alto, CA, 1988.

    Google Scholar 

  26. T. Przymusinski. Stationary semantics for normal and disjunctive logic programs. In C. Delobel, M. Kifer, and Y. Masunagar, editors, Proceedings of DOOD'91. Springer-Verlag, 1991.

    Google Scholar 

  27. J.C. Shepherdson. Negation in logic programming. In J. Minker, editor, Foundations of Deductive Databases and Logic Programming, pages 19–88. Morgan Kaufmann, Los Alto, CA, 1988.

    Google Scholar 

  28. A. van Gelder, K. Ross, and J. Schlipf. The well-founded semantics for general logic programs. Journal of the ACM, 38(3):620–650, 1991.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jürgen Dix Ulrich Furbach Anil Nerode

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Brogi, A., Contiero, S., Turini, F. (1997). Composing general logic programs. In: Dix, J., Furbach, U., Nerode, A. (eds) Logic Programming And Nonmonotonic Reasoning. LPNMR 1997. Lecture Notes in Computer Science, vol 1265. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-63255-7_21

Download citation

  • DOI: https://doi.org/10.1007/3-540-63255-7_21

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-63255-9

  • Online ISBN: 978-3-540-69249-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics