Skip to main content

LUPS — A Language for Updating Logic Programs

  • Conference paper
  • First Online:
Logic Programming and Nonmonotonic Reasoning (LPNMR 1999)

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

Abstract

Most of the work conducted so far in the field of logic programming has focused on representing static knowledge, i.e. knowledge that does not evolve with time. To overcome this limitation, in a recent paper, the authors introduced the concept of dynamic logic programming. There, they studied and defined the declarative and operational semantics of sequences of logic programs (or dynamic logic programs), P0 ⊕...⊕Pn. Each such program contains knowledge about some given state, where different states may, e.g., represent different time periods or different sets of priorities. The role of dynamic logic programming is to employ relationships existing between the possibly mutually contradictory sequence of programs to precisely determine, at any given state, the declarative and procedural semantics of their combination. But how, in concrete situations, is a sequence of logic programs built? For instance, in the domain of actions, what are the appropriate sequences of programs that represent the performed actions and their effects? Whereas dynamic logic programming provides a way for determining what should follow, given the sequence of programs, it does not provide a good practical language for the specification of updates or changes in the knowledge represented by successive logic programs. In this paper we define a language designed for specifying changes to logic programs (LUPS - “Language for dynamic updates”). Given an initial knowledge base (in the form of a logic program) LUPS provides a way for sequentially updating it. The declarative meaning of a sequence of sets of update actions in LUPS is defined using the semantics of the dynamic logic program generated by those actions. We also provide a translation of the sequence of update statements sets into a single generalized logic program written in a meta-language, so that the stable models of the resulting program correspond to the previously defined declarative semantics. This meta-language is used in the actual implementation, although his is not the subject of this paper. Finally we briefly mention related work (lack of space prevents us from presenting more detailed comparisons).

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J. J. Alferes, J. A. Leite, L. M. Pereira, H. Przymusinska, and T. Przymusinski. Dynamic logic programming. In A. Cohn and L. Schubert, editors, KR’98. Morgan Kaufmann, 1998.

    Google Scholar 

  2. J. J. Alferes and L. M. Pereira. Update-programs can update programs. In J. Dix, L. M. Pereira, and T. Przymusinski, editors, NMELP’96. Springer, 1996.

    Google Scholar 

  3. J. J. Alferes, L. M. Pereira, T. Przymusinski, H. Przymusinska, and P. Quaresma. Preliminary exploration on actions as updates. In Joint Conference on Declarative Programming, AGP’99, 1999. To appear.

    Google Scholar 

  4. M. Gelfond and V. Lifschitz. The stable model semantics for logic programming. In R. Kowalski and K. A. Bowen, editors, ICLP’88. MIT Press, 1988.

    Google Scholar 

  5. M. Gelfond and V. Lifschitz. Answer sets in general non-monotonic reasoning (preliminary report). In B. Nebel, C. Rich, and W. Swartout, editors, KR’92. Morgan-Kaufmann, 1992.

    Google Scholar 

  6. M. Gelfond and V. Lifschitz. Action languages. Linkoping Electronic Articles in Computer and Information Science, 3(16), 1998.

    Google Scholar 

  7. H. Katsuno and A. Mendelzon. On the difference between updating a knowledge base and revising it. In J. Allen, R. Fikes, and E. Sandewall, editors, KR’91. Morgan Kaufmann, 1991.

    Google Scholar 

  8. F. Lin. Embracing causality in specifying the indirect effects of actions. In IJCAI’95, pages 1985–1991. Morgan Kaufmann, 1995.

    Google Scholar 

  9. V. Marek and M. Truszczynski. Revision specifications by means of programs. In C. MacNish, D. Pearce, and L. M. Pereira, editors, JELIA’ 94. Springer, 1994.

    Google Scholar 

  10. T. Przymusinski and H. Turner. Update by means of inference rules. In V. Marek, A. Nerode, and M. Truszczynski, editors, LPNMR’95. Springer, 1995.

    Google Scholar 

  11. M. Winslett. Reasoning about action using a possible models approach. In V. Marek, A. Nerode, and M. Truszczynski, editors, AAAI’88, 1988.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Alferes, J.J., Pereira, L.M., Przymusinska, H., Przymusinski, T.C. (1999). LUPS — A Language for Updating Logic Programs. In: Gelfond, M., Leone, N., Pfeifer, G. (eds) Logic Programming and Nonmonotonic Reasoning. LPNMR 1999. Lecture Notes in Computer Science(), vol 1730. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46767-X_12

Download citation

  • DOI: https://doi.org/10.1007/3-540-46767-X_12

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66749-0

  • Online ISBN: 978-3-540-46767-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics