Skip to main content

On the semantics of logic programs

  • Logic Programming (Session 1)
  • Conference paper
  • First Online:

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

Abstract

The paper is a general overview of our approach to the semantics of logic programs whose aim is finding notions of models which really capture the operational semantics, and are therefore useful for defining program equivalences and for semantics-based program analysis. The approach leads to the introduction of extended interpretations which are more expressive than Herbrand interpretations. The semantics in terms of extended interpretations can be obtained as a result of both an operational and a fixpoint construction. It can also be characterized from the modeltheoretic viewpoint, by defining a set of extended models which contains standard Herbrand models. The original construction for positive programs is shown to be applicable to other classes of logic programs, such as constraint logic programs, open programs, concurrent constraint programs and general programs.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. K. R. Apt. Introduction to Logic Programming. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B: Formal Models and Semantics. Elsevier, Amsterdam and The MIT Press, Cambridge, 1990.

    Google Scholar 

  2. K. R. Apt, H. Blair, and A. Walker. Towards a Theory of Declarative Knowledge. In J. Minker, editor, Foundations of Deductive Databases and Logic Programming, pages 89–148. Morgan Kaufmann, Los Altos, Ca., 1988.

    Google Scholar 

  3. R. Barbuti and R. Giacobazzi. A bottom-up polymorphic type inference in logic programming. Technical Report TR 27/89, Dipartimento di Informatica, Università di Pisa, 1989.

    Google Scholar 

  4. R. Barbuti, R. Giacobazzi, and G. Levi. A General Framework for Semantics-based Bottom-up Abstract Interpretation of Logic Programs. Technical Report TR 20/89, Dipartimento di Informatica, Università di Pisa, 1989. Revised version 1990.

    Google Scholar 

  5. A. Bossi, M. Gabbrielli, G. Levi, and M. C. Meo. Contributions to the Semantics of Open Logic Programs. Technical report, Dipartimento di Informatica, Università di Pisa, 1991.

    Google Scholar 

  6. A. Bossi and M. Menegus. Una Semantica Composizionale per Programmi Logici Aperti. In P. Asirelli, editor, Proc. Sixth Italian Conference on Logic Programming, 1991.

    Google Scholar 

  7. F. Bry. Logic Programming as Constructivism: A Formalization and its Application to Databases. In Proc. Eighth ACM Symp. on Principles of Database Systems, 1989.

    Google Scholar 

  8. F. Bry. Negation in Logic Programming: A Formalization in Constructive Logic. In Proc. First Workshop on Information Systems and Artificial Intelligence, Ulm, West Germany, 1990.

    Google Scholar 

  9. D. Chan. Constructive Negation Based on the Completed Database. In R. A. Kowalski and K. A. Bowen, editors, Proc. Fifth Int'l Conf. on Logic Programming, pages 111–125. The MIT Press, Cambridge, Mass., 1988.

    Google Scholar 

  10. K. L. Clark. Predicate logic as a computational formalism. Res. Report DOC 79/59, Imperial College, Dept. of Computing, London, 1979.

    Google Scholar 

  11. M. Codish, D. Dams, and E. Yardeni. Bottom-up Abstract Interpretation of Logic Programs. Technical report, Dept. of Computer Science, The Weizmann Institute, Rehovot, 1990.

    Google Scholar 

  12. F. S. de Boer and C. Palamidessi. Concurrent logic languages: Asynchronism and language comparison. In S. Debray and M. Hermenegildo, editors, Proc. North American Conf. on Logic Programming'90, pages 99–114. The MIT Press, Cambridge, Mass., 1990.

    Google Scholar 

  13. F. S. de Boer and C. Palamidessi. On the asynchronous nature of communication in concurrent logic languages: A fully abstract model based on sequences. In J.C.M. Baeten and J.W. Klop, editors, Proc. of Concur 90, volume 458 of Lecture Notes in Computer Science, pages 175–194. Springer-Verlag, Berlin, 1990.

    Google Scholar 

  14. F. Denis and J.-P. Delahaye. Unfolding, Procedural and Fixpoint Semantics of Logic Programs. In Proc. STACS'91, 1991.

    Google Scholar 

  15. P. Deransart and G. Ferrand. Programmation en logique avec negation: presentation formelle. Technical Report No. 87/3, Lab. d'Informatique, Département de Mathématiques et d'Informatique, Université d'Orléans, 1987.

    Google Scholar 

  16. Phan Minh Dung. Negation as Hypotheses: an Abductive Foundation for Logic Programming. In K. Furukawa, editor, Proc. Eight Int'l Conf. on Logic Programming. The MIT Press, Cambridge, Mass., 1991.

    Google Scholar 

  17. Phan Minh Dung and K. Kanchanasut. A Fixpoint Approach to Declarative Semantics of Logic Programs. In E. Lusk and R. Overbeck, editors, Proc. North American Conf. on Logic Programming'89, pages 604–625. The MIT Press, Cambridge, Mass., 1989.

    Google Scholar 

  18. K. Eshghi and R. A. Kowalski. Abduction compared with Negation by Failure. In G. Levi and M. Martelli, editors, Proc. Sixth Int'l Conf. on Logic Programming, pages 234–254. The MIT Press, Cambridge, Mass., 1989.

    Google Scholar 

  19. M. Falaschi, M. Gabbrielli, G. Levi, and M. Murakami. Nested Guarded Horn Clauses. International Journal of Foundations of Computer Science, 1(3):249–263, 1990.

    Google Scholar 

  20. M. Falaschi and G. Levi. Finite failures and partial computations in concurrent logic languages. Theoretical Computer Science, 75:45–66, 1990.

    Google Scholar 

  21. M. Falaschi, G. Levi, M. Martelli, and C. Palamidessi. A new Declarative Semantics for Logic Languages. In R. A. Kowalski and K. A. Bowen, editors, Proc. Fifth Int'l Conf. on Logic Programming, pages 993–1005. The MIT Press, Cambridge, Mass., 1988.

    Google Scholar 

  22. M. Falaschi, G. Levi, M. Martelli, and C. Palamidessi. Declarative Modeling of the Operational Behavior of Logic Languages. Theoretical Computer Science, 69(3):289–318, 1989.

    Google Scholar 

  23. M. Falaschi, G. Levi, M. Martelli, and C. Palamidessi. A Model-Theoretic Reconstruction of the Operational Semantics of Logic Programs. Technical Report TR 32/89, Dipartimento di Informatica, Università di Pisa, 1989. To appear in Information and Computation.

    Google Scholar 

  24. M. Falaschi, G. Levi, and C. Palamidessi. A Synchronization Logic: Axiomatics and Formal Semantics of Generalized Horn Clauses. Information and Control, 60(1):36–69, 1984.

    Google Scholar 

  25. G. Ferrand. A reconstruction of Logic Programming with Negation. Technical Report No. 86/5, Lab. d'Informatique, Département de Mathématiques et d'Informatique, Université d'Orléans, 1986.

    Google Scholar 

  26. M. Gabbrielli and G. Levi. Unfolding and Fixpoint Semantics of Concurrent Constraint Programs. In H. Kirchner and W. Wechler, editors, Proc. Second Int'l Conf. on Algebraic and Logic Programming, volume 463 of Lecture Notes in Computer Science, pages 204–216. Springer-Verlag, Berlin, 1990.

    Google Scholar 

  27. M. Gabbrielli and G. Levi. Modeling Answer Constraints in Constraint Logic Programs. In K. Furukawa, editor, Proc. Eighth Int'l Conf. on Logic Programming. The MIT Press, Cambridge, Mass., 1991.

    Google Scholar 

  28. M. Gabbrielli and G. Levi. Unfolding and Fixpoint Semantics of Concurrent Constraint Programs. Technical Report TR 2/91, Dipartimento di Informatica, Università di Pisa, 1991.

    Google Scholar 

  29. M. Gabbrielli, G. Levi, and D. Turi. An Incremental Semantics for Logic Programs with Negation. Technical report, Dipartimento di Informatica, Università di Pisa, 1991.

    Google Scholar 

  30. H. Gaifman, M. J. Maher, and E. Y. Shapiro. Reactive Behavior Semantics for Concurrent Constraint Logic Programs. In E. Lusk and R. Overbeck, editors, Proc. North American Conf. on Logic Programming'89, pages 553–572. The MIT Press, Cambridge, Mass., 1989.

    Google Scholar 

  31. H. Gaifman and E. Shapiro. Fully abstract compositional semantics for logic programs. In Proc. Sixteenth Annual ACM Symp. on Principles of Programming Languages, pages 134–142. ACM, 1989.

    Google Scholar 

  32. H. Gaifman and E. Shapiro. Proof theory and semantics of logic programs. In Proc. Fourth IEEE Symp. on Logic In Computer Science, pages 50–62. IEEE Computer Society Press, 1989.

    Google Scholar 

  33. R. Giacobazzi and G. Levi. Compositional Abstract Interpretation of Constraint Logic Programs. Technical report, Dipartimento di Informatica, Università di Pisa, 1991.

    Google Scholar 

  34. R. Giacobazzi and L. Ricci. Pipeline optimizations in and-parallelism by abstract interpretation. In D. H. D. Warren and P. Szeredi, editors, Proc. Seventh Int'l Conf. on Logic Programming, pages 291–305. The MIT Press, Cambridge, Mass., 1990.

    Google Scholar 

  35. J. Jaffar and J.-L. Lassez. Constraint Logic Programming. In Proc. Fourteenth Annual ACM Symp. on Principles of Programming Languages, pages 111–119. ACM, 1987.

    Google Scholar 

  36. J. Jaffar and J.-L. Lassez. Constraint Logic Programming. Technical report, Department of Computer Science, Monash University, June 1986.

    Google Scholar 

  37. K. Kanchanasut and P. Stuckey. Eliminating Negation from Normal Logic Programs. In H. Kirchner and W. Wechler, editors, Proc. Second Int'l Conf. on Algebraic and Logic Programming, volume 463 of Lecture Notes in Computer Science, pages 217–231. Springer-Verlag, Berlin, 1990.

    Google Scholar 

  38. J.-L. Lassez and M. J. Maher. Closures and Fairness in the Semantics of Programming Logic. Theoretical Computer Science, 29:167–184, 1984.

    Google Scholar 

  39. G. Levi. Models, Unfolding Rules and Fixpoint Semantics. In R. A. Kowalski and K. A. Bowen, editors, Proc. Fifth Int'l Conf. on Logic Programming, pages 1649–1665. The MIT Press, Cambridge, Mass., 1988.

    Google Scholar 

  40. G. Levi and P. Mancarella. The Unfolding Semantics of Logic Programs. Technical Report TR-13/88, Dipartimento di Informatica, Università di Pisa, 1988.

    Google Scholar 

  41. J. W. Lloyd. Foundations of Logic Programming. Springer-Verlag, Berlin, 1987. Second edition.

    Google Scholar 

  42. J. W. Lloyd and J. C. Shepherdson. Partial Evaluation in Logic Programming. Technical Report CS-87-09, Computer Science Department, University of Bristol, 1987. Revised version 1989, to appear in Journal of Logic Programming.

    Google Scholar 

  43. M. J. Maher. Logic semantics for a class of committed-choice programs. In J.-L. Lassez, editor, Proc. Fourth Int'l Conf. on Logic Programming, pages 858–876. The MIT Press, Cambridge, Mass., 1987.

    Google Scholar 

  44. M. J. Maher. Equivalences of Logic Programs. In J. Minker, editor, Foundations of Deductive Databases and Logic Programming, pages 627–658. Morgan Kaufmann, Los Altos, Ca., 1988.

    Google Scholar 

  45. K. Marriott and H. Søndergaard. Bottom-up abstract interpretation of logic programs. In R. A. Kowalski and K. A. Bowen, editors, Proc. Fifth Int'l Conf. on Logic Programming, pages 733–748. The MIT Press, Cambridge, Mass., 1988.

    Google Scholar 

  46. K. Marriott and H. Søndergaard. Semantics-based dataflow analysis of logic programs. In G. Ritter, editor, Information Processing 89. North-Holland, 1989.

    Google Scholar 

  47. J. Minker and A. Rajasekar. A Fixpoint Semantics for Disjunctive Logic Programs. Journal of Logic Programming, 9:45–74, 1990.

    Google Scholar 

  48. V. A. Saraswat. Concurrent Constraint Programming Languages. PhD thesis, Carnegie-Mellon University, January 1989.

    Google Scholar 

  49. V. A. Saraswat and M. Rinard. Concurrent constraint programming. In Proc. Seventeenth Annual ACM Symp. on Principles of Programming Languages. ACM, 1990.

    Google Scholar 

  50. V. A. Saraswat, M. Rinard, and P. Panangadnen. Semantic foundation of concurrent constraint programming. In Proc. Eighteenth Annual ACM Symp. on Principles of Programming Languages. ACM, 1990.

    Google Scholar 

  51. E. Y. Shapiro. The family of concurrent logic programming languages. ACM Computing Surveys, 21(3):412–510, 1989.

    Google Scholar 

  52. H. Tamaki and T. Sato. Unfold/Fold Transformations of Logic Programs. In Sten-Åke Tarnlund, editor, Proc. Second Int'l Conf. on Logic Programming, pages 127–139, 1984.

    Google Scholar 

  53. D. Turi. Extending S-Models to Logic Programs with Negation. In K. Furukawa, editor, Proc. Eighth Int'l Conf. on Logic Programming. The MIT Press, Cambridge, Mass., 1991.

    Google Scholar 

  54. M. H. van Emden and R. A. Kowalski. The semantics of predicate logic as a programming language. Journal of the ACM, 23(4):733–742, 1976.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Javier Leach Albert Burkhard Monien Mario Rodríguez Artalejo

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Gabbrielli, M., Levi, G. (1991). On the semantics of logic programs. In: Albert, J.L., Monien, B., Artalejo, M.R. (eds) Automata, Languages and Programming. ICALP 1991. Lecture Notes in Computer Science, vol 510. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-54233-7_121

Download citation

  • DOI: https://doi.org/10.1007/3-540-54233-7_121

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-47516-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics