|Fulltext||PDF (requires Acrobat Reader)|
|Fulltext||PostScript (requires a PostScript Reader)|
|Authors:||José Júlio Alferes, João A. Leite, Luís Moniz Pereira, Halina Przymusinska and Teodor Przymusinski|
|Article title:||Dynamic Logic Programming|
|Abstract [en]:||In this paper we investigate updates of knowledge bases represented
by logic programs. In order to represent negative information, we use generalized
logic programs which allow default negation not only in their bodies but
also in their heads.
We start by introducing the notion of an update $P \oplus U$ of a logic program $P$ by another logic program $U$. Subsequently, we provide a precise semantic characterization of $P \oplus U$, and study some basic properties of program updates. In particular, we show that our update programs generalize the notion of interpretation update.
We then extend this notion to sequences of logic programs updates $P_1 \oplus P_2 \oplus \dots$, defining dynamic program updates, thereby introducing the paradigm of dynamic logic programming. This paradigm significantly facilitates modularization of logic programming, and thus modularization of non-monotonic reasoning as a whole.
Suppose that we are given a set of logic program modules, each describing a different state of our knowledge of the world. Different states may represent different time points or different sets of priorities or perhaps even different viewpoints. Consequently, program modules may contain mutually contradictory as well as overlapping information. The role of the dynamic program update is to use the mutual relationships existing between different states to precisely determine, at any given state, the declarative and the procedural semantics of the combined program, resulting from all these modules.
|Publisher:||Linköping University Electronic Press|
|No. of pages:||15|
|Series:||Linköping Electronic Articles in Computer and Information Science|
|REFERENCE TO THIS PAGE: