<!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>Optimizations for Decision Making and Planning in Description Logic Dynamic Knowledge Bases</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>IMT Institute for Advanced Studies</institution>
          ,
          <addr-line>Lucca</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Artifact-centric models for business processes recently raised a lot of attention, as they manage to combine structural (i.e. data related) with dynamical (i.e. process related) aspects in a seamless way. Many frameworks developed under this approach, although, are not built explicitly for planning, one of the most prominent operations related to business processes. In this paper, we try to overcome this by proposing a framework named Dynamic Knowledge Bases, aimed at describing rich business domains through Description Logic-based ontologies, and where a set of actions allows the system to evolve by modifying such ontologies. This framework, by o ering action rewriting and knowledge partialization, represents a viable and formal environment to develop decision making and planning techniques for DL-based artifact-centric business domains.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Classically, management of business processes always focused on work ows and
the actions/interactions that take part in them, an approach called
processcentric. One of the most prominent operations related to business processes is
planning [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], namely nding a sequence of operations/actions that allows to
reach a desired goal. Lately, such approach has been call into question, as the
sole focus on the work ow leaves out the informational context in which the
work ow is executed.
      </p>
      <p>
        Artifact-centric models for business processes recently raised a lot of
attention [
        <xref ref-type="bibr" rid="ref2 ref6">2,6</xref>
        ], as they manage to combine structural (i.e. data related) with
