<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Consistent Transformations of Knowledge Bases in Answer Set Programming</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>J.C. Acosta-Guadarrama</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>LANTI</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mexico</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Acosta-Guadarrama is with the Department of Electrical and Computer Engineering, Engineering Institute of Technology</institution>
          ,
          <addr-line>Juarez, Mexico, 32310</addr-line>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2017</year>
      </pub-date>
      <fpage>17</fpage>
      <lpage>24</lpage>
      <abstract>
        <p>-One of the major and traditional topics of Artificial Intelligence over many years has been knowledge representation and reasoning. It has proved to be a strong theoretical framework for Logic Programming to manage dynamic knowledge bases. In this work, one of two parts, we go through current and some of those past proposals to update knowledge coded into Answer Set Programming knowledge bases, by analysing their features and identifying challenges to represent correct evolving knowledge.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>INTRODUCTION</title>
      <p>
        T appeared as a technical report in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Here we revisit it
      </p>
      <p>HERE is a preliminary version of this paper has first
and update it to current approaches, to classify them and
compare them.</p>
      <p>One of the significant and traditional topics in
Artificial Intelligence over the last years has been knowledge
representation and reasoning; this issue has proved to be a
robust theoretical framework to manage knowledge bases.
This particular topic has become more widely studied in the
administration of knowledge bases of intelligent (rational)
agents, especially in situations of incomplete knowledge
from a changing environment. This area of research is
known in the literature as belief change, and its relevance to
program transformation is fundamental if we are interested
in producing correct knowledge bases, especially if they
represent critical systems requirements.</p>
      <p>
        The history of semantics for updates1 of logic programs
(in our context, formalisms for program transformations) is
rather long. Indeed, it begins in the days of some of the first
versions of PROLOG with its commands assert and retract.
However, sooner they began to yield conflicting information
and other (perhaps unexpected) side effects. It was also time
of research on databases with publications like [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ], and in
particular for logical databases [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ], [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], [
        <xref ref-type="bibr" rid="ref36">36</xref>
        ]. Nevertheless,
some of the first formalisms to carry out proper changes to
monotonic theories have been originally studied by [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ],
[
        <xref ref-type="bibr" rid="ref25">25</xref>
        ], [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ], [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ], whereas in the non-monotonic side by [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ], [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ],
[
        <xref ref-type="bibr" rid="ref30">30</xref>
        ].
      </p>
      <p>
        In particular, [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ] formulated the Stable Models Semantics
(also refereed as Answer Sets Semantics, SM or simply ASP),
and more concrete proposals arose within that framework,
aimed at the problem of updating knowledge represented
This project is mainly supported by The National Council for Science and
Technology, CONACYT, 280712, Consolidacio´n de Laboratorios Nacionales
2017. We are also grateful to The Autonomous University of Juarez
Manuscript received October 10, 2016 at ENC 2016; revised October 24, 2016.
      </p>
      <p>
        1. For historical reasons, in this paper we call it update, although it’s
actually belief revision. A study on the difference was first introduced
by [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ].
in ASP [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ], [
        <xref ref-type="bibr" rid="ref34">34</xref>
        ], [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ], [
        <xref ref-type="bibr" rid="ref38">38</xref>
        ], [
        <xref ref-type="bibr" rid="ref39">39</xref>
        ],
[
        <xref ref-type="bibr" rid="ref42">42</xref>
        ].
      </p>
      <p>In this work we introduce current and some of those
past proposals to transform knowledge bases represented
by logic programs. We point out features as well as some of
their limitations to represent correct evolving knowledge and
of course, correct program transformations. Nevertheless, this
survey is just a small thread of a massive research over more
than two decades, and is by no means exhaustive. It just
takes into account those proposals that are the most relevant
and of interest in our opinion.</p>
      <p>The rest of our paper is divided into a very quick
glimpse of basic background (Section 2) necessary to
understand program transformations in ASP; the approaches
to update logic programs are classified into several different
categories (Sections 3–6) and a section for discussion and
final remarks—Section 7. Each of the approaches show a few
particular examples to illustrate their definitions, as well as
common observations to show disadvantages and to compare
with the others.
2</p>
    </sec>
    <sec id="sec-2">
      <title>PRELIMINARIES</title>
      <p>A main foundation of these proposals is the well-known
Answer Sets Semantics, also known as Stable-Models
Semantics. In this paper it is assumed, though, that the reader
is familiar with basic notions of logic programming and
(extended) disjunctive logic programs, DLP, EDLP, which
are easily available in the literature.
2.1</p>
      <sec id="sec-2-1">
        <title>Logic Programming and Answer Sets</title>
        <p>
          As we represent knowledge by means of ASP programs
for being one of the most studied and founded successful
semantics to reason about incomplete (unknown)
information, in the following we give a very-short description of
Answer Sets Programming (ASP), which is identified with
other names like Stable Logic Programming or Stable Model
Semantics [
          <xref ref-type="bibr" rid="ref22">22</xref>
          ] and A-Prolog. Its formal language and some
more notation are introduced from the literature as follows.
Definition 1 (ASP Language, LASP). In the following
LASP is a language of propositional logic with
symbols: a0; a1; : : : ; connectives: “,” (conjunction) and
metaconnective “;”; disjunction _, also denoted as j;
(and its counterpart, !); : (default negation or weak
negation, also denoted with the word not); “ ” (strong
negation, equally denoted as “ ”). The propositional
symbols are also called atoms or atomic propositions.
A literal is an atom or a strong-negated atom. A rule is
an ordered pair H( ) B( ), where H( ) is a
possiblyempty finite set of literals in disjunction and B( ) a
possibly-empty finite set of literals (or default-negated
literals) in conjunction.
        </p>
        <p>The meaning we give the propositional constants is the
same meaning than having an empty set in either
component of a rule. Finally, a logic program (or just program) is a
possibly empty finite set of rules, also known as knowledge
base.</p>
        <p>With the notation just introduced in Definition 1, one
may construct program clauses of several forms that are well
known in the literature, such as Extended Logic Program
(ELP), Extended Disjunctive Logic Program (EDLP), etc.</p>
        <p>Informally, the semantics of such programs consists of
reducing the general rules to rules without default negation
“:”, because the latter are universally well understood. For
page limitation, we just skip the formal definition of such
reduct, which can be easily found in the literature.</p>
        <p>Formally, we say that a program is inconsistent if and
only if it has no answer sets, and consistent otherwise.
Definition 2 (EDLP). An extended disjunctive logic program is
a set of rules of form
`1 _ `2 _ : : : _ `l
`l+1; : : : ; `m; :`m+1; : : : ; :`n
(1)
where `i is a literal and 0
l
m</p>
        <p>Naturally, an extended logic program (or ELP hereafter) is
a finite set of rules of form (1) with l = 1; while an integrity
constraint (also known in the literature as strong constraint)
is a rule of form (1) with l = 0; while a fact is a rule of the
same form with l = m = n. In particular, given a set of
literals A, for a literal ` 2 A, the complementary literal is `
and vice versa; for a set M of literals, M = f ` j ` 2 Mg,
and LitM denotes the set M [ M; finally, a signature LK
is a finite set of literals occurring in a knowledge base, K.
Additionally, given a set of literals M A, the complement
set M = A n M.</p>
        <p>The well-known semantics of an EDLP consists of
reducing general rules to rules without default negation “:”
because the latter can be interpreted in classical logic by
means of the well-known Herbrand models. In particular, the
reduced rules with no default negation Mon of a rule of the
form (1) is
`1 _ `2 _ : : : _ `l
`l+1; : : : ; `m
(2)
where `i are literals and 0 l m. This kind of rules is
known in the literature as monotonic counterpart or positive
program. Additionally, the monotonic counterpart of a set of
rules is the set of the monotonic counterparts of its rules.</p>
        <p>Now let us introduce the meaning of programs with both
monotonic and nonmonotonic counterparts.
(3)
(4)</p>
        <p>Suppose a finite ground program K, consisting of clauses
of form (1). For any set S LK, the answer-sets reduct KS
corresponds to</p>
        <p>KS = f`1 _ `2 _ : : : _ `l</p>
        <p>`l+1; : : : ; `m :
f`m+1; : : : ; `ng \ S = ;g
Stating S as a set of literals rather than atoms, makes one of
the differences with Stable-models semantics.</p>
        <p>Next, the meaning of a monotonic counterpart
corresponds to its minimal classical model as follows.</p>
        <p>Definition 3 (Minimal Closure, Cn(K)). Let K be a positive
extended disjunctive program and LK the signature (set of
all ground literals) from K. The set Cn(K) denotes the
minimal subset of LK where,
1) for each ground clause p0 _ p1 _ _ pl q1; : : : ; qm
in K, q1; : : : ; qn 2 S implies pi 2 S for some 0 i
l; and for each ground clause of the form
?</p>
        <p>q1; : : : ; qm
fq1; : : : ; qmg * S.
2) If S contains a pair of complementary literals, then</p>
        <p>S = LK.</p>
        <p>Note that item (2) in Definition 3 extends Stable Models by
giving a meaning to strong negation.</p>
        <p>Finally, an answer set of a given program K is a minimal
closure of its reduct as following stated.</p>
        <p>Definition 4 (Answer Set). Suppose K is a EDLP and S a
set of literals. Then, S is an answer set of K if and only if
S = Cn(KS ).</p>
        <p>Notice that all stable models can be viewed as minimal
Herbrand models of a set of first-order sentences, but not the
converse. Additionally, S is a consistent answer set of a given
program K if it does not contain a complementary pair of
literals.</p>
        <p>
          Although we have introduced ASP as propositional
(ground) programs, fixed non-ground ASP-programs of
arbitrary arity are also considered in the same way than [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ]
do. Accordingly, non-ground ASP-programs with variables
or constants as arguments can be seen as a simplified
expressions of larger ground (propositional) ones without
variables, where each ground program K is a set of its ground
rules 2 K. In addition, a ground rule is the set obtained
by all possible substitutions of variables in by constants
occurring in K [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ].
        </p>
        <p>In general, ASP is the necessary background and main
foundation that is common to all the approaches here
presented. Yet another framework employed by a few of the
approaches to update knowledge in ASP is called
Generalized Answer Sets.</p>
        <p>This is the basic background to understand the
following approaches to update knowledge represented in ASP
programs. So, let us begin with the different proposals.
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>EITER’S TEAM</title>
      <p>
        To the best of our knowledge, [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] achieved the most
complete survey of most known semantics for updates of logic
programs, by gathering relevant postulates and principles
from the literature. Their approach first appeared in [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]
with a vast study of well-known and well-accepted
postulates and properties, and later refined [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] and extended to
be a main component in more general problems like agents
[
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] or preferences. They also implemented a solver2 that is
the main engine of an experimental graphical front end we
have implemented3.
      </p>
      <p>
        In [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] they formulate a natural definition for updating
logic program sequences on a restricted Answer Sets
language by rejecting rules under a causal rejection principle.
The principle is due to [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] that later, however, turned out
to be counterintuitive. See [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ]. The problem comes
up from a strong dependency upon the syntax of programs,
first noted by [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ], [
        <xref ref-type="bibr" rid="ref37">37</xref>
        ], and is further discussed in
Section 4. In particular, the formula under which they, [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ],
[
        <xref ref-type="bibr" rid="ref18">18</xref>
        ], analyze and describe update properties is as follows.
      </p>
      <p>Given an update sequence (K1; K2; : : : ; Kn), with 2
n, over a set of atoms A, assume A as an extension of
A by new pair-wise unique atoms rej( ) and i, for each
rule occurring in K; each atom 2 A, and 1 i n.
An injective naming function Name( ; ) is also assumed,
which assigns to each rule in a program Ki a unique name,
Name( ; Ki), provided that Name( ; Ki) 6= Name( 0; Kj )
whenever i 6= j. Finally, for a literal `, they use `i to denote
the result of replacing an atomic formula of ` by i.</p>
      <p>The intuitive idea of rej( ) is that of an atom that blocks
(rejects or inhibits) a related rule when the former is true,
provided that there is another more recent rule 0 with
conflicting information.</p>
      <p>
        Then [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ] define the intended answer sets of an update
sequence (K1; K2; : : : ; Kn) in terms of the answer sets of
K/ = (K1 / / Kn). In other words, the models are back
expressed in the original alphabet by the intersection of
them and the original atoms:
Definition 5 ( [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]). Given an update sequence,
      </p>
      <p>(K1; K2; : : : ; Kn)
over a set of atoms A, then S LitA is an update answer
set of (K1; K2; : : : ; Kn) if and only if S = S0 \ A for some
answer set S0 of K/ = (K1 / / Kn). The collection of
all the update answer sets of (K1; K2; : : : ; Kn) is denoted
by U (K1; K2; : : : ; Kn).</p>
      <p>In addition to the declarative version, this semantics is
also supported by a solver available both for downloading
and running online4, which is yet another valuable asset
worth considering when comparing the approach with
others.</p>
      <p>
        Let us present the following example, inspired in [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], to
illustrate their approach. Later we will reuse it with other
approaches:
Example 1. Suppose we have the following
simple-butillustrative two sets of system requirements (translated
2. Available at http://www.kr.tuwien.ac.at/staff/giuliana/project.
html#Download.
      </p>
      <p>
        3. The graphical online front end to [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] command-line solver can be
found at: http://logic-lab.sourceforge.net/upd.html.
      </p>
      <p>4. We have installed an online version, which also provides a
graphicoriented interface on the server itself—http://logic-lab.sourceforge.
net/upd.html. Obviously, no download or installation is necessary to
run the latter version.
into ASP), h K1; K2 i, representing the initial and current
knowledge of an intelligent greenhouse, which acts
autonomously under specific circumstances, where
K1 = fnotify</p>
      <p>K2 = f wSystem
wPlants
night ; not wSystem</p>
      <p>night
wSystem
wSystemg
blackout
blackout g
Program K1 might represent the following
configuration:</p>
      <p>Notify when it’s night and there isn’t evidence of the
water system working.</p>
      <p>It’s night now.</p>
      <p>Water the plants when the water system is working.</p>
      <p>The system is working now.</p>
      <sec id="sec-3-1">
        <title>The unique model of such requirements is</title>
        <p>fnight ; wPlants; wSystemg:
Now suppose that the systems engineer needs to
incorporate a new rule that states to not water plants when the
ground is flood: wPlants gFlood . By their definition,
the transformed update program K/ = (K1 / / Kn)
consists of the following rules—amongst the rest of the
rules that we skip for page constraints:
wSystem1
wSystem2 blackout ; not rej( 5)</p>
        <p>rej( 4) not wSystem2
notify 1 notify 2: notify notify 1
wSystem1 wSystem2: wSystem
wSystem2 wSystem3: wSystem
blackout 2 blackout 3: blackout
wSystem1
wSystem2
blackout 2
not rej( 4):
whose unique answer set is
fnotify 1; night ; night 1; rej( 4); wSystem2; blackout ;
blackout 2; notify ; wSystemg and its update answer set
is just: fnight ; blackout ; notify ; wSystemg.</p>
        <p>
          Let us complete Example 1, which is one of the major
disadvantages the framework exhibits [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ]:
Observation 1 (Continued Example 1). Now let us consider
Example 1 again and perform a second update to the
sequence with program K3 = f blackout g. Accordingly,
the new answer set of the resulting update program is
fwSystem1; wSystem; night 1; night ; wPlants1; wPlants;
rej( 6); blackout 3; blackout g:
As a result, by Definition 5 the corresponding update
answer sets are
U (K1; K2) = fnight ; blackout ; notify ; wSystemg and
U (K1; K2; K3) = fwSystem; night ; wPlants; blackout g:
However, this result does not coincide with common
intuition, just because one of the possible models contradicts the
latest fact ( blackout ) stating that it is no longer happening!
On the other hand, the second model says that system
is working, back again for no obvious reason, which is
counterintuitive too.
        </p>
        <p>
          Despite the satisfactory deep nice analysis they realize
of known postulates and principles from the literature and
their available solver, yet another major disadvantage of
[
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]’s approach has to do with syntactic and semantic
contents, as illustrated by the following example inspired from
[
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] and modified by [
          <xref ref-type="bibr" rid="ref37">37</xref>
          ] that may produce counterintuitive
models:
Observation 2.
        </p>
        <p>Suppose an agent who believes that when it is day it is
not night and vice versa, and that there are stars when it
is night and when there are no clouds. Finally, that at the
current moment it is a fact that there are no stars. This
simple story may be coded5 into a logic program K1 as
follows:</p>
        <p>K1 = f(day not night );
(stars night ; not cloudy );
(night
starsg
not day )
whose unique answer set is fday ; starsg. Later, the
agent acquires new information stating that stars and
constls6 are the same thing, as coded in K2. As soon as
the agent updates K1 with program</p>
        <p>
          K2 = f(stars
constls);
(constls
stars)g
the augmented alphabet of the two programs contains only
one new extra atom with respect to K1: constls. As the
model of K2 is obviously the empty answer set, constls
is considered synonym of stars by means of K2, and
thus the update should not change the original beliefs.
However, the update yields an extra answer set in some
of the existing update semantics based on the causal
rejection principle see [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ], [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]: fstars; constls; night g;
which does not coincide with common intuition.
        </p>
        <p>
          The reason is that, although stars can not be true,
introducing constls gives another possibility for stars to be
true. Thus, the additional answer set is derived [
          <xref ref-type="bibr" rid="ref37">37</xref>
          ].
In general, these supplementary rules in the update are
a conservative extension [
          <xref ref-type="bibr" rid="ref31">31</xref>
          ] to K1: the original language
is extended and all answer sets ought to be extensions
of the old answer sets. In this specific situation, constls
should be true if and only if stars is true.
        </p>
        <p>So, Observation 2 means that the proposed semantics is
inappropriate to model the corresponding kind of problems.</p>
        <p>Finally, updating knowledge through a sequence of logic
programs does not seem to be natural in our opinion. For
instance, consider Observation 1 again and try to perform
a new update. Although the authors might have had other
goals and intentions, their current approach does not allow
to do that (i.e. you would have to “initialize” the sequence
and append the new update to it.</p>
        <p>
          To recap, [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ] were very good at gathering relevant
postulates and principles from the literature and at analysing
them in terms of their proposal. Their approach, however,
suffers from a few disadvantages for our interests owing to
its reliance on the causal rejection principle (see [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]) and to its
sequence-based approach.
        </p>
        <p>5. Notice that there are other ways to represent the story. The problem
is, however, what to do in this particular situation, when the agent’s
original knowledge base runs across a redundant piece of information.
6. i.e. constellations.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>DYLP AND OTHER EARLY PROPOSALS</title>
      <p>
        One of the earliest approaches to update logic programs
through transformations appeared in the late 90’s from [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ],
[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] that was extended to an interesting language called
LUPS, by [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], to specify explicit updates in programs on a
semantics that they called Dynamic Logic Programming or
DyLP [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Some years later, though, [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] refined the latter,
whom over the previous periods formulated a principle of
rejection, also known as causal rejection principle [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]
and [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>Informally, the called refined principle of rejection consists
in rejecting rules of previous and upcoming programs in an
update sequence, whenever there are other conflicting rules
at the current state.</p>
      <p>
        To begin with, [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] motivation comes from a simple
example to what they themselves called a tautology (a rule from
which they expect no models):7
not p
not p
      </p>
      <p>(5)
One may verify that the rule alone produces no models
in their semantics8—i.e. just the empty model, ;, which
actually contains all non-positive (default-negated) atoms—
and updating knowledge with this rule should have no
effect, and that is why they introduced the refined principle
of rejection.</p>
      <p>
        Additionally, [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] explain in a footnote what tautology
means: A rule of the form ` B with ` 2 B, where `
is an atom (or a default-negated atom) and the body of
a rule, respectively. Although the authors might have had
other goals for their approach, this high dependency on
syntax will prove to be one of their major disadvantages as
a semantics for updates in our opinion, as explained along
this paper.
      </p>
      <p>
        Before introducing their proper definitions for their
semantics, a special notation is necessary, which can be
obtained from the literature and from [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>Intuitively, a refined interpretation of a DyLP program
is a dynamic stable model if the following happens. The
least model of the positive program, which results from the
difference of the rejected rules and the union of the default
assumptions, is the same than the union of the interpretation
and the default-negated literals that do not appear in the
latter.</p>
      <p>Definition 6 introduces the model of the transformed
program from the original dynamic logic program. The intuition
behind Rej( ; ) is the set of rules that conflict (./) with
both current and previous ones in the sequence. Moreover,
Def( ; ) consists of the positive “default-negated” atoms
that do not appear in the intended model.</p>
      <p>Formally, two rules, 1, 2, are in conflict, denoted as
1 ./ 2, if and only if H( 1) = not B( 2).</p>
      <p>7. Note that the kind of rule in (5) is invalid in LASP, and it also
illustrates why strong negation “ ” should not be a simple replacement
to “not” in the head. Take for example, the program f p not pg
whose unique answer set differs from the empty set: f pg.</p>
      <p>
        8. The details are easily available in the literature, like [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
Definition 6 (Dynamic Stable Model, [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]). Let P be a
dynamic logic program and M an interpretation. M is a
dynamic stable model of P if and only if9
      </p>
      <p>
        Although [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] were some of the first researchers to
for
      </p>
      <p>Rej(P; M) = mulate and implement a semantics for updates through
f j 2 Ki; 9 0 2 Kj ; i j; ./ 0; M j= B( 0)g; apdrovgarnatmagetsralniksefotrhmeaotnioenssp,othinetyedstoilul thinavtehiqsusietcetiaonf:eFwirsdtilsy-,</p>
      <p>
        Def(P; M) = for the particular syntax and semantics of their transformed
fnot a j @ 2 (P); H( ) = a; M j= B( )g; generalized logic programs, which is a different variant of
M = least( (P) n Rej(P; M) [ Def(P; M))g: Stable-Models Semantics, or in other words, a non-standard
concept of ASP [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]; secondly, for their causal rejection
prin
      </p>
      <p>This approach has had several implementations, includ- ciple that produces the mentioned counterintuitive results.
Fiing one for the original version before the so-called refined nally, their sequence-of-knowledge-bases approach is in our
principle, and another for the principle itself. Additionally, opinion counterintuitive, as we have already commented at
LUPS is also implemented, which we consider a major asset, the end of Section 3.
and the following list shows their respective locations:
fnot cg; and least[(K0[K1)nRej(P; M)[Def(P; M)] =
fnot c; not rg = M.
http://centria.di.fct.unl.pt/ jja/updates
http://centria.di.fct.unl.pt/ banti/</p>
      <p>FedericoBantiHomepage/refdlp.htm</p>
      <p>
        Now let us analyze an example inspired by [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ],
originally proposed by [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ].
      </p>
      <p>Observation 3. The above framework has missing
information. Let us code the story introduced in Example 1 and
Observation 1 as follows: P = K1 R K2 R K3, where:
K1 = f(notify
not wSystem); (wPlants</p>
      <p>wSystem);
(wSystem)g;</p>
      <p>blackout )g;</p>
      <p>K3 = fnot blackout g:</p>
      <p>K2 = f(blackout ); (not wSystem
M = fwSystem; wPlantsg is a refined dynamic stable
model of the update sequence, since the unique rejected
rule is blackout and the unique default is not notify ,
where the least model is</p>
      <p>
        fwPlants; wSystem; not blackout ; not notify g = M:
In a similar example [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ] argue, however, that the
resulting model is counterintuitive, because after the
first update, the refined dynamic stable model was
fblackout ; notify g and thus there is no reason to believe
that once the power is restored, the system should be
working back again! A similar counterintuitive result is
given in Observation 1.
      </p>
      <p>
        In addition to that, there is still a simple example, first
suggested by [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], that still causes counterintuitive results
in this DyLP-semantics.
      </p>
      <p>Observation 4. Suppose an initial knowledge base K0 =
f(c r); (r)g updated with K1 = fnot r not cg.</p>
      <p>
        Firstly, the initial generalized stable model of K0 is
fc; rg, and one would expect no further changes
after the update because, according to [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], such an
update should be irrelevant to the known fact r and
the derived c. However, the update P = K0 R K1
has the extra model M = fnot c; not rg because
      </p>
      <p>
        M = fnot c; not rg; Rej(P; M) = frg; Def(P; M) =
9. Notice that it seems they have missed the “ ” and have typed
“not a” rather than “not a” in (6) from the original paper in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>Moreover, (6) should be a set of rules, rather than a set of literals, to be
sound with the equality in (6)! In the rest of the section, it is assumed
the former, as the authors do.
5</p>
    </sec>
    <sec id="sec-5">
      <title>MINIMAL CHANGES</title>
      <p>
        In [
        <xref ref-type="bibr" rid="ref34">34</xref>
        ], [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ] they propose three types of updates through
program transformation, to which they call inconsistency
removal, view updates and theory updates. Each of them
correspond to a special case of updates and revision in the
literature.
      </p>
      <p>For page and comparison reasons, this paper is focused
on theory updates, rather than other special cases such as
making an inconsistent program consistent or
differentiating between variant and invariant knowledge. As a result, this
section does not include other types of belief changes, which
are easily available in the literature.</p>
      <p>
        Once the extended abductive program is normalized,
its interpretations shall correspond to transformed update
programs that consist of the rules of the original theory that
don’t belong to the normalized abductive set, merged with a
new set of update rules, as specified in [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ].
      </p>
      <p>
        Next, this transformation of update rules takes part of a
new transformation called update program of the
normalized extended abductive program that is an intermediate
EDLP. This intermediate program specification is as follows,
where P is an EDLP over A, and A a set of abducibles,
such that A \ A = ;:
Definition 7 (Update Program, [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ]). Given an abductive
program h P; A i, its update program, U P, is defined as
an EDLP such that U P = (P n A ) [ U R:
      </p>
      <p>
        Then the models of an update program denote the deletion
of facts or rules from the original program in the pair.
Definition 8 (U-minimal Answer Sets, [
        <xref ref-type="bibr" rid="ref35">35</xref>
        ]). An answer set S
of U P is called U-minimal (U-MAS) if there is no answer
set S0 of U P such that S0 \ U A S \ U A.
      </p>
      <p>As a result, there is one or more new corresponding
updated programs to the U-MAS.
5.1</p>
      <sec id="sec-5-1">
        <title>Discussion</title>
        <p>
          This abduction framework proves to have nice properties
of a syntactical minimal change of rules in the original
nonmonotonic theory—Theory Updates Definition in [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ]—by
means of consistent interpretations of hypothetical changes.
With this framework, [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ] can perform particular kinds of
updates and maintenance of knowledge-bases consistency,
and can also present a vast analysis of disadvantages in
other comparable approaches.
        </p>
        <p>
          In general, [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ]’s first goal is to provide an update
semantics to compute their extended abduction. Secondly, they
also characterize updates through the extended abduction,
as they themselves state it. Consequently, the approach lacks
of a proper analysis of more principles and postulates from
the literature of program transformation or belief change.
Additionally, they characterize different kinds of updates
with their extended abduction, claiming that they can
provide an algebra of rules deletion, besides the addition of
them, to explain observations.
        </p>
        <p>
          Let us recapitulate [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ]’s approach in a few words. They
construct their update program out of the normal abductive
form of an extended abductive program h P [ Q; P n Q i whose
models are U-MAS’s interpreted from an update program.
Last, the interpretations correspond to one (or more) new
programs representing knowledge bases, derived from the
addition and/or deletion of facts that the U-MAS’s describe
in turn.
        </p>
        <p>
          In [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ] they propose an example as an argument against
other approaches—like [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]—that brings back previous
knowledge of the original theory. That is to say, their
interpretation is that a TV in their example10 turns itself on
again and it is possible to watch it as well with no reason to
do so: ftvon; watchtv ; blackout g, which does not coincide
with their intuition. This is similar to our conclusions in
Observation 1, where the system is working back again
upon no justification. However, this argument seems to be
too strong to generalize that all update semantics should
behave accordingly, because [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ] are differentiating fluents
and actions in a language that does not have such an explicit
difference.
        </p>
        <p>Finally, there is a simple example that might represent
another disadvantage of this approach.</p>
        <p>
          Observation 5. Suppose the initial knowledge base K = ;
updated by a simple fact K1 = fxg. Following [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ]’s
framework, the answer sets of its update program is
empty: U P = (; n fxg) [ U R, where U R is clearly
empty because the extended abductive program from the
update pair has no abducibles: A = ; n fxg.
        </p>
        <p>
          Moreover, although the authors present a deep analysis
of their proposal and although it seems to be robust-enough
for agent’s changing environment, there is a lack of further
and more general properties and a lack of a solver, which
make it hard to compare with other alternate approaches.
[
          <xref ref-type="bibr" rid="ref42">42</xref>
          ] pointed out that this approach is classified into a
syntaxbased semantics. As a result, it has no general semantic
foundation that justifies its updates [
          <xref ref-type="bibr" rid="ref42">42</xref>
          ], and by interpreting
the resulting knowledge bases with a given semantics might
interfere with the ASP semantics that performs the update
operation. It is clear that they justify their updates with
an extended abductive framework, which is still a specific
problem and then leaves the mentioned absence of update
characterisation.
        </p>
        <p>
          Finally, a minor disadvantage is that the approach is
undefined to update a knowledge base with an inconsistency.
[
          <xref ref-type="bibr" rid="ref35">35</xref>
          ] state that such a kind of update “makes no sense”,
which clearly does not mean that an agent or whoever
is updating the knowledge base will never come across
10. See [
          <xref ref-type="bibr" rid="ref35">35</xref>
          ] for further details.
an originally inconsistent observation. Nevertheless, they do
consider cases where an initial knowledge base is originally
inconsistent, and they identify such case as inconsistency
removal. This method consists in updating an inconsistency
knowledge base with an empty update.
6
        </p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>ZHANG’S</title>
      <p>
        An interesting proposal for updates through program
transformation comes from [
        <xref ref-type="bibr" rid="ref42">42</xref>
        ], where the author identifies three
types of problems to solve in an update process: elimination
of contradictory information, conflict resolution and syntactic
representation.
      </p>
      <p>
        Additionally, one of the applications from [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] is an
interesting language that is specialized in updates of agent’s
policies and defined at the top of ASP. In [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], they specify
such policies in terms of clauses with a predefined
semiimperative syntactical structure, as well as an initial planning
approach.
      </p>
      <p>
        However, owing to a specialisation the work has on
policies, the programmer is restricted and obliged to use
reserved words like “always”, “implied by”, “with absence”,
etc. which, besides constraining the domain to specific
applications, it reduces the language and has potentially different
meanings in the meta-language. Nevertheless, they already
have a fully fledged system, as they themselves mention it
[
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
6.1
      </p>
      <sec id="sec-6-1">
        <title>General View</title>
        <p>
          In [
          <xref ref-type="bibr" rid="ref42">42</xref>
          ] he characterizes program-transformation updates
in terms of three main objectives: contradiction elimination,
conflict resolution and syntactic representation. The first topic
is one of the most obvious in semantics for updates, which
should be real by preserving a minimal-change principle and a
proper justification. On the other hand, conflict resolution has
to do with potential future contradictions an update might
yield. That is because of the introduction of two kinds of
negations in logic programs—strong and default negation.
Finally, once the process meets the two main goals, the
author argues that a proper semantics should also preserve
as many as possible of the original rules from the updating
knowledge base.
        </p>
        <p>
          In order to realize these three goals, [
          <xref ref-type="bibr" rid="ref41">41</xref>
          ] performs
program update transformation by means of a called prioritized
logic program. In an intuitive way, this kind of program
consists in preferring the latest update to the original
knowledge base including non-contradictory but conflicting rules.
His approach definitions and plenty of examples are easily
accessible in the literature, from which we also recommend
[
          <xref ref-type="bibr" rid="ref3">3</xref>
          ].
        </p>
        <p>A mandatory test is the example in Observation 2, which
produces counterintuitive results in many of the existing
semantics for updates. This is not the case for Zhang’s
semantics, whose expected answer set is just what intuition
would tell us: fday ; starsg.</p>
        <p>
          Despite this approach is well behaved, though, one of the
counter-intuitive examples to [
          <xref ref-type="bibr" rid="ref42">42</xref>
          ]’s approach has to do with
solving conflicts between rules, where most of the current
semantics differ, as first pointed out by [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]:
Observation 6. Suppose an initial knowledge base K0 =
fp not qg being updated by K1 = fq not pg. Its
simple-fact update specification corresponds to
        </p>
        <p>UPLP(SK0 ; K1) = (K ; N ; &lt;);
where</p>
        <sec id="sec-6-1-1">
          <title>Initial Knowledge:</title>
          <p>Inertial Rules:
As a result, its unique answer set SPLP(UPLP(SK0 ; K1)) =
fpg and none of its &lt;-relations are used. Next, the
minimal subset of K0 that is coherent with its answer
set is just K(K0;K1) = K0. Then, the update specification
of K0 and K1 is UPLP(K0; K1) = (K1 [ K(K0;K1); N ; &lt;),
where
(t : p
:q); (u : q
:p); (u &lt; t):</p>
        </sec>
        <sec id="sec-6-1-2">
          <title>Finally, its unique reduct q not p comes from</title>
          <p>(K1 [ K(K0;K1)) n ftg
defeating rule t. Therefore, the conclusion of such an
update is just fqg, what we would not expect.</p>
          <p>
            Last, besides not satisfying some of the principles
already pointed out, one of the major drawbacks of this
approach is being limited to only one update to a knowledge
base. Namely, it is undefined for update sequences and for
successive updates, which does not seem to lead to immediate
practical use. Although [
            <xref ref-type="bibr" rid="ref42">42</xref>
            ] also suggests an extension to
one of his earliest approaches in [
            <xref ref-type="bibr" rid="ref40">40</xref>
            ] to deal with
multiple updates, his proposal still makes the same strong
assumptions when deciding between multiple models, as
in Observation 6.
7
          </p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-7">
      <title>CONCLUSIONS</title>
      <p>
        This work is a critique of current and past proposals for
update semantics, as an attempt to classify them and to
bring out new challenges. This Part I starts with a set of
early proposals. All of them update and revise knowledge
by means of program transformations in ASP or similar
semantics. They run from a wide range from simple-fact
one-step updates of logic programs, up to unlimited updates
either in a sequence or by an iterative process. Some of these
works present a vast collection of postulates and principles
for correct knowledge-base changes, and/or
implementation. However, nearly all the proposals here introduced
still present drawbacks either for being limited to only one
update, or for relying on syntactical principles to change
the original logic program that leads to counterintuitive
results. Nearly all of the issues here pointed out have been
surpassed by current approaches, like [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], where they have
found nice properties and applications— [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. On the
other hand, for practical and commercial reasons, the
proposals here presented are often called semantics for updates,
although there are implicit operations in some of them that
may suggest a different classification, say semantics for belief
revisions.
8
      </p>
    </sec>
    <sec id="sec-8">
      <title>ACKNOWLEDGMENTS</title>
      <p>The author is very grateful to J. Dix and W. Jamroga for their
many useful comments and proofreading some preliminary
versions of this work. Special thanks are due to E. Mart´ınez
too, for proofreading this paper.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>J. C.</given-names>
            <surname>Acosta-Guadarrama</surname>
          </string-name>
          ,
          <article-title>Rogelio Da´vila Pe´rez, Mauricio Osorio, and Victor Saldivar. Modeling Natural Language Metaphors with an Answer Set Programming Framework</article-title>
          ,
          <source>volume LNAI 8856 of ISSN 0302-9743 ISBN 978-3-319-13646-2</source>
          ,
          <string-name>
            <surname>chapter</surname>
            <given-names>IV</given-names>
          </string-name>
          , pages
          <fpage>28</fpage>
          -
          <lpage>36</lpage>
          . Springer-Verlag,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>Juan</surname>
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Acosta-Guadarrama</surname>
          </string-name>
          .
          <article-title>Maintaining knowledge bases at the object level</article-title>
          .
          <source>In Alexander Gelbukh and Angel F. Kuri Morales</source>
          , editors,
          <source>Special Session of the 6th International MICAI Conference</source>
          , pages
          <fpage>3</fpage>
          -
          <lpage>13</lpage>
          , Aguascalientes, Mexico,
          <year>November 2007</year>
          .
          <article-title>IEEE Computer Society</article-title>
          . ISBN:
          <fpage>978</fpage>
          -0-
          <fpage>7695</fpage>
          -3124-3.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>Juan</surname>
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Acosta-Guadarrama</surname>
          </string-name>
          .
          <article-title>A road map of updating in ASP</article-title>
          . ISSN:
          <fpage>1860</fpage>
          -8477 IfI-07-16, TU-Clausthal, Clausthal, Germany,
          <year>December 2007</year>
          .
          <year>35pp</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Juan</surname>
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Acosta-Guadarrama</surname>
          </string-name>
          .
          <article-title>Towards a logic-programming system to debug ASP knowledge bases</article-title>
          .
          <source>In Mauricio Osorio</source>
          , Claudia Zepeda,
          <source>Iva´n Olmos</source>
          , Jose´ L.
          <string-name>
            <surname>Carballido</surname>
          </string-name>
          , Jose´ Arrazola, and Carolina Medina, editors,
          <source>7th Latin American Workshop on NonMonotonic Reasoning</source>
          <year>2011</year>
          , volume Vol-
          <volume>804</volume>
          , pages
          <fpage>3</fpage>
          -
          <lpage>12</lpage>
          , Germany,
          <string-name>
            <surname>November</surname>
          </string-name>
          <year>2011</year>
          . CEUR Workshop Proceedings.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Juan</surname>
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Acosta-Guadarrama</surname>
          </string-name>
          .
          <article-title>Towards a unified framework for declarative knowledge-change-principles and consistency</article-title>
          . In Mauricio Osorio, Claudia Zepeda, Ivan Olmos, Jose´ Luis Carballido, and Carolina Medina, editors,
          <source>8th Latin American Workshop on Non-Monotonic Reasoning</source>
          <year>2012</year>
          , pages
          <fpage>51</fpage>
          -
          <lpage>62</lpage>
          . Direccio´ n de Fomento Editorial, Beneme´rita Universidad Aut o´noma de Puebla,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <surname>Carlos</surname>
            <given-names>E.</given-names>
          </string-name>
          <article-title>Alchourr o´n, Peter Ga¨rdenfors, and David Makinson. On the logic of theory change: Partial meet contraction and revision functions</article-title>
          .
          <source>The Journal of Symbolic Logic</source>
          ,
          <volume>50</volume>
          (
          <issue>2</issue>
          ):
          <fpage>510</fpage>
          -
          <lpage>530</lpage>
          ,
          <year>June 1985</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7] Jose´ J u´lio Alferes, Federico Banti, Antonio Brogi, and
          <string-name>
            <given-names>Pascal</given-names>
            <surname>Hitzler</surname>
          </string-name>
          .
          <article-title>The well supported semantics for multidimensional dynamic logic programs</article-title>
          . In Chitta Baral, Gianluigi Greco, Nicola Leone, and Giorgio Terracina, editors,
          <source>Logic Programming and Nonmonotonic Reasoning</source>
          , volume
          <volume>3662</volume>
          /2005 of LNCS, pages
          <fpage>356</fpage>
          -
          <lpage>368</lpage>
          , Diamante, Italy,
          <year>September 2005</year>
          . Springer Berlin/Heidelberg.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8] Jose´ J u´lio Alferes, Federico Banti, Antonio Brogi, and
          <article-title>Joa˜o Alexandre Leite. The refined extension principle for semantics of dynamic logic programming</article-title>
          .
          <source>Studia Logica</source>
          ,
          <volume>79</volume>
          (
          <issue>1</issue>
          ):
          <fpage>7</fpage>
          -
          <lpage>32</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9] Jose´ J u´lio Alferes,
          <source>Joa˜o Alexandre Leite</source>
          , Lu´ıs Moniz Pereira, Halina Przymusinska, and
          <string-name>
            <surname>Teodor</surname>
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Przymusinski</surname>
          </string-name>
          .
          <article-title>Dynamic updates of non-monotonic knowledge bases</article-title>
          .
          <source>Journal of Logic Programming</source>
          ,
          <volume>45</volume>
          (
          <issue>1-3</issue>
          ):
          <fpage>43</fpage>
          -
          <lpage>70</lpage>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10] Jose´ J u´lio Alferes,
          <source>Joa˜o Alexandre Leite</source>
          , Lu´ıs Moniz Pereira, Teodor C. Przymusinski, and
          <string-name>
            <given-names>Halina</given-names>
            <surname>Przymusinska</surname>
          </string-name>
          .
          <article-title>Dynamic logic programming</article-title>
          .
          <source>In A. Cohn</source>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Schubert</surname>
          </string-name>
          , and S. Shapiro, editors,
          <source>Proceedings of the 6th International Conference on Principles of Knowledge Representation and Reasoning (KR-98)</source>
          , pages
          <fpage>98</fpage>
          -
          <lpage>111</lpage>
          , San Francisco, June 2-5
          <year>1998</year>
          . Morgan Kaufmann Publishers.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11] Jose´ Ju´ lio Alferes, Lu´ıs Moniz Pereira, Halina Przymusinska, and
          <string-name>
            <surname>Teodor</surname>
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Przymusinski. LUPS -</surname>
          </string-name>
          <article-title>A language for updating logic programs</article-title>
          .
          <source>Artificial Intelligence</source>
          ,
          <volume>138</volume>
          (
          <issue>1-2</issue>
          ):
          <fpage>87</fpage>
          -
          <lpage>116</lpage>
          ,
          <year>June 2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>Vino</given-names>
            <surname>Fernando</surname>
          </string-name>
          Crescini and
          <string-name>
            <given-names>Yan</given-names>
            <surname>Zhang</surname>
          </string-name>
          .
          <article-title>Policy updater: A system for dynamic access control</article-title>
          .
          <source>International Journal of Information Security</source>
          ,
          <volume>5</volume>
          (
          <issue>3</issue>
          ):
          <fpage>145</fpage>
          -
          <lpage>165</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>Evgeny</surname>
            <given-names>Dantsin</given-names>
          </string-name>
          , Thomas Eiter, Georg Gottlob, and
          <string-name>
            <given-names>Andrei</given-names>
            <surname>Voronkov</surname>
          </string-name>
          .
          <article-title>Complexity and expressive power of logic programming</article-title>
          .
          <source>ACM Computing Surveys</source>
          ,
          <volume>33</volume>
          (
          <issue>3</issue>
          ):
          <fpage>374</fpage>
          -
          <lpage>425</lpage>
          ,
          <year>September 2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>T.</given-names>
            <surname>Eiter</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Fink</surname>
          </string-name>
          , G. Sabbatini, and
          <string-name>
            <given-names>H.</given-names>
            <surname>Tompits</surname>
          </string-name>
          .
          <article-title>On updates of logic programs: Semantics and properties</article-title>
          .
          <source>Technical Report INFSYS RR1843-00-08</source>
          ,
          <string-name>
            <given-names>TU</given-names>
            <surname>Wien</surname>
          </string-name>
          , Institute fu¨ r Informationssysteme,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <surname>Thomas</surname>
            <given-names>Eiter</given-names>
          </string-name>
          , Michael Fink, Giuliana Sabbatini, and
          <string-name>
            <given-names>Hans</given-names>
            <surname>Tompits</surname>
          </string-name>
          .
          <article-title>Considerations on updates of logic programs</article-title>
          .
          <source>In Manuel Ojeda-Aciego</source>
          , Inman P. de Guzma´n, Gerhard Brewka, and L. Moniz Pereira, editors,
          <source>Logics in Artificial Intelligence</source>
          , European Workshop, JELIA 2000, pages
          <fpage>2</fpage>
          -
          <lpage>20</lpage>
          , Malaga, Spain,
          <year>2000</year>
          . Springer Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>Thomas</surname>
            <given-names>Eiter</given-names>
          </string-name>
          , Michael Fink, Giuliana Sabbatini, and
          <string-name>
            <given-names>Hans</given-names>
            <surname>Tompits</surname>
          </string-name>
          .
          <article-title>A framework for declarative update specifications in logic programs</article-title>
          . In Bernhard Nebel, editor,
          <source>Proceedings of the Seventeenth International Joint Conference on Artificial Intelligence, IJCAI</source>
          ,
          <string-name>
            <surname>volume</surname>
            <given-names>I</given-names>
          </string-name>
          , pages
          <fpage>649</fpage>
          -
          <lpage>654</lpage>
          , Seattle, Washington,
          <year>2001</year>
          . Morgan Kaufmann.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <surname>Thomas</surname>
            <given-names>Eiter</given-names>
          </string-name>
          , Michael Fink, Giuliana Sabbatini, and
          <string-name>
            <given-names>Hans</given-names>
            <surname>Tompits</surname>
          </string-name>
          .
          <article-title>On properties of update sequences based on causal rejection</article-title>
          .
          <source>Theory and Practice of Logic Programming</source>
          ,
          <volume>2</volume>
          (
          <issue>6</issue>
          ):
          <fpage>711</fpage>
          -
          <lpage>767</lpage>
          ,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>Thomas</surname>
            <given-names>Eiter</given-names>
          </string-name>
          , Michael Fink, Giuliana Sabbatini, and
          <string-name>
            <given-names>Hans</given-names>
            <surname>Tompits</surname>
          </string-name>
          .
          <article-title>Reasoning about evolving nonmonotonic knowledge bases</article-title>
          .
          <source>ACM Transactions on Computational Logic</source>
          ,
          <volume>6</volume>
          (
          <issue>2</issue>
          ):
          <fpage>389</fpage>
          -
          <lpage>440</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>Ronald</given-names>
            <surname>Fagin</surname>
          </string-name>
          .
          <source>Reasoning about Knowledge</source>
          . The MIT Press, Cambridge, Massachusetts, USA,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <surname>Ronald</surname>
            <given-names>Fagin</given-names>
          </string-name>
          , Gabriel M. Kuper,
          <string-name>
            <given-names>Jeffrey D.</given-names>
            <surname>Ullman</surname>
          </string-name>
          , and
          <string-name>
            <surname>Moshe</surname>
            <given-names>Y.</given-names>
          </string-name>
          <string-name>
            <surname>Vardi</surname>
          </string-name>
          .
          <article-title>Updating logical databases</article-title>
          .
          <source>Advances in Computing Research</source>
          ,
          <volume>3</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>18</lpage>
          ,
          <year>1986</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <surname>Ronald</surname>
            <given-names>Fagin</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>Jeffrey D.</given-names>
            <surname>Ullman</surname>
          </string-name>
          , and
          <string-name>
            <surname>Moshe</surname>
            <given-names>Y.</given-names>
          </string-name>
          <string-name>
            <surname>Vardi</surname>
          </string-name>
          .
          <article-title>On the semantics of updates in databases</article-title>
          .
          <source>In PODS '83: Proceedings of the 2nd ACM SIGACT-SIGMOD symposium on Principles of database systems</source>
          , pages
          <fpage>352</fpage>
          -
          <lpage>365</lpage>
          , New York, NY, USA,
          <year>1983</year>
          . ACM Press.
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>Michael</given-names>
            <surname>Gelfond</surname>
          </string-name>
          and
          <string-name>
            <given-names>Vladimir</given-names>
            <surname>Lifschitz</surname>
          </string-name>
          .
          <article-title>The Stable Model Semantics for Logic Programming</article-title>
          .
          <source>In Robert A. Kowalski and Kenneth A</source>
          . Bowen, editors,
          <source>Logic Programming</source>
          ,
          <source>Proceedings of the Fifth International Conference and Symposium ICLP/SLP</source>
          , pages
          <fpage>1070</fpage>
          -
          <lpage>1080</lpage>
          , Seattle, Washington,
          <year>1988</year>
          . MIT Press.
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>Hirofumi</given-names>
            <surname>Katsuno</surname>
          </string-name>
          and
          <string-name>
            <given-names>Alberto O.</given-names>
            <surname>Mendelzon</surname>
          </string-name>
          .
          <article-title>A unified view of propositional knowledge base updates</article-title>
          . In N. S. Sridharan, editor,
          <source>the 11th International Joint Conference on Artificial Intelligence, IJCAI-89</source>
          , pages
          <fpage>1413</fpage>
          -
          <lpage>1419</lpage>
          , Detroit, Michigan, USA,
          <year>1989</year>
          . Morgan Kaufmann.
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>Hirofumi</given-names>
            <surname>Katsuno</surname>
          </string-name>
          and
          <string-name>
            <given-names>Alberto O.</given-names>
            <surname>Mendelzon</surname>
          </string-name>
          .
          <article-title>On the difference between updating a knowledge base and revising it</article-title>
          .
          <source>In KR'91</source>
          , pages
          <fpage>387</fpage>
          -
          <lpage>394</lpage>
          , Cambridge, Massachusetts, USA,
          <year>1991</year>
          . Morgan Kaufmann Publishers.
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>Hirofumi</given-names>
            <surname>Katsuno</surname>
          </string-name>
          and
          <string-name>
            <given-names>Alberto O.</given-names>
            <surname>Mendelzon</surname>
          </string-name>
          .
          <article-title>Propositional knowledge base revision and minimal change</article-title>
          .
          <source>Artificial Intelligence</source>
          ,
          <volume>52</volume>
          (
          <issue>3</issue>
          ):
          <fpage>263</fpage>
          -
          <lpage>294</lpage>
          ,
          <year>1991</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <surname>Sarit</surname>
            <given-names>Kraus</given-names>
          </string-name>
          , Daniel Lehmann, and
          <string-name>
            <given-names>Menachem</given-names>
            <surname>Magidor</surname>
          </string-name>
          .
          <source>Nonmonotonic Reasoning</source>
          ,
          <source>Preferential Models and Cumulative Logics. Artificial Intelligence</source>
          ,
          <volume>44</volume>
          (
          <issue>1</issue>
          ):
          <fpage>167</fpage>
          -
          <lpage>207</lpage>
          ,
          <year>1990</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>Daniel</given-names>
            <surname>Lehmann</surname>
          </string-name>
          . Plausibility Logic. In E. Bo¨ rger, G. Ja¨ger, H. Kleine-Bu¨ ning, and M. M. Richter, editors,
          <source>Computer Science Logic, 5th Workshop</source>
          , CSL 91,
          <string-name>
            <surname>Berne</surname>
          </string-name>
          , Switzerland, LNCS
          <volume>626</volume>
          , pages
          <fpage>227</fpage>
          -
          <lpage>241</lpage>
          , Berlin,
          <year>1992</year>
          . Springer.
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>Daniel</given-names>
            <surname>Lehmann</surname>
          </string-name>
          and
          <string-name>
            <given-names>Menachem</given-names>
            <surname>Magidor</surname>
          </string-name>
          .
          <article-title>What does a conditional knowledge base entail?</article-title>
          <source>Artificial Intelligence</source>
          ,
          <volume>55</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>60</lpage>
          ,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>David</given-names>
            <surname>Makinson</surname>
          </string-name>
          .
          <article-title>General theory of cumulative inference</article-title>
          .
          <source>In Non-Monotonic Reasoning, 2nd International Workshop</source>
          , pages
          <fpage>1</fpage>
          -
          <lpage>18</lpage>
          , Grassau, Federal Republic of Germany,
          <year>1988</year>
          . Springer.
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          [30]
          <string-name>
            <given-names>David</given-names>
            <surname>Makinson</surname>
          </string-name>
          .
          <article-title>General Patterns in Nonmonotonic Reasoning</article-title>
          . In D. Gabbay,
          <string-name>
            <given-names>C. J.</given-names>
            <surname>Hogger</surname>
          </string-name>
          , and
          <string-name>
            <surname>J. A</surname>
          </string-name>
          . Robinson, editors,
          <source>Handbook of Logic in Artificial Intelligence and Logic Programming</source>
          ,
          <source>Nonmonotonic and Uncertain Reasoning</source>
          , volume
          <volume>3</volume>
          , chapter 3, pages
          <fpage>35</fpage>
          -
          <lpage>110</lpage>
          . Oxford University Press, Oxford, UK,
          <year>1994</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          [31]
          <string-name>
            <surname>Mauricio</surname>
            <given-names>Osorio</given-names>
          </string-name>
          , Juan Antonio Navarro, and Jose´ Arrazola.
          <article-title>Equivalence in answer set programming</article-title>
          .
          <source>In Alberto Pettorossi, editor, Logic Based Program Synthesis and Transformation: 11th International Workshop; selected papers / LOPSTR</source>
          <year>2001</year>
          , Paphos, Cyprus, LNCS
          <volume>2372</volume>
          , pages
          <fpage>57</fpage>
          -
          <lpage>75</lpage>
          , Paphos, Cyprus,
          <year>November 2001</year>
          . SpringerVerlag Berlin.
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          [32]
          <string-name>
            <given-names>Mauricio</given-names>
            <surname>Osorio</surname>
          </string-name>
          and
          <article-title>Fernando Zacar´ıas. Irrelevance of syntax in updating answer set programs</article-title>
          .
          <source>In Proceedings of the Fourth Mexican International Conference on Computer Science (ENC' 03) In Workshop on Logic and Agents</source>
          , Apizaco, Mexico,
          <year>2003</year>
          . IEEE Computer Society.
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          [33]
          <string-name>
            <given-names>Mauricio</given-names>
            <surname>Osorio</surname>
          </string-name>
          and
          <article-title>Fernando Zacar´ıas. On updates of logic programs: A properties-based approach</article-title>
          . In FoIKS, pages
          <fpage>231</fpage>
          -
          <lpage>241</lpage>
          ,
          <string-name>
            <surname>Wilhelminenburg</surname>
            <given-names>Castle</given-names>
          </string-name>
          , Austria,
          <year>2004</year>
          . Springer.
        </mixed-citation>
      </ref>
      <ref id="ref34">
        <mixed-citation>
          [34]
          <string-name>
            <given-names>Chiaki</given-names>
            <surname>Sakama</surname>
          </string-name>
          and
          <string-name>
            <given-names>Katsumi</given-names>
            <surname>Inoue</surname>
          </string-name>
          .
          <article-title>Updating extended logic programs through abduction</article-title>
          .
          <source>In Michael Gelfond</source>
          , Nicole Leone, and Gerald Pfeifer, editors,
          <source>LPNMR '99: Proceedings of the 5th International Conference on Logic Programming and Nonmonotonic Reasoning</source>
          , volume
          <volume>1730</volume>
          <source>of LNCS</source>
          , pages
          <fpage>147</fpage>
          -
          <lpage>161</lpage>
          ,
          <string-name>
            <surname>El</surname>
            <given-names>Paso</given-names>
          </string-name>
          , Texas, USA,
          <year>1999</year>
          . Springer-Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref35">
        <mixed-citation>
          [35]
          <string-name>
            <given-names>Chiaki</given-names>
            <surname>Sakama</surname>
          </string-name>
          and
          <string-name>
            <given-names>Katsumi</given-names>
            <surname>Inoue</surname>
          </string-name>
          .
          <article-title>An abductive framework for computing knowledge base updates</article-title>
          .
          <source>Theory and Practice of Logic Programming</source>
          ,
          <volume>3</volume>
          (
          <issue>6</issue>
          ):
          <fpage>671</fpage>
          -
          <lpage>715</lpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref36">
        <mixed-citation>
          [36]
          <string-name>
            <given-names>Marianne</given-names>
            <surname>Winslett</surname>
          </string-name>
          .
          <article-title>Updating logical databases</article-title>
          . Cambridge University Press, New York, NY, USA,
          <year>1990</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref37">
        <mixed-citation>
          [37] Fernando Zacar´ıas, Mauricio Osorio, Juan C.
          <article-title>Acosta-Guadarrama, and J u¨rgen Dix. Updates in Answer Set Programming Based on Structural Properties</article-title>
          . In Sheila McIlraith,
          <string-name>
            <given-names>Pavlos</given-names>
            <surname>Peppas</surname>
          </string-name>
          , and Michael Thielscher, editors,
          <source>7th International Symposium on Logical Formalizations of Commonsense Reasoning</source>
          , pages
          <fpage>213</fpage>
          -
          <lpage>219</lpage>
          , Corfu, Greece, May
          <year>2005</year>
          . Fakulta¨t Informatik,
          <source>TU-Dresden, ISSN 1430- 211X.</source>
        </mixed-citation>
      </ref>
      <ref id="ref38">
        <mixed-citation>
          [38]
          <string-name>
            <given-names>Yan</given-names>
            <surname>Zhang</surname>
          </string-name>
          .
          <article-title>On propositional knowledge base updates</article-title>
          .
          <source>Australian Journal of Intelligent Information Processing Systems</source>
          ,
          <volume>2</volume>
          :
          <fpage>20</fpage>
          -
          <lpage>29</lpage>
          ,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref39">
        <mixed-citation>
          [39]
          <string-name>
            <surname>Yan</surname>
            <given-names>Zhang.</given-names>
          </string-name>
          <article-title>The complexity of logic program updates</article-title>
          .
          <source>In AI '01: Proceedings of the 14th Australian Joint Conference on Artificial Intelligence</source>
          , pages
          <fpage>631</fpage>
          -
          <lpage>642</lpage>
          , London, UK,
          <year>2001</year>
          . Springer-Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref40">
        <mixed-citation>
          [40]
          <string-name>
            <given-names>Yan</given-names>
            <surname>Zhang</surname>
          </string-name>
          .
          <article-title>Minimal change and maximal coherence for epistemic logic program updates</article-title>
          .
          <source>In IJCAI-03, Proceedings of the Eighteenth International Joint Conference on Artificial Intelligence</source>
          , pages
          <fpage>112</fpage>
          -
          <lpage>120</lpage>
          , Acapulco, Mexico,
          <year>2003</year>
          . Morgan Kaufmann.
        </mixed-citation>
      </ref>
      <ref id="ref41">
        <mixed-citation>
          [41]
          <string-name>
            <given-names>Yan</given-names>
            <surname>Zhang</surname>
          </string-name>
          .
          <article-title>Two results for prioritized logic programming</article-title>
          .
          <source>Theory and Practice of Logic Programming</source>
          ,
          <volume>3</volume>
          (
          <issue>2</issue>
          ):
          <fpage>223</fpage>
          -
          <lpage>242</lpage>
          ,
          <year>March 2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref42">
        <mixed-citation>
          [42]
          <string-name>
            <given-names>Yan</given-names>
            <surname>Zhang</surname>
          </string-name>
          .
          <article-title>Logic program-based updates</article-title>
          .
          <source>ACM Transactions on Computational Logic</source>
          ,
          <volume>7</volume>
          (
          <issue>3</issue>
          ):
          <fpage>421</fpage>
          -
          <lpage>472</lpage>
          ,
          <year>July 2006</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>