Semantics of Input-Consuming Logic Programs

  • Annalisa Bossi
  • Sandro Etalle
  • Sabina Rossi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1861)


Input-consuming programs are logic programs with an additional restriction on the selectability (actually, on the resolvability) of atoms. This class of programs arguably allows to model logic programs employing a dynamic selection rule and constructs such as delay declarations: as shown also in [5], a large number of them are actually input-consuming.

In this paper we show that - under some syntactic restrictions - the S-semantics of a program is correct and fully abstract also for input-consuming programs. This allows us to conclude that for a large class of programs employing delay declarations there exists a model-theoretic semantics which is equivalent to the operational one.


Logic programming dynamic scheduling semantics 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    K.R. Apt. Introduction to Logic Programming. In J. van Leeuwen, editor, Handbook of Theoretical Computer Science, volume B: Formal Models and Semantics, pages 495–574. Elsevier, Amsterdam and The MIT Press, Cambridge, 1990.Google Scholar
  2. [2]
    K. R. Apt. From Logic Programming to Prolog. Prentice Hall, 1997.Google Scholar
  3. [3]
    K. R. Apt and I. Luitjes. Verification of logic programs with delay declarations. In A. Borzyszkowski and S. Sokolowski, editors, Proceedings of the Fourth International Conference on Algebraic Methodology and Software Technology, (AMAST’95), Lecture Notes in Computer Science, Berlin, 1995. Springer-Verlag.Google Scholar
  4. [4]
    R. Apt and A. Pellegrini. On the occur-check free Prolog programs. ACM Toplas, 16(3):687–726, 1994.CrossRefGoogle Scholar
  5. [5]
    A. Bossi, S. Etalle, and S. Rossi. Properties of input-consuming derivations. Electronic Notes in Theoretical Computer Science, 30(1), 1999., temporarily available at
  6. [6]
    A. Bossi, S. Etalle, and S. Rossi. Properties of input-consuming derivations. Technical Report CS 99-06, Universiteit Maastricht, 1999.Google Scholar
  7. [7]
    A. Bossi, S. Etalle, and S. Rossi. Semantics of input-consuming programs. Technical Report CS 00-01, Universiteit Maastricht, 2000.Google Scholar
  8. [8]
    Annalisa Bossi, Maurizio Gabrielli, Giorgio Levi, and Maurizio Martelli. The S-semantics approach: Theory and applications. The Journal of Logic Programming, 19 & 20:149–198, May 1994.Google Scholar
  9. [9]
    R. Chadha and D.A. Plaisted. Correctness of unification without occur check in Prolog. Technical report, Department of Computer Science, University of North Carolina, Chapel Hill, N.C., 1991.Google Scholar
  10. [10]
    P. Dembinski and J. Maluszynski. AND-parallelism with intelligent backtracking for annotated logic programs. In Proceedings of the International Symposium on Logic Programming, pages 29–38, Boston, 1985.Google Scholar
  11. [11]
    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.zbMATHCrossRefMathSciNetGoogle Scholar
  12. [12]
    J. W. Lloyd. Foundations of Logic Programming Symbolic Computation-Artificial Intelligence. Springer-Verlag, Berlin, 1987. Second edition.Google Scholar
  13. [13]
    L. Naish. An introduction to mu-prolog. Technical Report 82/2, The University of Melbourne, 1982.Google Scholar
  14. [14]
    J. G. Smaus. Proving termination of input-consuming logic programs. In D. De Schreye, editor, 16th International Conference on Logic Programming. MIT press, 1999.Google Scholar
  15. [15]
    J.-G. Smaus, P. M. Hill, and A.M. King. Termination of logic programs with block declarations running in several modes. In C. Palamidessi, editor, Proceedings of the 10th Symposium on Programming Language Implementations and Logic Programming, LNCS. Springer-Verlag, 1998.Google Scholar
  16. [16]
    M.H. van Emden and G.J. de Lucena. Predicate logic as a language for parallel programming. In K.L. Clark and S.-A. Tärnlund, editors, Logic Programming, London, 1982. Academic Press.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2000

Authors and Affiliations

  • Annalisa Bossi
    • 1
  • Sandro Etalle
    • 2
  • Sabina Rossi
    • 1
  1. 1.Dipartimento di InformaticaUniversitá di VeneziaItaly
  2. 2.Universiteit MaastrichtThe Netherlands

Personalised recommendations