dynamical (i.e. process related) aspects in a seamless way, thus overcoming the
limits of process-centric approach. In this context, we can see the development
of the framework called Knowledge and Actions Bases [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], the later higher
formalization of it named Description Logic Based Dynamic Systems [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], and the
Golog-based work of [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. These works all share the same concept: handle the
data-layer through a Description Logic ontology, while the process-layer, since
DLs are only able to give a static representation of the domain of interest, is
de ned as actions that update the ontology (the so-called \functional view of
knowledge bases" [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]). The combination of these two elements generates a
transition system in which states are represented by DL knowledge bases. They do
also share a similar objective: veri cation of temporal formulas over the
aforementioned transition system. Since nding a path that lead to a goal state can be
expressed as a reachability temporal formula, these environments can be used for
planning purposes, but they are not explicitly meant for this task. From their
de nition, we are limited to explore the state-space in a forward manner (we
could end up having to explore the full state-space) and only by using the full
body of the available knowledge, which is not ideal for developing di erent ways
to search the state-space, as well as under a performance point of view.
      </p>
      <p>In this paper we propose an artifact-centric framework, called Dynamic
Knowledge Bases, aimed at describing data-rich business domains and be a more
versatile environment for planning and decision-making: the data-layer is taken care
of by a DL knowledge base, while a set of actions allows the system to evolve by
adding/removing assertions, as well as introducing new instances to the system.
To reach our goals, and overcome the afore-mentioned limitations, our
framework relies on few optimizations. First of all, although our framework is based
on Description Logic, it is desirable to skip completely the use of the TBox: this
would allow us to avoid executing reasoning tasks and only work with facts from
the ABox, simplifying especially the transition-building process. We ful l this
aspect with action rewriting, which rewrites actions and introduces a blocking
query : such query (which is xed for each action) tells if, given a state, we can
perform the given action and built the ending state of the transition, or if the
action will lead us to an inconsistent state w.r.t. the TBox. These operations are
done without calculating the ending state, and without the need of the TBox
(while keeping the consistency w.r.t. it).</p>
      <p>
        Secondly, while the totality of the available knowledge is necessary to asses
the consistency of the overall system, it bounds us to work with details that might
not be of interests immediately. In decision making [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], \an heuristic is a strategy
that ignores part of the information, with the goal of making decisions more
quickly, frugally, and/or accurately than more complex methods ". Being able to
work with partial information is vital when we deal with systems described by
complex ontologies and are composed of millions (if not more) instances. To
allow our framework to be used for such strategies we introduce partialization,
so that users can focus on a chosen subset of knowledge (partial knowledge); it
allows to build a transition system which starts from a subset of the original
ABox (the facts that describe the complete system), and, for each transition,
choose which knowledge to transfer to the next state. Lastly, we demonstrate
how, given a path found over the partial knowledge transition system, we can
calculate a global blocking query, which tells if such path can be performed in
the original transition system with no modi cations.
      </p>
      <p>The resulting framework constitutes a sound base on top of which researchers
can develop new planning techniques useful for all those situations in which is
necessary to manipulate both actions and data together (e.g. the decision making
process in agents, composition of web services, etc.).</p>
    </sec>
    <sec id="sec-2">
      <title>Dynamic Knowledge Bases</title>
      <p>
        Dynamic Knowledge Bases (DKBs) are, brie y, a variation of Knowledge and
Action Bases (KABs) [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], namely dynamic systems (more precisely labelled
transition systems) in which states are constituted by DL knowledge bases (KBs),
and a set of actions that makes the system evolve by modifying those KBs.
De nition 1. A DKB is a tuple D = (T; A0; ), where (T; A0) is a DL-LiteA
KB, while is a nite set of actions.
      </p>
      <p>
        We adopt a restricted version of DL-LiteA knowledge bases [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], which does
not use attributes (available in full DL-LiteA KBs). DL-LiteA employs the
Unique Name Assumption, thus equality assertions are not allowed. We adopt
DL-LiteA as it is, like other DL-Lite dialects, quite expressive while maintaining
decidability, good complexity results, and enjoys the FOL-rewritability
property. In the followings, the set adom(A) identi es the individual constants in
the ABox A, which are de ned over a countably in nite (object) universe
of individuals (it follows that adom(A) ). AT denotes the set of all
possible consistent ABoxes w.r.t. T that can be constructed using atomic concept
and atomic role names in T , and individuals in . The adopted semantic is the
standard one based on rst-order interpretations and on the notion of model: a
TBox is satis able if admits at least one model, an ABox A is consistent w.r.t.
a TBox T if (T; A) is satis able, and (T; A) logically implies an ABox assertion
(denoted (T; A) j= ) if every model of (T; A) is also a model of .
      </p>
      <p>We de ne an action as:</p>
      <p>a: q; N E
where a is the action name, q is a query called action guard, N is a set of variables
which are used in an instance creation function, and E are the action e ects.
The guard q is a standard conjunctive query (CQ) of the type q = 9 !y:conj(!x ; !y),
where conj(!x ; !y) is a conjunction of atoms using free variables !x and
existentially quanti ed variables !y, no individuals. Atoms of q uses concepts and roles
found in T . Vars(q) represents the variables in q (i.e., !x [ !y), while Vars(q)69
(resp., Vars(q)9) only the set !x (resp., !y).</p>
      <p>The set N contains variables which do not appear in q (i.e., Vars(q) \ N = ;),
and which are fed to an assignment function m when the action is executed.
The set E is a set of atomic e ects (i.e., atomic non-grounded ABox assertions)
which is divided in two subsets: the set E of negative e ects, and the set E+ of
positive e ects. All atoms of E must use variables that are in Vars(q)69, while
the atoms of E+ uses variables from the set Vars(q)69 [ N . All variables are
de ned over a countably in nite (object) universe V of variables.
De nition 2. The transition system D is de ned as a tuple ( ; T; ; A0; )),
where: (i) is the universe of individual constants; (ii) T is a TBox; (iii) is
a set of states, namely ABoxes from the set AT ( AT ); (iv) A0 is the initial
state; (v) ) L is a labelled transition relation between states, where
L = is the set of labels containing an action instantiation a#, where a is
an action from and # a variable assignment in from V to .
The transition system D represent the dynamics of a DKB D. Given a state A
and selected an action a, the informal semantic of a transition is:
1. extract the certain answers ans(q; T; A) of the guard q from the state A;
2. pick randomly one tuple from ans(q; T; A) and use it to initiate the variable
assignment #a for the variables Vars(a) (at this point we covered only the
free variables in Vars(q)69);
3. choose an assignment for the variables in N and use it to extend #a. We
de ne an assignment function m(N; A) : N ! ( n adom(A)), which assigns
to each variable of N an individual from which does not appear in A;
4. use #a to instantiate the e ects E and calculate Anext by applying the
instantiated e ects to A.</p>
      <p>The sets and ) are thus mutually de ned using induction (starting from A0)
as the smallest sets satisfying the following property: for every A 2 and action
a 2 , if exists an action instantiation a#a s.t.</p>
      <p>Anext = A n sub(ent(E ; T )#a; A) [ E+#a</p>
      <p>and A )l Anext, with l = a#a. a#a is called an
and Anext 2 AT , then Anext 2
instantiation of a.</p>
      <p>ent(E ; T ) represents a set of atoms derived from E , which represents all
the atoms which entail one or more single negative e ects e in E w.r.t. to
the TBox T . We take each single negative e ect e and, by considering e as a
CQ composed only by one atom, obtain an UCQ rewT (e ) by using the query
reformulation algorithm [3, Chapter 5.2]. Since we consider a single atom at
a time, the algorithm produces an UCQ composed only by CQs with a single
atom erew in them. Each atom erew either contains variables found in e or,
in case of a role term, one of the two variables can be a non-distinguished
nonshared variable represented by the symbol ` ' (never both variables). We add
each atom erew to the set ent(E ; T ). Given ent(E ; T ), we calculate the set
sub(ent(E ; T )#a; A) in the following way. For each atom erew in ent(E ; T ),
we apply the variable transformation #a to it (the symbol ` ' remains untouched,
as it is not linked to any variable that appears in #a); we then check if it exists
in the ABox A an assertion such that erew#a = , assuming that the symbol
` ' can be evaluated equal to any individual ( = ind ; 8ind 2 adom(A)).</p>
      <p>For clarity, from now on we will denote the set sub(ent(E ; T )#a; A) with
Esub(#a). Notice that the set Esub(#a) is not uniquely determined, as it depends
on the ABox on which it is applied. This behaviour is intentional, as our aim is to
have the certainty that an assertion e marked for removal will not appear in the
next state nor in the ABox Anext, nor as an inferable assertion (hT; Anexti 6j= e );
to reach such goal, we have to remove all possible assertions that entail e . The
set ent(E ; T ), instead, depends only on E and T , thus it's constant and can
be calculated only one time at the beginning.</p>
      <p>As we see from the de nition of Anext, actions modify only ABox assertions:
it follows that the TBox is xed, while the ABox changes as the system evolves
(thus an ABox Ai is su cient to identify the state i of the system). The transition
system D clearly can be in nite, as we have the possibility to introduce new
constants. We call a path</p>
      <p>a (possibly in nite) sequence of transitions over
that start from A0 ( = A0 a)1#1 ::: a)n#n An).
Example 1. Consider the DKB D described by the following elements and which
models a simple business scenario:
{ the TBox T = fEmployee v :Product; Technician v Employeeg;
{ the ABox A0 = fTechnician(t1); Product(p1)g;
{ the action set composed of the following actions:
create: fEmployee(x)g; fyg fProduct(y)g+</p>
      <p>re: fEmployee(x)g fEmployee(x)g
If we consider A0 as the initial state in D, then a possible transition is A0 cre)ate#
A1 where: # = fx 7! t1; y 7! p2g (notice that we introduce a new individual p2),
and A1 = fTechnician(t1); Product(p1); Product(p2)g.</p>
      <p>We could also perform the action re, as it exists a proper instantiation of it
by using the variable assignment # re = fx 7! t1g. The set ent(E ; T ) for the
action re corresponds to the set fEmployee(x); Technician(x)g, thus Esub(# re)
would be equal to fTechnician(t1)g. Performing the action instantiation would
get us to the state A2fProduct(p1)g, and it's clear that hT; A2i 6j= Employee(t1). If
we would simply remove the instantiated negative e ects in E # re), we wouldn't
achieve the same result (as the assertion Technician(t1) would still appear in the
nal state), as if the action didn't have any e ect at all.
3
3.1</p>
    </sec>
    <sec id="sec-3">
      <title>Optimizations</title>
      <p>Action Rewriting
The rst optimization we bring to the framework regards actions, and, more
speci cally, the guard q. Using the query reformulation algorithm [3, Chapter
5.2], we can transform a query q into an UCQ rewT (q) such that ans(q; T; a) =
ans(rewT (q); ;; A). We then take every action a, calculate rewT (q), and, for
every CQ qrew 2 rewT (q), create an action arew: qrew; N E (with N and E taken
from a without modi cations). These new actions slightly modify the transition
function ): the guard is now evaluated without using the TBox, and the
variable assignment #arew must be taken from the certain answers ans(qrew; ;; A),
while the rest of the transition function remains the same.</p>
      <p>
        The second optimization regards the ending state of the transition: in the
speci cation of a DKB, actions could lead to inconsistent states. We introduce
an additional element called blocking query B, a boolean UCQ used as a block
test in the state A before performing the action: if B returns false, then we
can perform the action and have the guarantee that the ending state Anext is
consistent w.r.t. T . The building of B is based on the NI-closure of T (denoted
cln(T )) de ned in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Each positive e ect e+ 2 E+ (column 1 in Table 1, we
need to change the variables accordingly to the ones in e+) could take part
in a negative inclusion assertion 2 cln(T ) (column 2 in Table 1); this mean
that we have to look for a possible assertion (column 3 in Table 1) which
could break when e+ is added (z represents a newly introduced variable, thus
z 62 Vars(q) [ N [ Vars(B)). To do so, for each possible we get from e+ and
, we perform the following steps (we start from B = ?, where ? indicates a
predicate whose evaluation is false in every interpretation):
1. we check if is present in the positive e ects E+ by executing ans( ; ;; E+)
and retrieve all the certain answers E+ . For each E+ , it means it exist an
assertion E+ which poses a problem. Since we are dealing with variables
(the e ects are not instantiated yet), we have to express in B under which
conditions E+ would make Anext inconsistent; we do this by adding the
corresponding CQ E+ (column 4 in Table 1) to B by or -connecting it to
the rest of the CQs.
      </p>
      <p>Notice that we treat z as an existential variable, as it does not appear in e+
and thus we have no constrains about it.
2. we check if in E there are negative e ects that could block by
removing it (thus eliminating the threat of an inconsistency). by executing
ans( ; ;; ent(E ; T )) and retrieve all the certain answers #E . For each #E ,
it means it exist an assertion E which is removed. Since we are dealing
with variables (the e ects are not instantiated yet), we have to express in B
under which conditions E can't block an inconsistency in Anext; we do
this by adding the corresponding UCQ E (column 5 in Table 1) to B by
or -connecting it to the rest of the CQs.
3. if E can't block any inconsistency (thus ans( ; ;; ent(E ; T )) = ;), then
we have to express in B under which conditions there will be a inconsistency
in Anext due to an assertion in A w.r.t e+; we do so by adding A (column
6 in Table 1) to B by or -connecting it to the rest of the CQs.</p>
      <p>Note that while building the blocking query B, we could have, for the UCQs
E , inequalities of the type x 6= , with the non-distinguished non-shared
variable generated by ent(E ; T ). Such inequalities always evaluate to False.
De nition 3. Given an action a 2 , its rewritten action arew is de ned as:
arew: qrew; N; B E
where qrew 2 rewT (q), and B is the blocking query of arew.</p>
      <p>The union of all possible rewritten actions de nes the set of actions
rew.</p>
      <p>Example 2. Let's consider the action create: fEmployee(x)g; fyg fProduct(y)g+.
First we calculate rewT (q), which is the UCQ Employee(x) _ Technician(x).
We can now calculate the blocking query B. We see that the concept term
Product of the positive e ect e+ = Product(y) takes part in the negative-inclusion
assertion Employee v :Product, and, by the de nition of cln(T ), also in the
assertion Technician v :Product: we thus have two assertions, Employee(y), and
Technician(y). By following the procedure for building B, we have no E+
elements (as ans( ; ;; E+) = ;, and no E elements (as ans( ; ;; ent(E ; T )) =
;). The nal query is thus composed only of A elements, and is</p>
      <p>B = Employee(y) _ Technician(y)
P</p>
      <p>P
)z )
; x
x
: :
z9 z
;
z ) )
(
P 1
x (
(
)
z
;
1
x
(
)
2
x
;
z
(
1
)
1
x
;
z
(
1
1
x2 :</p>
      <p>P
A z</p>
      <p>:
9 z</p>
      <p>P
:
9 z
1
x
(
1
x
g
y
)
)</p>
      <p>)
)z )
()x ;</p>
      <p>x
1 (
;x )1 2
z (
(
x (</p>
      <p>z
) ;
1
x
x (
1
P ^
P</p>
      <p>A</p>
      <p>A</p>
      <p>P
A</p>
      <p>P
P ^
P</p>
      <p>P P</p>
      <p>P</p>
      <p>P
+e A()x A()
)
2
x
x ()x ;(
1
x
)
2
x
2
x
z
;
2
x
(
1
)
2
x
;
1
x
(
)
2
x
;
1
x
(
1
)
2
x
;
1
x
(
1
)
2
x
;
)
2
x
;
z
(
1
)
2
x
;
x
(
1
)
1
x
;
2
x
(
1
)
2
x
;
1
x
(
z</p>
      <p>z
!y1 y1</p>
      <p>!y2 y2
y2g x=16 x=1 y2 x2 x2</p>
      <p>g =6 =
z7!)^)</p>
      <p>^ 27!)^)^
17!P:( P:
z</p>
      <p>7!:z
xf (z9 (9 zf (9 (9</p>
      <p>P P:</p>
      <p>z
x =6
P(z9 x2^
:
P(z9 x1^
:
,
s
n
o
i
t
r
e
s
s
:
1
e
l
b
a
7!x2
2 ^
;yx1 y=1
17!x1
) z
z =6
;(x1 x2
)
2
x
;
We get the following two rewritten actions:
creater1ew: fEmployee(x)g; fyg; fEmployee(y) _ Technician(y)g
creater2ew: fTechnician(x)g; fyg; fEmployee(y) _ Technician(y)g
fProduct(y)g+
fProduct(y)g+
Esub(#arew ) [ E+#arew is consistent w.r.t. T .</p>
      <p>
        Theorem 1. Given a satis able KB (T; A), an action arew 2 rew such that
#arew 2 ans(qrew; ;; A) and ans(B#arew ; ;; A) = ;, then the ABox Anext = A n
Proof. For the proof of the theorem we remind the reader to the Appendix of
the extended version of this paper [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
      <p>A arew)#arew Anext, with Anext 2 AT .</p>
      <p>Lemma 1. Given an action arew 2 rew, for every ABox A such that #arew 2
ans(qrew; ;; A) and ans(B#arew ; ;; A) = ;, we can always perform the transition</p>
      <p>Thanks to the rewriting of actions, we can build the transition system D
without the need of the TBox T , while still having the guarantee that the system
is consistent w.r.t. it.
3.2</p>
      <p>Partial Transition System
We now build a partialization Dp of the transition system D, which is built in
the same way as D, apart from two points: i) the initial state is a subset of the
ABox A0 ii) it uses a looser transition function.
(Di)e niistitohne 4u.niAverpsaertoiaflitnrdainvsidituioanl csoynstsetamntsD;p (iisi)a Ttupislea( T;BTo;x; (pi;iAi)0p; !p )i,swaheseret:
of states, namely ABoxes from the set AT ( p AT ); (iv) A0p is a subset of
the initial ABox A0 (A0p A0); (v) ! p L p is a labelled transition
relation between states, where L = rew is the set of labels containing an
action instantiation arew#, where arew is an action from rew and # a variable
assignment in from V to .</p>
      <p>As A0p A0, we have the guarantee that A0p 2 ATp. The sets p and !
are mutually de ned using induction (starting from A0) as the smallest sets
satisfying the following property: for every Ap 2 p and action arew 2 rew, if
exists an action instantiation arew#arew s.t.</p>
      <p>p</p>
      <p>Anext Ap n Esub(#arew ) [ E+#arew
and Apnext 2 AT , then Apnext 2 p and Ap )l Apnext, with l = arew#arew .</p>
      <p>p</p>
      <p>Notice that Anext can be any subset of Ap nEsub(#arew ) [E+#arew , thus allowing
to select which knowledge to focus on, unlike in D where we transfer all the
knowledge from one state to another. We now de ne the existing relation between
thpeintheDpp,arwteiaslatyratnhsaittionp sisysatepmropeDpr apnadrtitahleiztartaionnsitoiofna spyastthem inD. DGi(vreenspa.,patihs
a proper completion of p) if:
{ each state Aip is a subset of the relative state Ai (Aip Ai);
{ each transition is caused by the same action airew and the related variable
assignments are equal (#ip = #i).</p>
      <p>Between D and Dp there is no relation such as bisimulation or even
simulation; this is a clear (and intended) consequence of working with partial
knowledge. This also means that we have no immediate way to know if, given a partial
epxaitshts ap pinathDp , wtheactanis uaseprtohpeesracmoemapcletitoionns inps.taTnotiaotvieorncso mine tDhi,sapnrdobthleums ,ifwiet
extend the de nition of the blocking query B by creating a global blocking query
B p w.r.t to a nite partial path p. B p is a boolean UCQ that can be
evaluated in the complete initial state A0, and, if it is evaluated False, gives us the
certainty that we can use the same actions instantiations found in p starting
from A0 without generating any inconsistent state w.r.t. T .</p>
      <p>B p is built by iteratively adding the single instantiated blocking queries
Bi#ip of the actions that compose p (Algorithm 1, the symbol &gt; indicates a
predicate whose evaluation is true in every interpretation). At each step,
before adding the i-th instantiated blocking query Bi#ip to B p , we perform the
following operations:
{ check that ans(B p ; ;; Ei+#p) is False;</p>
      <p>i
{ remove any CQ in B p that evaluates always False (i.e., contains (in)equalities
that evaluates always to False, like indi = indl, or indi 6= indi);
{ remove from each CQ the (in)equalities that evaluates always to True, as they
do not in uence the ending result. We are sure that no CQ will be left empty,
because it would mean the whole CQ would always evaluate to True, and this
would have blocked the rst step;
{ for each CQ , generate a temporary CQ temp by removing all the (in)equalities
and transform existential variables in free ones. Looking at how the blocking
query is built, we have that temp is either empty ( is composed only of
(in)equalities) or contains only one atomic assertion with at most one free
variable. For example, if = 9z:P(i1; z) ^ i2 6= z, then temp = P(i1; z);
{ perform ans( temp; ;; Esub(#ip)):
if it evaluates to True, then it means that the instantiated negative e ects
temp, and in this case we can remove the CQ
Esub(#ip) remove the atom</p>
      <p>from B p ;
if it returns answers of the type # temp = fz 7! indg, then it means that
the instantiated negative e ects Esub(#ip) remove the atom temp only if z
is mapped to the individual ind. We thus add to the CQ the inequality
z 6= ind.</p>
      <p>Theorem 2. Given a DKB D, a nite partial path p, and its global blocking
query B p , if ans(B p ; ;; A0) = ;, then it exists a concretion of p such that
2 D.</p>
      <p>
        Proof. For the proof of the theorem we remind the reader to the Appendix of
the extended version of this paper [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
      </p>
      <p>Example 3. Consider the DKB D described by the following elements and which
models a simple business scenario:</p>
      <p>Algorithm 1: The algorithm to build the global blocking query B p
input : A partial path p
output: An UCQ B p
B p := f?g
i := n. of transitions in p
// counter variable
while i &gt; 0 do // each cycle refers to transition Aip 1 a!i#ip Aip
if ans(B p ; ;; Ei+#ip) 6= ; then</p>
      <p>B p := &gt; // inconsistency in the i-th transition
break
end
foreach
if</p>
      <p>2 B p do
contains (in)equalities that are always False then</p>
      <p>B p := B p n // remove CQs that are always False
end
remove from</p>
      <p>temp :=
if ans( temp; ;; Esub(#ip)) = T rue then</p>
      <p>(in)equalities that are always True
without (in)equalities and existential operator
else if ans( temp; ;; Esub(#ip)) 6= ; then</p>
      <p>B p := B p n</p>
      <p>// Esub(#ip) erases the CQ temp
^ z 6= ind
foreach # temp = fz 7! indg 2 ans( temp; ;; Esub(#ip)) do
:= // update the CQ</p>
      <p>// add the blocking query of action ai
end
end
end
B p := B p [ Bi#ip
i := i 1
end
{ the TBox T = fStored v :Shippedg;
{ the ABox A0 = fProduct(p1); Stored(p1); Product(p2)g;
{ the action set composed by the following actions:
pack: fProduct(x)g fPacked(x)g+,
ship: fPacked(x)g fShipped(x)g+
which becomes the set rew composed of the actions:
packrew: fProduct(x)g fPacked(x)g+,
shiprew: fPacked(x)g; fStored(x)g fShipped(x)g+
At this point, we develop a partial transition system bD by considering the partial
initial state A0p = fProduct(p1)g. We can perform the sequence of transitions
p = A0p pa!ck# A1p sh!ip# A2p, where: # = fx 7! p1g, A1p = fPacked(p1)g, and A2p =
fShipped(p1)g. The global blocking query B p is Stored(p1), and we see that, if
we try to transpose p in the original ABox A0, we have ans(B p ; ;; A0) 6= ;,
thus meaning that p doesn't have a proper concretion (indeed if we perform
the two actions, we would end up having an inconsistent state A2).</p>
      <p>If we would consider instead the partial initial state A0p = fProduct(p2)g,
instead, we woould be able to nd a proper completion of p, as B p would be
Stored(p2) and ans(B p ; ;; A0) = ;.</p>
      <p>Given a nite partial path p and its global blocking query B p , we have a
way to know if we can transform p into a complete path without actually
calculating it, only by performing an UCQ over the initial state A0. Notice also
that this result can be applied to all possible ABoxes, not only A0; as long as
A0p is contained in an ABox A, and ans(B p ; ;; A) = ;, then it exists a path
which starts from A and is a proper concretion of p.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusions</title>
      <p>In this paper we formalize a framework, called Dynamic Knowledge Bases, aimed
at modelling the dynamics of artifact-centric business processes. Such framework
is represented by a transition system where states are de ned by DL-LiteA
knowledge bases, and where a set of actions allows the system to evolve by adding or
removing assertions, along with the possibility to introduce new instances. The
expressive power and reasoning services of Description Logics are very helpful
to describe and manage the domain knowledge, but constitute a di cult
environment to deal with when it comes to the dynamics of the processes. To tackle
this problem, we introduce two optimizations, namely action rewriting and the
partialization of the transition system related to a Dynamic Knowledge Base:
these optimizations give us a framework where we can work with partial
knowledge and where the TBox is not needed, still guaranteeing that the resulting
system is consistent with it. Given a path valid for the partial transition system,
we can calculate its global blocking query, and know if it can be transferred to
the complete transition system without any change, and without the need to do
any other calculation.</p>
      <p>Our work does not aim to propose a planning technique, neither try to give
a solution w.r.t. the decidability/undecidability problem of plan research in our
environment (since it is possible to generate an in nite transition system), but
to create a framework that can be used as a formal domain-independent base to
develop planning and decision making techniques for data-rich business domains
by taking full advantage of the DL-Lite reasoning power.</p>
      <p>We are currently working to further expand this framework in various
directions. Under the theoretical side, we are already developing an abstraction
of the transition system, in particular by expressing the needed knowledge by
using only queries, which can be then used over the complete transition system.
Under the practical side, we intend to propose a backward planning algorithm,
which takes advantage of the abstract transition system and the possibility to
work with partial knowledge to return all plans of interest w.r.t. a goal.</p>
      <p>Although further investigation is surely needed, Dynamic Knowledge Bases
are a promising framework that can be usefully employed to tackle the problem
of planning and decision making in artifact-centric business domains.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zarrie</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Veri cation of Golog programs over description logic actions</article-title>
          .
          <source>Lecture Notes in Computer Science (including subseries Lecture Notes in Arti cial Intelligence and Lecture Notes in Bioinformatics) 8152 LNAI</source>
          ,
          <volume>181</volume>
          {
          <fpage>196</fpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Bhattacharya</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gerede</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hull</surname>
          </string-name>
          , R.:
          <article-title>Towards formal analysis of artifact-centric business process models</article-title>
          .
          <source>Business Process</source>
          Management pp.
          <volume>288</volume>
          {
          <issue>304</issue>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Giacomo</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lembo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lenzerini</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Poggi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>RodriguezMuro</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosati</surname>
          </string-name>
          , R.:
          <source>Ontologies and Databases: the DL-Lite Approach</source>
          <volume>5689</volume>
          ,
          <volume>255</volume>
          {
          <fpage>356</fpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Giacomo</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lembo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lenzerini</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Poggi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosati</surname>
          </string-name>
          , R.:
          <article-title>Linking data to ontologies: The description logic DL-LiteA</article-title>
          .
          <source>CEUR Workshop Proceedings</source>
          <volume>216</volume>
          (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Giacomo</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Montali</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patrizi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <source>Veri cation and Synthesis in Description Logic Based Dynamic Systems, Lecture Notes in Computer Science</source>
          , vol.
          <volume>7994</volume>
          . Springer Berlin Heidelberg, Berlin, Heidelberg (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Cohn</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hull</surname>
          </string-name>
          , R.:
          <article-title>Business artifacts: A data-centric approach to modeling business operations and processes</article-title>
          .
          <source>IEEE Data Eng. Bull</source>
          <volume>32</volume>
          (
          <issue>3</issue>
          ), 3{
          <issue>9</issue>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Ghallab</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nau</surname>
            ,
            <given-names>D.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Traverso</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <source>Automated planning - theory and practice</source>
          .
          <source>Elsevier</source>
          (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Gigerenzer</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gaissmaier</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          :
          <article-title>Heuristic decision making</article-title>
          .
          <source>Annual review of psychology 62</source>
          ,
          <volume>451</volume>
          {
          <fpage>482</fpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Hariri</surname>
            ,
            <given-names>B.B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Montali</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Giacomo</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Masellis</surname>
            ,
            <given-names>R.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Felli</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <article-title>Description Logic Knowledge</article-title>
          and
          <string-name>
            <given-names>Action</given-names>
            <surname>Bases</surname>
          </string-name>
          .
          <source>J. Artif. Intell. Res. (JAIR) 46</source>
          ,
          <fpage>651</fpage>
          {
          <fpage>686</fpage>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Levesque</surname>
            ,
            <given-names>H.J.:</given-names>
          </string-name>
          <article-title>Foundations of a Functional Approach to Knowledge Representation</article-title>
          .
          <source>Artif. Intell</source>
          .
          <volume>23</volume>
          (
          <issue>2</issue>
          ),
          <volume>155</volume>
          {
          <fpage>212</fpage>
          (
          <year>1984</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Stawowy</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Optimizations for decision making and planning in description logic based dynamic knowledge bases (</article-title>
          <year>2015</year>
          ), http://arxiv.org/abs/1502.04665
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>