A Database-type Approach for Progressing Action Theories with Bounded Effects (Book chapter)
Stavros Vassos, Sebastian Sardina
Chapter: 01/2011; In book: Knowing, Reasoning, and Acting: Essays in Honour of Hector J. Levesque, Publisher: College Publications, Editors: Gerhard Lakemeyer, Sheila McIlraith
Comments on this publication
ResearchGate members can add comments. Sign up now and post your comment!
Data provided are for informational purposes only. Although carefully collected, accuracy cannot be guaranteed. The impact factor represents a rough estimation of the journal's impact factor and does not reflect the actual current impact factor. Publisher conditions are provided by RoMEO. Differing provisions from the publisher's actual policy or licence agreement may be applicable.
Page 1
Page 2
Page 3
Page 4
Page 5
Page 6
Page 7
Page 8
Page 9
Page 10
Page 11
Page 12
Page 13
Page 14
Page 15
Page 16
Page 17
Page 18
Page 19
Page 20
Page 1
1A Database-type Approach for Progressing Ac-
tion Theories with Bounded Effects
STAVROS VASSOS AND SEBASTIAN SARDINA
ABSTRACT. In this paper we study the progression of situation calculus action theo-
ries that are able to handle a class of actions that, while extremely simple conceptually
and common in many settings, cannot be handled by previous approaches. Specifi-
cally, based on the notion of safe-range queries from database theory and just-in-time
action histories, we present a new type of action theories that ensures that actions have
bounded effects over a restricted range of objects. Such theories may represent incom-
plete information and can be progressed by directly updating the knowledge base in an
algorithmic manner.
We dedicate this paper to Hector Levesque, who as much as anyone, promoted the logic-
based approach to problems and the fundamental insight that expressivity can be traded for
efficiency. Both aspects are strongly reflected in this work. This paper is an extended ver-
sion of a recent result that appeared in [Vassos, Sardina, and Levesque 2009]. As such, the
work we present here has been greatly influenced by Hector, both in terms of the specific
research results reported as well as in the fact that it involves the contribution of two gen-
erations of students under his supervision. Indeed, we feel privileged to have had Hector
as our Ph.D. supervisor. His remarkable qualities, both intellectual and personal, have had
major impact on our careers in a way that is impossible to put it in text. Just one thing we
can say: Thanks Hector!
1 Introduction
One of the requirements for building agents with a pro-active behavior is the ability to
reason about action and change. The ability to predict how the world will be after per-
forming a sequence of actions is the basis for offline automated planning, scheduling, web-
service composition, etc. In the situation calculus [McCarthy and Hayes 1969; Reiter 2001]
such reasoning problems are examined in the context of the so-called basic action theories
(BATs). These are logical theories that specify the preconditions and effects of actions,
and an initial knowledge base (KB) that represents the initial state of the world before any
action has occurred.
A basic action theory can be used to solve offline problems as well as to equip a situated
agent with the ability to keep track of the current state of the world. As a theory is a
static entity, in the sense that the axioms do not change over time, reasoning about the
current state is typically carried over using techniques based on regression that transform
queries about the future into queries about the initial state [Reiter 2001]. This is an effective
choice for some applications, but a poor one for many settings where an agent may act
autonomously for long periods of time. In those cases, it is mandatory that the theory
be (periodically) updated so that the initial KB be replaced by a new one reflecting the
tion Theories with Bounded Effects
STAVROS VASSOS AND SEBASTIAN SARDINA
ABSTRACT. In this paper we study the progression of situation calculus action theo-
ries that are able to handle a class of actions that, while extremely simple conceptually
and common in many settings, cannot be handled by previous approaches. Specifi-
cally, based on the notion of safe-range queries from database theory and just-in-time
action histories, we present a new type of action theories that ensures that actions have
bounded effects over a restricted range of objects. Such theories may represent incom-
plete information and can be progressed by directly updating the knowledge base in an
algorithmic manner.
We dedicate this paper to Hector Levesque, who as much as anyone, promoted the logic-
based approach to problems and the fundamental insight that expressivity can be traded for
efficiency. Both aspects are strongly reflected in this work. This paper is an extended ver-
sion of a recent result that appeared in [Vassos, Sardina, and Levesque 2009]. As such, the
work we present here has been greatly influenced by Hector, both in terms of the specific
research results reported as well as in the fact that it involves the contribution of two gen-
erations of students under his supervision. Indeed, we feel privileged to have had Hector
as our Ph.D. supervisor. His remarkable qualities, both intellectual and personal, have had
major impact on our careers in a way that is impossible to put it in text. Just one thing we
can say: Thanks Hector!
1 Introduction
One of the requirements for building agents with a pro-active behavior is the ability to
reason about action and change. The ability to predict how the world will be after per-
forming a sequence of actions is the basis for offline automated planning, scheduling, web-
service composition, etc. In the situation calculus [McCarthy and Hayes 1969; Reiter 2001]
such reasoning problems are examined in the context of the so-called basic action theories
(BATs). These are logical theories that specify the preconditions and effects of actions,
and an initial knowledge base (KB) that represents the initial state of the world before any
action has occurred.
A basic action theory can be used to solve offline problems as well as to equip a situated
agent with the ability to keep track of the current state of the world. As a theory is a
static entity, in the sense that the axioms do not change over time, reasoning about the
current state is typically carried over using techniques based on regression that transform
queries about the future into queries about the initial state [Reiter 2001]. This is an effective
choice for some applications, but a poor one for many settings where an agent may act
autonomously for long periods of time. In those cases, it is mandatory that the theory
be (periodically) updated so that the initial KB be replaced by a new one reflecting the
Page 2
Stavros Vassos and Sebastian Sardina
changes due to the actions that have already occurred. This is identified as the problem of
progression for basic action theories [Lin and Reiter 1997].
In general, a KB in a basic action theory is an unrestricted first-order logical theory
that offers great flexibility and expressiveness. The price to pay though is high, as it is
hard to find practical solutions for the related reasoning problems. As far as progression
is concerned, it was shown by Lin and Reiter [1997] that the updated KB requires second-
order logic in the general case. For this reason, several restrictions on the theories have
been proposed so that the updated KB is first-order representable. In particular, two recent
results show that progression is practical provided that actions are local-effect [Vassos,
Lakemeyer, and Levesque 2008] or normal [Liu and Lakemeyer 2009].
The local-effect assumption essentially means that all the objects that may be affected
by the action are directly specified by the arguments of the action. For example, an action
that results in the robot moving from location l1 to location l2 needs to explicitly mention
l1 and l2 in its arguments in order to be local-effect, e.g., move(l1, l2). On the other hand,
a so-called normal action is more general in that it may also affect objects that are not
included as arguments, as long as these are specified by information that exists in the KB
in a particular way. In this manner, the above moving action may be allowed also to affect
the location of objects being held by the robot.
Nonetheless, it turns out that there are many simple actions that do not qualify as local-
effect or normal. For example, action moveFwd (with no arguments) that causes a robot
to move forward by a fixed length is neither local-effect nor normal. These actions arise
naturally in many robotic domains and grid-style games, for instance, and cannot be han-
dled by previous techniques for progression unless further restrictions are assumed (e.g.,
a finite domain). Furthermore, these actions cannot, in general, be reformulated into a
well-behaved local-effect version that includes all the necessary ground arguments as the
required information, for example, the robot’s current location, may be unknown.
In order to handle such actions, we present what we call range-restricted basic action
theories (RR-BATs). These theories are able to represent actions that may not be local-
effect or normal but whose (range of) effects can be “bounded.” For such theories, we
describe a method for progression such that the new KB is first-order and finite, and we
prove that the method is logically correct and effectively computed via database-like eval-
uation for a special case of interest. To the best of our knowledge, it is the first result that
accounts for a possibly infinite domain, incomplete information, sensing, and a particular
class of simple actions that goes beyond the local-effect assumption.
The rest of the paper is organized as follows. In Section 2, we review the situation
calculus and the progression task for unrestricted basic action theories. Then, in Section 3,
we specify the structure for the theories of action and queries to be considered, and define
the notion of possible answers for queries. In Section 4, we present a general method for
progression for these theories and examine the complexity of the approach in a special case.
We conclude by discussing related and future work, and drawing final conclusions.
2 Formal preliminaries
The language L of the situation calculus as presented by Reiter [2001] is a three-sorted
first-order logic language with equality and some limited second-order features. The three
sorts are the following: action, situation, and a catch-all sort object for everything else
depending on the domain of application.
Similar to a normal one-sorted first-order language, L includes function and predicate
changes due to the actions that have already occurred. This is identified as the problem of
progression for basic action theories [Lin and Reiter 1997].
In general, a KB in a basic action theory is an unrestricted first-order logical theory
that offers great flexibility and expressiveness. The price to pay though is high, as it is
hard to find practical solutions for the related reasoning problems. As far as progression
is concerned, it was shown by Lin and Reiter [1997] that the updated KB requires second-
order logic in the general case. For this reason, several restrictions on the theories have
been proposed so that the updated KB is first-order representable. In particular, two recent
results show that progression is practical provided that actions are local-effect [Vassos,
Lakemeyer, and Levesque 2008] or normal [Liu and Lakemeyer 2009].
The local-effect assumption essentially means that all the objects that may be affected
by the action are directly specified by the arguments of the action. For example, an action
that results in the robot moving from location l1 to location l2 needs to explicitly mention
l1 and l2 in its arguments in order to be local-effect, e.g., move(l1, l2). On the other hand,
a so-called normal action is more general in that it may also affect objects that are not
included as arguments, as long as these are specified by information that exists in the KB
in a particular way. In this manner, the above moving action may be allowed also to affect
the location of objects being held by the robot.
Nonetheless, it turns out that there are many simple actions that do not qualify as local-
effect or normal. For example, action moveFwd (with no arguments) that causes a robot
to move forward by a fixed length is neither local-effect nor normal. These actions arise
naturally in many robotic domains and grid-style games, for instance, and cannot be han-
dled by previous techniques for progression unless further restrictions are assumed (e.g.,
a finite domain). Furthermore, these actions cannot, in general, be reformulated into a
well-behaved local-effect version that includes all the necessary ground arguments as the
required information, for example, the robot’s current location, may be unknown.
In order to handle such actions, we present what we call range-restricted basic action
theories (RR-BATs). These theories are able to represent actions that may not be local-
effect or normal but whose (range of) effects can be “bounded.” For such theories, we
describe a method for progression such that the new KB is first-order and finite, and we
prove that the method is logically correct and effectively computed via database-like eval-
uation for a special case of interest. To the best of our knowledge, it is the first result that
accounts for a possibly infinite domain, incomplete information, sensing, and a particular
class of simple actions that goes beyond the local-effect assumption.
The rest of the paper is organized as follows. In Section 2, we review the situation
calculus and the progression task for unrestricted basic action theories. Then, in Section 3,
we specify the structure for the theories of action and queries to be considered, and define
the notion of possible answers for queries. In Section 4, we present a general method for
progression for these theories and examine the complexity of the approach in a special case.
We conclude by discussing related and future work, and drawing final conclusions.
2 Formal preliminaries
The language L of the situation calculus as presented by Reiter [2001] is a three-sorted
first-order logic language with equality and some limited second-order features. The three
sorts are the following: action, situation, and a catch-all sort object for everything else
depending on the domain of application.
Similar to a normal one-sorted first-order language, L includes function and predicate
Page 3
A Database-type Approach for Progressing Action Theories with Bounded Effects
symbols. In this case since there are three sorts, each of the symbols has a type that specifies
the sorts for the arguments it takes. The situation calculus includes symbols only of certain
types each of which has a special role in the representation of the world and its dynamics.
An action term or simply an action represents an atomic action that may be performed
in the world. For example consider the action move(l1, l2) that may be used to represent
that a robot moves from location l1 to location l2. A situation term or simply a situation
represents a world history as a sequence of actions. The constant S0 is used to denote the
initial situation where no actions have occurred. Sequences of actions are built using the
function symbol do, such that do(α, σ) represents the successor situation resulting from
performing action α in situation σ.
A relational fluent is a predicate whose last argument is a situation, and thus whose truth
value can change from situation to situation. For example, RobotAt(l, σ) may be used to
represent that the robot lies at location l in situation σ. In order to simplify the analysis we
have restricted the language L so that there are no functional fluent symbols in L, that is,
functions whose last argument is a situation. This is not a restriction on the expressiveness
of L as functional fluents can be represented by relational fluents with a few extra axioms.
Actions need not be executable in all situations, and the predicate atom Poss(α, σ) states
that action α is executable in situation σ. For example, Poss(move(l1, l2), σ) is intended
to represent that the action move(l1, l2) can be executed in situation σ. Actions may also
have a sensing result: the special function SR(α, σ) denotes the sensing outcome of action
α when executed in situation σ [Scherl and Levesque 2003].
In this paper, we shall restrict our attention to a language L with a finite number of
relational fluent symbols that only take arguments of sort object (apart their last situation
argument), an infinite number of constant symbols of sort object, and a finite number of
function symbols of sort action that take arguments of sort object. We adopt the following
notation with subscripts and superscripts: α and a for terms and variables of sort action;
σ and s for terms and variables of sort situation; t and x, y, z, w for terms and variables
of sort object. Also, we use A for action function symbols, F,G for fluent symbols, and
b, c, d, e, o for constants of sort object. Finally, we will typically write φ(~x) to state that the
free variables of the formula are among ~x.
The well-formed first-order formulas of L are defined inductively similarly to a normal
one-sorted language but also respecting that each parameter has a unique sort. As far as
the second-order formulas of L are concerned, only quantification over relations is allowed
and the well-formed formulas are defined inductively similarly to a normal second-order
language.
Often we will focus on sentences that refer to a particular situation. For this purpose, for
any situation term σ, we define the set of uniform formulas in σ to be all those (first-order
or second-order) formulas in L that do not mention any other situation terms except for σ,
do not mention Poss, and where σ is not used by any quantifier [Lin and Reiter 1997].
2.1 Basic action theories
Within the language L, one can formulate action theories that describe how the world
changes as the result of the available actions. We focus on a variant of the basic action
theories (BATs) [Reiter 2001] of the following form:1
1For legibility, we typically omit leading universal quantifiers. The difference with Reiter’s BATs is the incor-
poration of Dsr for sensing and the set E .
symbols. In this case since there are three sorts, each of the symbols has a type that specifies
the sorts for the arguments it takes. The situation calculus includes symbols only of certain
types each of which has a special role in the representation of the world and its dynamics.
An action term or simply an action represents an atomic action that may be performed
in the world. For example consider the action move(l1, l2) that may be used to represent
that a robot moves from location l1 to location l2. A situation term or simply a situation
represents a world history as a sequence of actions. The constant S0 is used to denote the
initial situation where no actions have occurred. Sequences of actions are built using the
function symbol do, such that do(α, σ) represents the successor situation resulting from
performing action α in situation σ.
A relational fluent is a predicate whose last argument is a situation, and thus whose truth
value can change from situation to situation. For example, RobotAt(l, σ) may be used to
represent that the robot lies at location l in situation σ. In order to simplify the analysis we
have restricted the language L so that there are no functional fluent symbols in L, that is,
functions whose last argument is a situation. This is not a restriction on the expressiveness
of L as functional fluents can be represented by relational fluents with a few extra axioms.
Actions need not be executable in all situations, and the predicate atom Poss(α, σ) states
that action α is executable in situation σ. For example, Poss(move(l1, l2), σ) is intended
to represent that the action move(l1, l2) can be executed in situation σ. Actions may also
have a sensing result: the special function SR(α, σ) denotes the sensing outcome of action
α when executed in situation σ [Scherl and Levesque 2003].
In this paper, we shall restrict our attention to a language L with a finite number of
relational fluent symbols that only take arguments of sort object (apart their last situation
argument), an infinite number of constant symbols of sort object, and a finite number of
function symbols of sort action that take arguments of sort object. We adopt the following
notation with subscripts and superscripts: α and a for terms and variables of sort action;
σ and s for terms and variables of sort situation; t and x, y, z, w for terms and variables
of sort object. Also, we use A for action function symbols, F,G for fluent symbols, and
b, c, d, e, o for constants of sort object. Finally, we will typically write φ(~x) to state that the
free variables of the formula are among ~x.
The well-formed first-order formulas of L are defined inductively similarly to a normal
one-sorted language but also respecting that each parameter has a unique sort. As far as
the second-order formulas of L are concerned, only quantification over relations is allowed
and the well-formed formulas are defined inductively similarly to a normal second-order
language.
Often we will focus on sentences that refer to a particular situation. For this purpose, for
any situation term σ, we define the set of uniform formulas in σ to be all those (first-order
or second-order) formulas in L that do not mention any other situation terms except for σ,
do not mention Poss, and where σ is not used by any quantifier [Lin and Reiter 1997].
2.1 Basic action theories
Within the language L, one can formulate action theories that describe how the world
changes as the result of the available actions. We focus on a variant of the basic action
theories (BATs) [Reiter 2001] of the following form:1
1For legibility, we typically omit leading universal quantifiers. The difference with Reiter’s BATs is the incor-
poration of Dsr for sensing and the set E .
Page 4
Stavros Vassos and Sebastian Sardina
D = Dap ∪ Dss ∪ Duna ∪ Dsr ∪ D0 ∪ Σ ∪ E ,
where:
1. Dap is the set of action precondition axioms (PAs), one per action symbol A, of the
form Poss(A(~y), s) ≡ ΠA(~y, s), where ΠA(~y, s) is first-order and uniform in s. PAs
characterize the conditions under which actions are physically possible.
2. Dss is the set of successor state axioms (SSAs), one per fluent symbol F , of the
form F (~x, do(a, s)) ≡ ΦF (~x, a, s), where ΦF (~x, a, s) is first-order and uniform in
s. SSAs describe how fluents change between situations as the result of actions.
3. Dsr is the set of sensing-result axioms (SRAs), one for each action symbol A, of the
form SR(A(~y), s) = r ≡ ΘA(~y, r, s), where ΘA(~y, r, s) is first-order and uniform
in s. SRAs relate sensing outcomes with fluents, or more generally, with complex
properties of the domain.
4. Duna is the set of unique-names axioms for actions.
5. D0, the initial knowledge base (KB), is a set of first-order sentences uniform in S0
describing the initial situation S0.
6. Σ is the set of domain independent axioms of the situation calculus, formally defining
the legal situations. A second-order induction axiom is included in Σ.
7. E is an infinite set of unique-names axioms for object constants.
Probably the most interesting component of a basic action theory is the set successor
state axioms, which together encode the dynamics of the domain being represented. Tech-
nically, SSAs are meant to capture the effects and non-effects of actions. To achieve that
in a parsimonious way, one typically follows Reiter [1991]’s well-known solution to the
frame problem and writes successor state axioms of the following form:
F (~x, do(a, s) ≡ γ+F (~x, a, s) ∨ F (~x, s) ∧ ¬γ
−
F (~x, a, s),
where both γ+F (~x, a, s) and γ
+
F (~x, a, s) are first-order formulas uniform in s encoding the
positive and negative effects, respectively, of action a on fluent F at situation s.
As a running example we consider the simple scenario of a robot that is capable of
navigating and moving objects around in a grid-like world while some objects such as
boxes may also contain other objects. The robot is equipped with a basic action theory
D that captures the initial state and the dynamics of the example domain. D uses fluents
RobotAt(x, s) and RobotDir(x, s) to represent information about the location of the robot
and the direction it is facing, and Connected(x1, x2, x3, s) to represent that location x3 is
adjacent to location x1 wrt direction x2 in s.
D includes the following SSA to capture the way fluent RobotAt(x, s) is affected by the
actions of the robot:
RobotAt(x, do(a, s)) ≡ γ+RobotAt(x, a, s) ∨ RobotAt(x, s) ∧ ¬γ
−
RobotAt(x, a, s), (1)
where γ+RobotAt(x, a, s) is the formula
∃z1, z2. a = moveFwd∧RobotAt(z1, s) ∧ RobotDir(z2, s) ∧ Connected(z1, z2, x, s),
D = Dap ∪ Dss ∪ Duna ∪ Dsr ∪ D0 ∪ Σ ∪ E ,
where:
1. Dap is the set of action precondition axioms (PAs), one per action symbol A, of the
form Poss(A(~y), s) ≡ ΠA(~y, s), where ΠA(~y, s) is first-order and uniform in s. PAs
characterize the conditions under which actions are physically possible.
2. Dss is the set of successor state axioms (SSAs), one per fluent symbol F , of the
form F (~x, do(a, s)) ≡ ΦF (~x, a, s), where ΦF (~x, a, s) is first-order and uniform in
s. SSAs describe how fluents change between situations as the result of actions.
3. Dsr is the set of sensing-result axioms (SRAs), one for each action symbol A, of the
form SR(A(~y), s) = r ≡ ΘA(~y, r, s), where ΘA(~y, r, s) is first-order and uniform
in s. SRAs relate sensing outcomes with fluents, or more generally, with complex
properties of the domain.
4. Duna is the set of unique-names axioms for actions.
5. D0, the initial knowledge base (KB), is a set of first-order sentences uniform in S0
describing the initial situation S0.
6. Σ is the set of domain independent axioms of the situation calculus, formally defining
the legal situations. A second-order induction axiom is included in Σ.
7. E is an infinite set of unique-names axioms for object constants.
Probably the most interesting component of a basic action theory is the set successor
state axioms, which together encode the dynamics of the domain being represented. Tech-
nically, SSAs are meant to capture the effects and non-effects of actions. To achieve that
in a parsimonious way, one typically follows Reiter [1991]’s well-known solution to the
frame problem and writes successor state axioms of the following form:
F (~x, do(a, s) ≡ γ+F (~x, a, s) ∨ F (~x, s) ∧ ¬γ
−
F (~x, a, s),
where both γ+F (~x, a, s) and γ
+
F (~x, a, s) are first-order formulas uniform in s encoding the
positive and negative effects, respectively, of action a on fluent F at situation s.
As a running example we consider the simple scenario of a robot that is capable of
navigating and moving objects around in a grid-like world while some objects such as
boxes may also contain other objects. The robot is equipped with a basic action theory
D that captures the initial state and the dynamics of the example domain. D uses fluents
RobotAt(x, s) and RobotDir(x, s) to represent information about the location of the robot
and the direction it is facing, and Connected(x1, x2, x3, s) to represent that location x3 is
adjacent to location x1 wrt direction x2 in s.
D includes the following SSA to capture the way fluent RobotAt(x, s) is affected by the
actions of the robot:
RobotAt(x, do(a, s)) ≡ γ+RobotAt(x, a, s) ∨ RobotAt(x, s) ∧ ¬γ
−
RobotAt(x, a, s), (1)
where γ+RobotAt(x, a, s) is the formula
∃z1, z2. a = moveFwd∧RobotAt(z1, s) ∧ RobotDir(z2, s) ∧ Connected(z1, z2, x, s),
Page 5
A Database-type Approach for Progressing Action Theories with Bounded Effects
and γ−RobotAt(x, a, s) is the formula a = moveFwd.
In words, the robot is at location x after executing action a iff a is the action of moving
forward, the robot is currently at location z1 and facing towards direction z2, and x is the
next adjacent location to z1 towards direction z2, or the robot was already in location x
(i.e., RobotAt(x, s) holds) and it has not performed a move action.
The current location of objects is modeled using fluent At(x1, x2, s): object x1 is at lo-
cation x2 at situation s, and fluent In(x1, x2, s) represents that object x2 is inside x1. When
the robot moves, all objects being carried by the robot move as well. This is accounted in
the following SSA for fluent At(x1, x2, s) that is included in D:
At(x1, x2, do(a, s)) ≡ γ
+
At(x1, x2, a, s) ∨ At(x1, x2, s) ∧ ¬γ
−
At(x1, x2, a, s), (2)
where γ+At(x1, x2, a, s) is the formula
∃z1, z2
(
a = moveFwd∧RobotAt(z1, s) ∧ RobotDir(z2, s)∧
Connected(z1, z2, x2, s) ∧ Holding(x1, s)
)
∨
∃z1, z2, z3
(
a = moveFwd∧RobotAt(z1, s) ∧ RobotDir(z2, s)∧
Connected(z1, z2, x2, s) ∧ Holding(z3, s) ∧ In(z3, x1, s)
)
,
and γ−At(x1, x2, a, s) is the formula
a = moveFwd∧Holding(x1, s) ∨
∃z. a = moveFwd∧Holding(z, s) ∧ In(z, x1, s).
Formula γ+At(x1, x2, a, s) that describes the positive effects, states that object x1 is at
location x2 if the robot has successfully moved to location x2 and either the robot is holding
x1 or x1 is inside an object that the robot is holding. Similarly, the negative effect formula
γ−At(x1, x2, a, s) in the SSA states that object x1 is not (anymore) at location x2 if the robot
has moved while carrying x1 or some other object that has x inside it.
Although we do not list them here, fluents RobotDir(x,w), Holding(x, s), In(x1, x2, s),
and Connected(x1, x2, x3, s) are also meant to have their corresponding SSAs in basic
action theory D of our running example. For instance, the SSA for RobotDir(x, s) states
that the current direction the robot is facing is affected by the turning action that the robot
can perform. Similarly, appropriate action precondition axioms are assumed.
Although the agent can pick up containers that have other objects inside, it may have at
certain point incomplete information on what is inside the containers, that is, incomplete
information about fluent In(x1, x2, s). Nonetheless, we assume the agent can sense, using
a special device, whether there is gold inside a container object. Technically, the agent can
execute sensing action senseGold(y) that determines whether there is gold inside container
object y:
Poss(senseGold(y), s) ≡ Holding(y, s),
SR(senseGold(y), s) = r ≡ [(r = 1) ≡ In(y, item2, s)].
In words, the agent can sense for gold in an object whenever the agent is holding the
object, and the outcome of such action is 1 iff the container object in question contains
gold pieces inside.
Finally, the initial KBD0, represents the initial knowledge the agent has about the world
using sentences uniform in S0, that is, sentences that only refer to the initial situation such
as RobotAt(loc1, S0) and RobotDir(north, S0). We postpone the specification of D0 for
our example until Section 3.1 where we introduce a specific form of initial KBs.
and γ−RobotAt(x, a, s) is the formula a = moveFwd.
In words, the robot is at location x after executing action a iff a is the action of moving
forward, the robot is currently at location z1 and facing towards direction z2, and x is the
next adjacent location to z1 towards direction z2, or the robot was already in location x
(i.e., RobotAt(x, s) holds) and it has not performed a move action.
The current location of objects is modeled using fluent At(x1, x2, s): object x1 is at lo-
cation x2 at situation s, and fluent In(x1, x2, s) represents that object x2 is inside x1. When
the robot moves, all objects being carried by the robot move as well. This is accounted in
the following SSA for fluent At(x1, x2, s) that is included in D:
At(x1, x2, do(a, s)) ≡ γ
+
At(x1, x2, a, s) ∨ At(x1, x2, s) ∧ ¬γ
−
At(x1, x2, a, s), (2)
where γ+At(x1, x2, a, s) is the formula
∃z1, z2
(
a = moveFwd∧RobotAt(z1, s) ∧ RobotDir(z2, s)∧
Connected(z1, z2, x2, s) ∧ Holding(x1, s)
)
∨
∃z1, z2, z3
(
a = moveFwd∧RobotAt(z1, s) ∧ RobotDir(z2, s)∧
Connected(z1, z2, x2, s) ∧ Holding(z3, s) ∧ In(z3, x1, s)
)
,
and γ−At(x1, x2, a, s) is the formula
a = moveFwd∧Holding(x1, s) ∨
∃z. a = moveFwd∧Holding(z, s) ∧ In(z, x1, s).
Formula γ+At(x1, x2, a, s) that describes the positive effects, states that object x1 is at
location x2 if the robot has successfully moved to location x2 and either the robot is holding
x1 or x1 is inside an object that the robot is holding. Similarly, the negative effect formula
γ−At(x1, x2, a, s) in the SSA states that object x1 is not (anymore) at location x2 if the robot
has moved while carrying x1 or some other object that has x inside it.
Although we do not list them here, fluents RobotDir(x,w), Holding(x, s), In(x1, x2, s),
and Connected(x1, x2, x3, s) are also meant to have their corresponding SSAs in basic
action theory D of our running example. For instance, the SSA for RobotDir(x, s) states
that the current direction the robot is facing is affected by the turning action that the robot
can perform. Similarly, appropriate action precondition axioms are assumed.
Although the agent can pick up containers that have other objects inside, it may have at
certain point incomplete information on what is inside the containers, that is, incomplete
information about fluent In(x1, x2, s). Nonetheless, we assume the agent can sense, using
a special device, whether there is gold inside a container object. Technically, the agent can
execute sensing action senseGold(y) that determines whether there is gold inside container
object y:
Poss(senseGold(y), s) ≡ Holding(y, s),
SR(senseGold(y), s) = r ≡ [(r = 1) ≡ In(y, item2, s)].
In words, the agent can sense for gold in an object whenever the agent is holding the
object, and the outcome of such action is 1 iff the container object in question contains
gold pieces inside.
Finally, the initial KBD0, represents the initial knowledge the agent has about the world
using sentences uniform in S0, that is, sentences that only refer to the initial situation such
as RobotAt(loc1, S0) and RobotDir(north, S0). We postpone the specification of D0 for
our example until Section 3.1 where we introduce a specific form of initial KBs.
Page 6
Stavros Vassos and Sebastian Sardina
2.2 Progression
The progression of a basic action theory is the problem of updating the initial KB so that
it reflects the current state of the world after some actions have been performed instead of
the initial state of the world. In other words, in order to do a one-step progression of a
basic action theory D with respect to a ground action α, we are to replace D0 in D by a
suitable set Dα of sentences (i.e., a new KB), so that the original theory D and the theory
(D −D0) ∪Dα are equivalent with respect to how they describe the situation do(α, S0) as
well as all situations in the future of do(α, S0) [Lin and Reiter 1997].
In this paper, instead of the model-theoretic definition of progression of Lin and Reiter
[1997], we follow the definition of the so-called strong progression of Vassos et al. [2008]
which we extend slightly in order to account for sensing actions.
Let D be a basic action theory over relational fluents F1, . . . , Fn, and let Q1, . . . , Qn be
second-order predicate variables. For any formula φ in L, let φ〈~F : ~Q〉 be the formula that
results from replacing any fluent atom Fi(t1, . . . , tn, σ) in φ, where σ is a situation term,
with atom Qi(t1, . . . , tn).
DEFINITION 1. Let D be a basic action theory over fluents ~F such that D0 is finite, α a
ground action term of the form A(~c), and d a sensing outcome result. Let Prog(D, α, d) be
the following second-order sentence uniform in do(α, S0):
∃ ~Q. D0〈~F : ~Q〉 ∧ΘA(~c, d, do(α, S0)) ∧
∧n
i=1 ∀~x. Fi(~x, do(α, S0)) ≡(
ΦFi(~x, α, S0)〈~F : ~Q〉
)
.
Then, we say that a set of formulas Dα uniform in situation do(α, S0) is a strong progres-
sion of D wrt pair of action-outcome (α, d) iff Dα ∪ Duna ∪ E is logically equivalent2 to
{Prog(D, α, d)} ∪ Duna ∪ E . uunionsq
Informally, set Dα represents the updated initial KB after action α has been executed
with sensing outcome d. Although Prog(D, α, d) is defined in second-order logic we are
interested in cases where we can find a Dα that is first-order representable. In the sequel
we shall present some restrictions that are sufficient conditions for doing this as well as a
method for computing a finite Dα for a special case of interest.
3 Range-restricted basic action theories
In this section, we present a new type of basic action theories in which the initial KB is
a database of possible closures and the axioms in Dap, Dss, and Dsr are range-restricted.
Essentially, we will be specifying the effects of actions in a way that resembles to logic-
programming. In order to make progression work in first-order we also require a semantic
assumption that may not hold in all situations but may be enforced with an appropriate
account of sensing. Under these three assumptions, we will show later that a finite first-
order updated (initial) KB can be computed.
3.1 A database of possible closures
Intuitively, we treat each fluent as a multi-valued function, where the last argument of sort
object is considered as the “output” and the rest of the arguments of sort object as the
2Whenever we say that two formulas are logically equivalent we assume that the logical symbol = is always
interpreted as the true identity.
2.2 Progression
The progression of a basic action theory is the problem of updating the initial KB so that
it reflects the current state of the world after some actions have been performed instead of
the initial state of the world. In other words, in order to do a one-step progression of a
basic action theory D with respect to a ground action α, we are to replace D0 in D by a
suitable set Dα of sentences (i.e., a new KB), so that the original theory D and the theory
(D −D0) ∪Dα are equivalent with respect to how they describe the situation do(α, S0) as
well as all situations in the future of do(α, S0) [Lin and Reiter 1997].
In this paper, instead of the model-theoretic definition of progression of Lin and Reiter
[1997], we follow the definition of the so-called strong progression of Vassos et al. [2008]
which we extend slightly in order to account for sensing actions.
Let D be a basic action theory over relational fluents F1, . . . , Fn, and let Q1, . . . , Qn be
second-order predicate variables. For any formula φ in L, let φ〈~F : ~Q〉 be the formula that
results from replacing any fluent atom Fi(t1, . . . , tn, σ) in φ, where σ is a situation term,
with atom Qi(t1, . . . , tn).
DEFINITION 1. Let D be a basic action theory over fluents ~F such that D0 is finite, α a
ground action term of the form A(~c), and d a sensing outcome result. Let Prog(D, α, d) be
the following second-order sentence uniform in do(α, S0):
∃ ~Q. D0〈~F : ~Q〉 ∧ΘA(~c, d, do(α, S0)) ∧
∧n
i=1 ∀~x. Fi(~x, do(α, S0)) ≡(
ΦFi(~x, α, S0)〈~F : ~Q〉
)
.
Then, we say that a set of formulas Dα uniform in situation do(α, S0) is a strong progres-
sion of D wrt pair of action-outcome (α, d) iff Dα ∪ Duna ∪ E is logically equivalent2 to
{Prog(D, α, d)} ∪ Duna ∪ E . uunionsq
Informally, set Dα represents the updated initial KB after action α has been executed
with sensing outcome d. Although Prog(D, α, d) is defined in second-order logic we are
interested in cases where we can find a Dα that is first-order representable. In the sequel
we shall present some restrictions that are sufficient conditions for doing this as well as a
method for computing a finite Dα for a special case of interest.
3 Range-restricted basic action theories
In this section, we present a new type of basic action theories in which the initial KB is
a database of possible closures and the axioms in Dap, Dss, and Dsr are range-restricted.
Essentially, we will be specifying the effects of actions in a way that resembles to logic-
programming. In order to make progression work in first-order we also require a semantic
assumption that may not hold in all situations but may be enforced with an appropriate
account of sensing. Under these three assumptions, we will show later that a finite first-
order updated (initial) KB can be computed.
3.1 A database of possible closures
Intuitively, we treat each fluent as a multi-valued function, where the last argument of sort
object is considered as the “output” and the rest of the arguments of sort object as the
2Whenever we say that two formulas are logically equivalent we assume that the logical symbol = is always
interpreted as the true identity.
Page 7
A Database-type Approach for Progressing Action Theories with Bounded Effects
“input” of the function.3 This distinction is important as we require that D0 expresses
incomplete information only about the output of fluents.
DEFINITION 2. Let V be a set of constants and τ a fluent atom of the form F (~c, w, S0),
where ~c is a vector of constants and w a variable. We say that τ has the ground input ~c and
the output w. The atomic closure χ of τ on V is the sentence:
∀w.F (~c, w, S0) ≡
∨
e∈V
(w = e).
The closure of the fluent vector ~τ = 〈τ1, . . . , τn〉 of distinct atoms on a ground input vector
~V = 〈V1, . . . , Vn〉 of sets of constants is the conjunction (χ1 ∧ . . .∧ χn), where each χi is
the atomic closure of τi on Vi. uunionsq
A closure of ~τ expresses complete information about the output of all input-grounded
fluents in ~τ . For example, consider fluents RobotAt(x, s) and RobotDir(x, s) that represent
information about the location of the robot and the direction it is facing. Let χ1 be the the
atomic closure of RobotAt(w, S0) on {loc1} and χ2 the atomic closure of RobotDir(w, S0)
on {north}, that is:
∀w.RobotAt(w, S0) ≡ (w = loc1); (χ1)
∀w.RobotDir(w, S0) ≡ (w = north). (χ2)
Then χ1 and χ2 express complete information about the location of the robot and the di-
rection it is facing.
Consider now fluent In(x, y, s) which represents that object y is inside the object x at
situation s, and the input-grounded fluent atom In(box1, w, S0). Let χ3 be the following
sentence:
∀w. In(box1, w, S0) ≡ (w = item1 ∨w = item2). (χ3)
Then, χ3 is the atomic closure of In(box1, w, S0) on {item1, item2} which states that there
are exactly two objects inside box1, namely item1 and item2.
Finally, let χ4 be the the atomic closure of In(box2, w, S0) on {gold}:
∀w. In(box2, w, S0) ≡ (w = gold). (χ4)
Then, (χ3 ∧ χ4) is a (non-atomic) closure of the vector of input-grounded fluent atoms
〈
In(box1, w, S0), In(box2, w, S0)
〉
that expresses complete information about the contents of box1 and box2.
We now show how we can combine these closure statements in order to express incom-
plete information.
DEFINITION 3. A possible closures axiom (PCA) for a vector of input-grounded fluents
~τ is a disjunction of the form (χ1 ∨ · · · ∨ χn), where each χi is a closure of ~τ on a distinct
vector ~Vn of constants. uunionsq
A PCA for ~τ expresses disjunctive information about the output of all fluents in ~τ , by
stating how such outputs can be combined together (in n possible ways). For example
3This is similar to modes in logic programming [Apt and Pellegrini 1994] and it can be easily generalized to
multiple outputs.
“input” of the function.3 This distinction is important as we require that D0 expresses
incomplete information only about the output of fluents.
DEFINITION 2. Let V be a set of constants and τ a fluent atom of the form F (~c, w, S0),
where ~c is a vector of constants and w a variable. We say that τ has the ground input ~c and
the output w. The atomic closure χ of τ on V is the sentence:
∀w.F (~c, w, S0) ≡
∨
e∈V
(w = e).
The closure of the fluent vector ~τ = 〈τ1, . . . , τn〉 of distinct atoms on a ground input vector
~V = 〈V1, . . . , Vn〉 of sets of constants is the conjunction (χ1 ∧ . . .∧ χn), where each χi is
the atomic closure of τi on Vi. uunionsq
A closure of ~τ expresses complete information about the output of all input-grounded
fluents in ~τ . For example, consider fluents RobotAt(x, s) and RobotDir(x, s) that represent
information about the location of the robot and the direction it is facing. Let χ1 be the the
atomic closure of RobotAt(w, S0) on {loc1} and χ2 the atomic closure of RobotDir(w, S0)
on {north}, that is:
∀w.RobotAt(w, S0) ≡ (w = loc1); (χ1)
∀w.RobotDir(w, S0) ≡ (w = north). (χ2)
Then χ1 and χ2 express complete information about the location of the robot and the di-
rection it is facing.
Consider now fluent In(x, y, s) which represents that object y is inside the object x at
situation s, and the input-grounded fluent atom In(box1, w, S0). Let χ3 be the following
sentence:
∀w. In(box1, w, S0) ≡ (w = item1 ∨w = item2). (χ3)
Then, χ3 is the atomic closure of In(box1, w, S0) on {item1, item2} which states that there
are exactly two objects inside box1, namely item1 and item2.
Finally, let χ4 be the the atomic closure of In(box2, w, S0) on {gold}:
∀w. In(box2, w, S0) ≡ (w = gold). (χ4)
Then, (χ3 ∧ χ4) is a (non-atomic) closure of the vector of input-grounded fluent atoms
〈
In(box1, w, S0), In(box2, w, S0)
〉
that expresses complete information about the contents of box1 and box2.
We now show how we can combine these closure statements in order to express incom-
plete information.
DEFINITION 3. A possible closures axiom (PCA) for a vector of input-grounded fluents
~τ is a disjunction of the form (χ1 ∨ · · · ∨ χn), where each χi is a closure of ~τ on a distinct
vector ~Vn of constants. uunionsq
A PCA for ~τ expresses disjunctive information about the output of all fluents in ~τ , by
stating how such outputs can be combined together (in n possible ways). For example
3This is similar to modes in logic programming [Apt and Pellegrini 1994] and it can be easily generalized to
multiple outputs.
Page 8
Stavros Vassos and Sebastian Sardina
consider again the input-grounded fluent atom In(box1, w, S0), and let χ5 be the closure of
In(box1, w, S0) on {item1, gold}:
∀w. In(box1, w, S0) ≡ (w = item1 ∨w = gold). (χ5)
Then, (χ3 ∨ χ5) is a PCA for In(box1, w, S0) stating that there are exactly two objects
inside box1, one being item1 and the other being either item2 or gold. Similarly, let χ6 be
the closure of In(box2, w, S0) on {item2}:
∀w. In(box2, w, S0) ≡ (w = item2). (χ6)
Then (χ3 ∧ χ4) ∨ (χ5 ∧ χ6) is a PCA for
〈
In(box1, w, S0, ), In(box2, w, S0)
〉
,
which states that box1 and box2 contain the three items item1, item2, gold, but only two
possible combinations are allowed: either gold is in box2 and the other two items are in
box1, or item2 is in box2 and the other two items are in box1.
Using a set of PCAs, each one referring to different input-grounded fluent atoms, we are
now able to define the form of our initial knowledge bases.
DEFINITION 4. A database of possible closures (DBPC) is a set D0 = {Ξ~τ1 , . . . ,Ξ~τ`},
where each Ξ~τi is a PCA for ~τi such that ~τi ∩ ~τj = ∅, for all distinct i, j ∈ {1, . . . , `}. For
every i, each disjunct of Ξ~τi is called a possible closure wrt D0. uunionsq
So, for every fluent atom τ with a ground input (e.g., In(box1, w, S0)), either the output
of τ is completely unknown in S0 (i.e., τ is not mentioned in D0) or there is just one
PCA Ξ~τi (with τ ∈ ~τi) that specifies its output value in several possible “worlds” (one per
disjunct in the PCA).
For our running example, the initial knowledge base is as follows:
D0 = {χ1, χ2, (χ3 ∧ χ4) ∨ (χ5 ∧ χ6)} ∪ {χ7, . . . , χ13},
where χ1, . . . , χ6 are defined above, χ7 is the closure of Connected(loc1, north, w, S0)
on {loc2}, χ8 is the closure of Holding(w, S0) on the set {box2}, and χ9, . . . , χ13 are
the atomic closures of At(box1, w, S0), At(item1, w, S0), At(box2, w, S0), At(item2, w, S0),
and At(gold, w, S0) on set {loc1}, respectively. Note that each of the ten sentences in D0
is a PCA, and each of χ1, χ2, χ3 ∧ χ4, χ5 ∧ χ6, χ7, . . . , χ13 is a possible closure wrt D0.
We now turn our attention to the so-called possible answers to a formula wrt a KB.
DEFINITION 5. Let D0 be a DBPC and γ(~x) a first-order formula uniform in S0. The
possible answers to γ wrt D0, denoted pans(γ,D0), is the smallest set of pairs (~c, χ) such
that:
• χ is a closure of some fluent vector ~τ such that E ∪ {χ} |= γ(~c); and
• χ is consistent with D0 and minimal in the sense that every atomic closure in χ is
necessary. uunionsq
Intuitively, pans(γ,D0) characterizes all the cases where γ(~x) is satisfied in a model of
D0 ∪ E for some instantiation of ~x. In our example, pans(In(box1, x, S0),D0) is the set
{(item1, χ3), (item2, χ3), (item1, χ5), (gold, χ5)}.
consider again the input-grounded fluent atom In(box1, w, S0), and let χ5 be the closure of
In(box1, w, S0) on {item1, gold}:
∀w. In(box1, w, S0) ≡ (w = item1 ∨w = gold). (χ5)
Then, (χ3 ∨ χ5) is a PCA for In(box1, w, S0) stating that there are exactly two objects
inside box1, one being item1 and the other being either item2 or gold. Similarly, let χ6 be
the closure of In(box2, w, S0) on {item2}:
∀w. In(box2, w, S0) ≡ (w = item2). (χ6)
Then (χ3 ∧ χ4) ∨ (χ5 ∧ χ6) is a PCA for
〈
In(box1, w, S0, ), In(box2, w, S0)
〉
,
which states that box1 and box2 contain the three items item1, item2, gold, but only two
possible combinations are allowed: either gold is in box2 and the other two items are in
box1, or item2 is in box2 and the other two items are in box1.
Using a set of PCAs, each one referring to different input-grounded fluent atoms, we are
now able to define the form of our initial knowledge bases.
DEFINITION 4. A database of possible closures (DBPC) is a set D0 = {Ξ~τ1 , . . . ,Ξ~τ`},
where each Ξ~τi is a PCA for ~τi such that ~τi ∩ ~τj = ∅, for all distinct i, j ∈ {1, . . . , `}. For
every i, each disjunct of Ξ~τi is called a possible closure wrt D0. uunionsq
So, for every fluent atom τ with a ground input (e.g., In(box1, w, S0)), either the output
of τ is completely unknown in S0 (i.e., τ is not mentioned in D0) or there is just one
PCA Ξ~τi (with τ ∈ ~τi) that specifies its output value in several possible “worlds” (one per
disjunct in the PCA).
For our running example, the initial knowledge base is as follows:
D0 = {χ1, χ2, (χ3 ∧ χ4) ∨ (χ5 ∧ χ6)} ∪ {χ7, . . . , χ13},
where χ1, . . . , χ6 are defined above, χ7 is the closure of Connected(loc1, north, w, S0)
on {loc2}, χ8 is the closure of Holding(w, S0) on the set {box2}, and χ9, . . . , χ13 are
the atomic closures of At(box1, w, S0), At(item1, w, S0), At(box2, w, S0), At(item2, w, S0),
and At(gold, w, S0) on set {loc1}, respectively. Note that each of the ten sentences in D0
is a PCA, and each of χ1, χ2, χ3 ∧ χ4, χ5 ∧ χ6, χ7, . . . , χ13 is a possible closure wrt D0.
We now turn our attention to the so-called possible answers to a formula wrt a KB.
DEFINITION 5. Let D0 be a DBPC and γ(~x) a first-order formula uniform in S0. The
possible answers to γ wrt D0, denoted pans(γ,D0), is the smallest set of pairs (~c, χ) such
that:
• χ is a closure of some fluent vector ~τ such that E ∪ {χ} |= γ(~c); and
• χ is consistent with D0 and minimal in the sense that every atomic closure in χ is
necessary. uunionsq
Intuitively, pans(γ,D0) characterizes all the cases where γ(~x) is satisfied in a model of
D0 ∪ E for some instantiation of ~x. In our example, pans(In(box1, x, S0),D0) is the set
{(item1, χ3), (item2, χ3), (item1, χ5), (gold, χ5)}.
Page 9
A Database-type Approach for Progressing Action Theories with Bounded Effects
3.2 Formulas with finite possible answers
Observe that the possible answers to a formula may be infinite. For instance, let γ1(x) be
In(box3, x, S0) and D0 as before. Since nothing is said about In(box3, x, S0) in D0, for
every constant c in L, (c, χc) ∈ pans(γ1,D0), where χc is the closure of In(box3, w, S0)
on {c}. Similarly, let γ2(x) be ¬ In(box1, x, S0). Then, pans(γ2,D0) includes the infinite
set {(c, χ3) | c 6= item1, c 6= item2}, since everything but item1 or item2 is not in box1
when E ∪ {χ3} is assumed.
Following this observation we distinguish two potential sources of an infinite set of
possible answers to γ wrt toD0: first, when γ includes a fluent atom of the form F (~c, w, S0)
that is not mentioned in D0, and second, when γ includes negative literals. Our objective
is to identify a class of formulas γ for which pans(γ,D0) is finite. To that end we appeal
to the notions of just-in-time and range-restricted.
DEFINITION 6. Let D0 be a DBPC and γ(~x) a first-order formula uniform in S0. Then
γ(~x) is just-in-time (JIT) wrt D0 iff for every pair (~c, χ) in pans(γ,D0), there exists a
consistent set T of possible closures wrt D0 such that T ∪ E |= χ. uunionsq
Definition 6 implies that each of the possible answers to γ wrtD0 consists of information
that is listed explicitly in D0. For example, consider again pans(In(box1, x, S0),D0) and
note that χ3 and χ5 are implied by χ3 ∧ χ4 and χ5 ∧ χ6, respectively, which are both
possible closures wrtD0. This provides a way to avoid the cases that are similar to γ1 (note
that γ1 is not JIT wrtD0). Nonetheless, this is not enough to avoid an infinite set of possible
answers (note that γ2 is JIT wrt D0). We shall also require formulas to be range-restricted
in the following sense.
DEFINITION 7. The first-order formula γ is safe-range wrt a set of variablesX according
to the following rules:
1. let ~t be a vector of variables and constants, c a constant, and x a variable of sort
object, then:
• x = c is safe-range wrt {x};
• F (~t, c, S0) is safe-rage wrt {};
• F (~t, x, S0) is safe-range wrt {x} if x is not included in ~t, and safe-range wrt
{} otherwise;
2. if φ is safe-range wrt Xφ, ψ is safe-range wrt Xψ , then:
• φ ∨ ψ is safe-range wrt Xφ ∩Xψ;
• φ ∧ ψ is safe-range wrt Xφ ∪Xψ;
• ¬φ is safe-range wrt {};
• ∃xφ is safe-range wrt X/{x} provided that x ∈ X;
3. no other formula is safe-range.
A formula is said to be range-restricted iff it is safe-range wrt the set of its free variables. uunionsq
For example, In(x, y, S0) is safe-range wrt {y} but not range-restricted and not JIT wrt D0
of our example. On the other hand, the formulas In(x, y, S0)∧x = box1 and In(box1, y, S0)
are both range-restricted and JIT wrt D0. Note also that γ2 is not range-restricted.
3.2 Formulas with finite possible answers
Observe that the possible answers to a formula may be infinite. For instance, let γ1(x) be
In(box3, x, S0) and D0 as before. Since nothing is said about In(box3, x, S0) in D0, for
every constant c in L, (c, χc) ∈ pans(γ1,D0), where χc is the closure of In(box3, w, S0)
on {c}. Similarly, let γ2(x) be ¬ In(box1, x, S0). Then, pans(γ2,D0) includes the infinite
set {(c, χ3) | c 6= item1, c 6= item2}, since everything but item1 or item2 is not in box1
when E ∪ {χ3} is assumed.
Following this observation we distinguish two potential sources of an infinite set of
possible answers to γ wrt toD0: first, when γ includes a fluent atom of the form F (~c, w, S0)
that is not mentioned in D0, and second, when γ includes negative literals. Our objective
is to identify a class of formulas γ for which pans(γ,D0) is finite. To that end we appeal
to the notions of just-in-time and range-restricted.
DEFINITION 6. Let D0 be a DBPC and γ(~x) a first-order formula uniform in S0. Then
γ(~x) is just-in-time (JIT) wrt D0 iff for every pair (~c, χ) in pans(γ,D0), there exists a
consistent set T of possible closures wrt D0 such that T ∪ E |= χ. uunionsq
Definition 6 implies that each of the possible answers to γ wrtD0 consists of information
that is listed explicitly in D0. For example, consider again pans(In(box1, x, S0),D0) and
note that χ3 and χ5 are implied by χ3 ∧ χ4 and χ5 ∧ χ6, respectively, which are both
possible closures wrtD0. This provides a way to avoid the cases that are similar to γ1 (note
that γ1 is not JIT wrtD0). Nonetheless, this is not enough to avoid an infinite set of possible
answers (note that γ2 is JIT wrt D0). We shall also require formulas to be range-restricted
in the following sense.
DEFINITION 7. The first-order formula γ is safe-range wrt a set of variablesX according
to the following rules:
1. let ~t be a vector of variables and constants, c a constant, and x a variable of sort
object, then:
• x = c is safe-range wrt {x};
• F (~t, c, S0) is safe-rage wrt {};
• F (~t, x, S0) is safe-range wrt {x} if x is not included in ~t, and safe-range wrt
{} otherwise;
2. if φ is safe-range wrt Xφ, ψ is safe-range wrt Xψ , then:
• φ ∨ ψ is safe-range wrt Xφ ∩Xψ;
• φ ∧ ψ is safe-range wrt Xφ ∪Xψ;
• ¬φ is safe-range wrt {};
• ∃xφ is safe-range wrt X/{x} provided that x ∈ X;
3. no other formula is safe-range.
A formula is said to be range-restricted iff it is safe-range wrt the set of its free variables. uunionsq
For example, In(x, y, S0) is safe-range wrt {y} but not range-restricted and not JIT wrt D0
of our example. On the other hand, the formulas In(x, y, S0)∧x = box1 and In(box1, y, S0)
are both range-restricted and JIT wrt D0. Note also that γ2 is not range-restricted.
Page 10
Stavros Vassos and Sebastian Sardina
We now state the main result of this section.
THEOREM 8. Let D0 be a DBPC and γ(~x, ~y) a first-order formula uniform in S0 that is
JIT wrtD0 and safe-range wrt the variables in ~x. Then for every constant vector ~d that has
the same size as ~y, pans(γ(~x, ~d),D0) is a finite set {(~e1, χ1), . . . , (~en, χn)} such that the
following holds:
D0 ∪ E |= ∀~x.γ(~x, ~d) ≡
n∨
i=1
(~x = ~ei ∧ χi).
The proof is done by induction on the construction of γ. Since γ is safe-range wrt the
variables in ~x we only need to consider the cases of Definition 7. Even though the ideas are
straightforward, the actual proof is tedious and can be found in the appendix.
In other words, the range-restricted and JIT assumptions on a formula guarantee finitely
many possible answers, and imply a syntactic normal form for the formula as shown next.
DEFINITION 9. Let γ be a first-order range-restricted formula uniform in S0 that is JIT
wrt D0. Then, the possible answers normal form (PANS-NF) of γ wrt D0 is a disjunction
of formulas of the form ~x = ~e ∧ χ as implied by Theorem 8. uunionsq
For example, consider again pans(In(box1, x, S0),D0). The possible answers normal
form of In(box1, x, S0) wrt D0 is the formula
(x = item1 ∧χ3) ∨ (x = item2 ∧χ3) ∨ (x = item1 ∧χ5) ∨ (x = gold∧χ5).
3.3 Range-restricted action theories
We now have all the necessary machinery to define our type of basic action theories.
DEFINITION 10. A successor state axiom for F is range-restricted iff γ+F (~x, a, s) and
γ−F (~x, a, s) are disjunctions of formulas of the form:
∃~z(a = A(~y) ∧ φ(~x, ~z, s)),
where ~y may contain some variables from ~x, ~z corresponds to the remaining variables of ~y,
and φ (called the context formula) is uniform in s and is such that φ(~x, ~z, S0) is safe-range
wrt a set that includes the variables in ~x that are not in ~y.
An SRA for A is range-restricted iff ΘA(~y, r, S0) is safe-range wrt any set of variables.
A range-restricted basic action theory (RR-BAT) is one such that all axioms in Dss,Dsr are
range-restricted and D0 is a DBPC. uunionsq
For example, observe that the SSAs for RobotAt and At, i.e., (1) and (2) follow the structure
implied by Definition 10 as they are built on appropriate disjunctions. Observe also that
the context formulas of the SSAs have been carefully crafted so that they also satisfy the
required condition about being range-restricted. In particular note that the instantiated
context formula of γ+RobotAt, that is,
RobotAt(z1, S0) ∧ RobotDir(z2, S0) ∧ Connected(z1, z2, x, S0),
is safe-range wrt {x}, as required by Definition 10.
The important property of RR-BATs is that when a γ∗F
4 formula in the successor state
axioms is instantiated with a ground action A(~c), Duna can be used to eliminate the ac-
tion term a = A(~c) so that γ∗F becomes range-restricted (similarly for ΘA in SRAs). So,
4We use γ∗ to denote either γ+ or γ−.
We now state the main result of this section.
THEOREM 8. Let D0 be a DBPC and γ(~x, ~y) a first-order formula uniform in S0 that is
JIT wrtD0 and safe-range wrt the variables in ~x. Then for every constant vector ~d that has
the same size as ~y, pans(γ(~x, ~d),D0) is a finite set {(~e1, χ1), . . . , (~en, χn)} such that the
following holds:
D0 ∪ E |= ∀~x.γ(~x, ~d) ≡
n∨
i=1
(~x = ~ei ∧ χi).
The proof is done by induction on the construction of γ. Since γ is safe-range wrt the
variables in ~x we only need to consider the cases of Definition 7. Even though the ideas are
straightforward, the actual proof is tedious and can be found in the appendix.
In other words, the range-restricted and JIT assumptions on a formula guarantee finitely
many possible answers, and imply a syntactic normal form for the formula as shown next.
DEFINITION 9. Let γ be a first-order range-restricted formula uniform in S0 that is JIT
wrt D0. Then, the possible answers normal form (PANS-NF) of γ wrt D0 is a disjunction
of formulas of the form ~x = ~e ∧ χ as implied by Theorem 8. uunionsq
For example, consider again pans(In(box1, x, S0),D0). The possible answers normal
form of In(box1, x, S0) wrt D0 is the formula
(x = item1 ∧χ3) ∨ (x = item2 ∧χ3) ∨ (x = item1 ∧χ5) ∨ (x = gold∧χ5).
3.3 Range-restricted action theories
We now have all the necessary machinery to define our type of basic action theories.
DEFINITION 10. A successor state axiom for F is range-restricted iff γ+F (~x, a, s) and
γ−F (~x, a, s) are disjunctions of formulas of the form:
∃~z(a = A(~y) ∧ φ(~x, ~z, s)),
where ~y may contain some variables from ~x, ~z corresponds to the remaining variables of ~y,
and φ (called the context formula) is uniform in s and is such that φ(~x, ~z, S0) is safe-range
wrt a set that includes the variables in ~x that are not in ~y.
An SRA for A is range-restricted iff ΘA(~y, r, S0) is safe-range wrt any set of variables.
A range-restricted basic action theory (RR-BAT) is one such that all axioms in Dss,Dsr are
range-restricted and D0 is a DBPC. uunionsq
For example, observe that the SSAs for RobotAt and At, i.e., (1) and (2) follow the structure
implied by Definition 10 as they are built on appropriate disjunctions. Observe also that
the context formulas of the SSAs have been carefully crafted so that they also satisfy the
required condition about being range-restricted. In particular note that the instantiated
context formula of γ+RobotAt, that is,
RobotAt(z1, S0) ∧ RobotDir(z2, S0) ∧ Connected(z1, z2, x, S0),
is safe-range wrt {x}, as required by Definition 10.
The important property of RR-BATs is that when a γ∗F
4 formula in the successor state
axioms is instantiated with a ground action A(~c), Duna can be used to eliminate the ac-
tion term a = A(~c) so that γ∗F becomes range-restricted (similarly for ΘA in SRAs). So,
4We use γ∗ to denote either γ+ or γ−.
Page 11
A Database-type Approach for Progressing Action Theories with Bounded Effects
whenever these formulas are also JIT wrt D0 then we can simplify them into PANS-NF by
means of Theorem 8.
In the next section we show how to progress an RR-BAT whenever the JIT assump-
tion holds and give an algorithm for a special case that the theory is built on conjunctive
formulas.
4 Just-in-time progression
The RR-BATs are defined so that when a JIT assumption holds, there is a finite set of
ground fluent atoms that may be affected by a ground action. The intuition is that in this
case we can progress D0 by appealing to the progression technique in [Vassos, Lakemeyer,
and Levesque 2008] that works when the set of fluents that may be affected is fixed by the
arguments of the action.
4.1 The progression method for the general case
The next definition captures the condition under which our method for progression is logi-
cally correct.
DEFINITION 11. An RR-BAT D is just-in-time (JIT) wrt (α, d), where α is a ground
action and d is a sensing result, iff for all fluent symbols F , γ+F (~x, α, S0) and γ
−
F (~x, α, S0)
are JIT wrt D0, and ΘA(~c, d, S0) is JIT wrt D0, where α is A(~c). uunionsq
Essentially, this condition requires that for all input-grounded fluent atoms that are needed
for the specification of the effects of α, there should be disjunctive or complete information
about their output in the form of some PCA in D0.
We introduce the following notation.
DEFINITION 12. Let D be an RR-BAT that is JIT wrt (α, d). Without loss of generality
we assume that ΘA(~e, d, S0) and all γ
+
F (~x, α, S0), γ
−
F (~x, α, S0) are in PANS-NF wrt D0.
Then, the context set of (α, d) wrt D, denoted as J , is the set of all F (~c, w, S0) such that
one of the following is true:
1. ~x = 〈~c, e〉 ∧ χ is a disjunct of some γ∗F (~x, α, S0);
2. F (~c, w, S0) appears in some γ∗F (~x, α, S0);
3. F (~c, w, S0) appears in ΘA(~c, d, S0), where α = A(~c). uunionsq
Intuitively, the context set J specifies all those atomic closures that need to be updated
after the action is performed (case 1) as well as those on which the change is conditioned
on (case 2), and the atomic closures for which some condition is sensed to be true (case 3).
The important property of J , which follows from Theorem 8, is that it is a finite set.
In the simple case of our running example and the ground action moveFwd,5 the context
set is the following:
{
RobotAt(w, S0),RobotDir(w, S0),Connected(loc1, north, w, S0),
Holding(w, S0),At(box2, w, S0),At(item2, w, S0),At(gold, w, S0)
}
.
Note that At(box1, w, S0) and At(item1, w, S0) are not needed in the progression as this
information is neither affected when moveFwd is applied in D0, nor needed to specify
some other effect of the action.
5For actions with no sensing result axioms, such as moveFwd, we typically do not refer to the sensing result d.
whenever these formulas are also JIT wrt D0 then we can simplify them into PANS-NF by
means of Theorem 8.
In the next section we show how to progress an RR-BAT whenever the JIT assump-
tion holds and give an algorithm for a special case that the theory is built on conjunctive
formulas.
4 Just-in-time progression
The RR-BATs are defined so that when a JIT assumption holds, there is a finite set of
ground fluent atoms that may be affected by a ground action. The intuition is that in this
case we can progress D0 by appealing to the progression technique in [Vassos, Lakemeyer,
and Levesque 2008] that works when the set of fluents that may be affected is fixed by the
arguments of the action.
4.1 The progression method for the general case
The next definition captures the condition under which our method for progression is logi-
cally correct.
DEFINITION 11. An RR-BAT D is just-in-time (JIT) wrt (α, d), where α is a ground
action and d is a sensing result, iff for all fluent symbols F , γ+F (~x, α, S0) and γ
−
F (~x, α, S0)
are JIT wrt D0, and ΘA(~c, d, S0) is JIT wrt D0, where α is A(~c). uunionsq
Essentially, this condition requires that for all input-grounded fluent atoms that are needed
for the specification of the effects of α, there should be disjunctive or complete information
about their output in the form of some PCA in D0.
We introduce the following notation.
DEFINITION 12. Let D be an RR-BAT that is JIT wrt (α, d). Without loss of generality
we assume that ΘA(~e, d, S0) and all γ
+
F (~x, α, S0), γ
−
F (~x, α, S0) are in PANS-NF wrt D0.
Then, the context set of (α, d) wrt D, denoted as J , is the set of all F (~c, w, S0) such that
one of the following is true:
1. ~x = 〈~c, e〉 ∧ χ is a disjunct of some γ∗F (~x, α, S0);
2. F (~c, w, S0) appears in some γ∗F (~x, α, S0);
3. F (~c, w, S0) appears in ΘA(~c, d, S0), where α = A(~c). uunionsq
Intuitively, the context set J specifies all those atomic closures that need to be updated
after the action is performed (case 1) as well as those on which the change is conditioned
on (case 2), and the atomic closures for which some condition is sensed to be true (case 3).
The important property of J , which follows from Theorem 8, is that it is a finite set.
In the simple case of our running example and the ground action moveFwd,5 the context
set is the following:
{
RobotAt(w, S0),RobotDir(w, S0),Connected(loc1, north, w, S0),
Holding(w, S0),At(box2, w, S0),At(item2, w, S0),At(gold, w, S0)
}
.
Note that At(box1, w, S0) and At(item1, w, S0) are not needed in the progression as this
information is neither affected when moveFwd is applied in D0, nor needed to specify
some other effect of the action.
5For actions with no sensing result axioms, such as moveFwd, we typically do not refer to the sensing result d.
Page 12
Stavros Vassos and Sebastian Sardina
We now define the J -models which will provide a way of separating D0 into two parts:
one that remains unaffected after the action is performed and one that needs to be updated.
The part that remains unaffected corresponds to all those PCAs that do not mention any
atom in J . For the part that needs updating, we will construct a large PCA that lists all the
possibilities for the closures of the atoms in J as follows.
DEFINITION 13. Let J = {τ1, . . . , τn} be the context set of (α, d) wrt an RR-BAT D.
A J -model θ is a sentence of the form (χ1 ∧ . . . ∧ χm) such that every χi is a possible
closure wrt D0 that mentions at least one of the atoms in J , all atoms in J are mentioned
in θ, θ is consistent, and atoms in θ appear in lexicographic order. uunionsq
Note that since D0 is finite there are finitely many J -models. In the simple case of our
running example there are two J -models, namely:
θ1 : χ1 ∧ χ2 ∧ χ3 ∧ χ4 ∧ χ7 ∧ χ8 ∧ χ11 ∧ χ12 ∧ χ13;
θ2 : χ1 ∧ χ2 ∧ χ5 ∧ χ6 ∧ χ7 ∧ χ8 ∧ χ11 ∧ χ12 ∧ χ13.
Note that χ9 and χ10 that represent the location of box1 and item1 are not included in any
of the J -models as the corresponding atoms, that is, At(box1, w, S0) and At(item1, w, S0),
are not included in the context set J .
The disjunction φ of all the J -models is a PCA that corresponds to the “cross-product”
of the PCAs in D0 that hold information about ~τ . Essentially, φ corresponds to the part of
D0 that needs updating, and the intuition is that we can progressD0 by progressing each of
the J -models separately.
DEFINITION 14. Let J be the context set of (α, d) wrt an RR-BAT D, and θ a J -model
that is the closure of {F1(~c1, w, S0), . . . , Fn(~cn, w, S0)} on 〈V1, . . . , Vn〉. We define Γ
+
i
as the smallest set of constants e such that:
1. ~x = 〈~ci, e〉 ∧ χ is a disjunct of γ
+
Fi
(~x, α, S0);
2. {χ ∧ θ} ∪ E is consistent.
The set Γ−i is defined similarly based on γ
−
Fi
(~x, α, S0). The progression of θ wrt (α, d) is
the closure on the updated vector 〈V ′1 , . . . , V
′
n〉, where V
′
i is the set (Vi − Γ
−
i ) ∪ Γ
+
i . The
J -model θ is filtered iff {ΘA(~c, d, S0) ∧ θ} ∪ E is inconsistent, where α is A(~c). uunionsq
Each J -model θ is updated based on the possible answers of the instantiated formulas
γ∗Fi . For every disjunct of γ
∗
Fi expressed in PANS-NF, the atom w = e is either removed
or added to the closure of Fi(~ci, w, S0) provided that the condition χ for the change is
consistent with θ. Similarly, a J -model may be filtered out if it is not consistent with the
conditions that are implied by the sensing result d.
For example, consider θ1 and the atom At(item2, w, S0) from J . The corresponding
Γ+ and Γ− for this atom are both the empty set {} as item2 is inside box1 in model θ1,
and therefore its location remains intact. On the other hand, if one considers model θ2, the
corresponding Γ+ and Γ− for At(item2, w, S0) are {loc2} and {loc1}, respectively. Putting
it all together, the updated J -models θ′1 and θ
′
2 are as follows:
θ′1 : χ
′
1 ∧ χ2 ∧ χ3 ∧ χ4 ∧ χ7 ∧ χ8 ∧ χ
′
11 ∧ χ12 ∧ χ
′
13,
θ′2 : χ
′
1 ∧ χ2 ∧ χ5 ∧ χ6 ∧ χ7 ∧ χ8 ∧ χ
′
11 ∧ χ
′
12 ∧ χ13,
where χ′1, χ
′
11, χ
′
12, and χ
′
13 are the atomic closures of RobotAt(w, S0), At(box2, w, S0),
At(item2, w, S0), and At(gold, w, S0) on {loc2}, respectively.
We now define the J -models which will provide a way of separating D0 into two parts:
one that remains unaffected after the action is performed and one that needs to be updated.
The part that remains unaffected corresponds to all those PCAs that do not mention any
atom in J . For the part that needs updating, we will construct a large PCA that lists all the
possibilities for the closures of the atoms in J as follows.
DEFINITION 13. Let J = {τ1, . . . , τn} be the context set of (α, d) wrt an RR-BAT D.
A J -model θ is a sentence of the form (χ1 ∧ . . . ∧ χm) such that every χi is a possible
closure wrt D0 that mentions at least one of the atoms in J , all atoms in J are mentioned
in θ, θ is consistent, and atoms in θ appear in lexicographic order. uunionsq
Note that since D0 is finite there are finitely many J -models. In the simple case of our
running example there are two J -models, namely:
θ1 : χ1 ∧ χ2 ∧ χ3 ∧ χ4 ∧ χ7 ∧ χ8 ∧ χ11 ∧ χ12 ∧ χ13;
θ2 : χ1 ∧ χ2 ∧ χ5 ∧ χ6 ∧ χ7 ∧ χ8 ∧ χ11 ∧ χ12 ∧ χ13.
Note that χ9 and χ10 that represent the location of box1 and item1 are not included in any
of the J -models as the corresponding atoms, that is, At(box1, w, S0) and At(item1, w, S0),
are not included in the context set J .
The disjunction φ of all the J -models is a PCA that corresponds to the “cross-product”
of the PCAs in D0 that hold information about ~τ . Essentially, φ corresponds to the part of
D0 that needs updating, and the intuition is that we can progressD0 by progressing each of
the J -models separately.
DEFINITION 14. Let J be the context set of (α, d) wrt an RR-BAT D, and θ a J -model
that is the closure of {F1(~c1, w, S0), . . . , Fn(~cn, w, S0)} on 〈V1, . . . , Vn〉. We define Γ
+
i
as the smallest set of constants e such that:
1. ~x = 〈~ci, e〉 ∧ χ is a disjunct of γ
+
Fi
(~x, α, S0);
2. {χ ∧ θ} ∪ E is consistent.
The set Γ−i is defined similarly based on γ
−
Fi
(~x, α, S0). The progression of θ wrt (α, d) is
the closure on the updated vector 〈V ′1 , . . . , V
′
n〉, where V
′
i is the set (Vi − Γ
−
i ) ∪ Γ
+
i . The
J -model θ is filtered iff {ΘA(~c, d, S0) ∧ θ} ∪ E is inconsistent, where α is A(~c). uunionsq
Each J -model θ is updated based on the possible answers of the instantiated formulas
γ∗Fi . For every disjunct of γ
∗
Fi expressed in PANS-NF, the atom w = e is either removed
or added to the closure of Fi(~ci, w, S0) provided that the condition χ for the change is
consistent with θ. Similarly, a J -model may be filtered out if it is not consistent with the
conditions that are implied by the sensing result d.
For example, consider θ1 and the atom At(item2, w, S0) from J . The corresponding
Γ+ and Γ− for this atom are both the empty set {} as item2 is inside box1 in model θ1,
and therefore its location remains intact. On the other hand, if one considers model θ2, the
corresponding Γ+ and Γ− for At(item2, w, S0) are {loc2} and {loc1}, respectively. Putting
it all together, the updated J -models θ′1 and θ
′
2 are as follows:
θ′1 : χ
′
1 ∧ χ2 ∧ χ3 ∧ χ4 ∧ χ7 ∧ χ8 ∧ χ
′
11 ∧ χ12 ∧ χ
′
13,
θ′2 : χ
′
1 ∧ χ2 ∧ χ5 ∧ χ6 ∧ χ7 ∧ χ8 ∧ χ
′
11 ∧ χ
′
12 ∧ χ13,
where χ′1, χ
′
11, χ
′
12, and χ
′
13 are the atomic closures of RobotAt(w, S0), At(box2, w, S0),
At(item2, w, S0), and At(gold, w, S0) on {loc2}, respectively.
Page 13
A Database-type Approach for Progressing Action Theories with Bounded Effects
We now state the main result of this section that illustrates how the new knowledge base
is constructed from D0.
THEOREM 15. Let D be an RR-BAT that is consistent and JIT wrt the ground action
α and sensing result d, J the context set of (α, d) wrt D, {θ1, . . . , θn} the set of all the
J -models that are not filtered, and {φ1, . . . , φm} the set of all PCAs inD0 that do not have
any atoms in common with any J -model. Let Dα be the following set:
{
n∨
i=1
θ′i, φ1, . . . , φm
}
,
where θ′i is the progression of θi wrt (α, d). Then, the set Dα(S0/ do(α, S0)) is a strong
progression of D wrt (α, d), where Dα(σ/σ′) denotes the result of replacing every occur-
rence of σ in every sentence in Dα by σ′.
In the absence of sensing, the proof idea is to show that assuming E , D0 is equivalent
to {
∨n
1 θi, φ1, . . . , φm}, and progressing D0 reduces to updating each of the sub-models
θi appropriately. For the case of sensing we only need to remove every θi that is not
consistent with the instantiated SRA. As far our running example is concerned, observe
that {θ′1 ∨ θ
′
2, χ9, χ10} is a strong progression of D wrt moveFwd.
We close by noting two important points. First, observe that the progression of D0 is
again a DBPC. On the other hand, the fact that D is JIT wrt some action α may not be
preserved in general after α or some other action is performed. This is because the JIT
assumption essentially requires that there is disjunctive or complete information in the KB
about the output w of all the fluent atoms of the form F (~c, w, S0) that are mentioned in the
instantiated γ∗(~x, α, S0) formulas, and these atoms may be different each time. Nonethe-
less, checking whether the JIT assumption holds may be performed by the same method
that computes the possible answers of formulas as we will see in the next section. More-
over, the JIT assumption may be enforced by an appropriate account of sensing so that
complete or disjunctive knowledge is acquired for these atoms. Please refer to Section 6
for a short discussion on this matter.
4.2 The case of conjunctive queries
Our method for progression is based on the ability to compute the possible answers to the
γ∗F and ΘA formulas wrtD0, as we have assumed that they are in PANS-NF. In order to give
some insight on the practicality of our method, we examine the case that these formulas are
similar to the conjunctive queries of database theory [Abiteboul, Hull, and Vianu 1994].
DEFINITION 16. A conjunctive query γ is a formula uniform in S0 of the form
∃~x(φ1 ∧ · · · ∧ φn),
where φi is a fluent atom with free variables not necessarily in ~x. uunionsq
Conjunctive queries offer an intuitive way of building safe-range formulas using the out-
put of an atom with a ground input as an input to another atom. For instance, note that
the context formula of γ+RobotAt in (1) is a conjunctive query, and observe that the out-
put of the fluent atoms RobotAt(z1, s) and RobotDir(z2, s) is used to specify the input
of Connected(z1, z2, x, s). Similarly, observe that the γ
+
At and γ
−
At formulas in (2) are built
on conjunctive queries of this sort.
Given a conjunctive query γ as input and a DBPC D0, PANS(γ,D0) that is described
in Algorithm 1 checks whether γ is range-restricted and JIT wrt D0, and if so, computes
We now state the main result of this section that illustrates how the new knowledge base
is constructed from D0.
THEOREM 15. Let D be an RR-BAT that is consistent and JIT wrt the ground action
α and sensing result d, J the context set of (α, d) wrt D, {θ1, . . . , θn} the set of all the
J -models that are not filtered, and {φ1, . . . , φm} the set of all PCAs inD0 that do not have
any atoms in common with any J -model. Let Dα be the following set:
{
n∨
i=1
θ′i, φ1, . . . , φm
}
,
where θ′i is the progression of θi wrt (α, d). Then, the set Dα(S0/ do(α, S0)) is a strong
progression of D wrt (α, d), where Dα(σ/σ′) denotes the result of replacing every occur-
rence of σ in every sentence in Dα by σ′.
In the absence of sensing, the proof idea is to show that assuming E , D0 is equivalent
to {
∨n
1 θi, φ1, . . . , φm}, and progressing D0 reduces to updating each of the sub-models
θi appropriately. For the case of sensing we only need to remove every θi that is not
consistent with the instantiated SRA. As far our running example is concerned, observe
that {θ′1 ∨ θ
′
2, χ9, χ10} is a strong progression of D wrt moveFwd.
We close by noting two important points. First, observe that the progression of D0 is
again a DBPC. On the other hand, the fact that D is JIT wrt some action α may not be
preserved in general after α or some other action is performed. This is because the JIT
assumption essentially requires that there is disjunctive or complete information in the KB
about the output w of all the fluent atoms of the form F (~c, w, S0) that are mentioned in the
instantiated γ∗(~x, α, S0) formulas, and these atoms may be different each time. Nonethe-
less, checking whether the JIT assumption holds may be performed by the same method
that computes the possible answers of formulas as we will see in the next section. More-
over, the JIT assumption may be enforced by an appropriate account of sensing so that
complete or disjunctive knowledge is acquired for these atoms. Please refer to Section 6
for a short discussion on this matter.
4.2 The case of conjunctive queries
Our method for progression is based on the ability to compute the possible answers to the
γ∗F and ΘA formulas wrtD0, as we have assumed that they are in PANS-NF. In order to give
some insight on the practicality of our method, we examine the case that these formulas are
similar to the conjunctive queries of database theory [Abiteboul, Hull, and Vianu 1994].
DEFINITION 16. A conjunctive query γ is a formula uniform in S0 of the form
∃~x(φ1 ∧ · · · ∧ φn),
where φi is a fluent atom with free variables not necessarily in ~x. uunionsq
Conjunctive queries offer an intuitive way of building safe-range formulas using the out-
put of an atom with a ground input as an input to another atom. For instance, note that
the context formula of γ+RobotAt in (1) is a conjunctive query, and observe that the out-
put of the fluent atoms RobotAt(z1, s) and RobotDir(z2, s) is used to specify the input
of Connected(z1, z2, x, s). Similarly, observe that the γ
+
At and γ
−
At formulas in (2) are built
on conjunctive queries of this sort.
Given a conjunctive query γ as input and a DBPC D0, PANS(γ,D0) that is described
in Algorithm 1 checks whether γ is range-restricted and JIT wrt D0, and if so, computes
Page 14
Stavros Vassos and Sebastian Sardina
Algorithm 1: PANS(γ,D0)
if γ is the empty conjunction then1
return {}; // query successfully processed2
Γ := {F (~c, t, S0) ∈ γ | F (~c, w, S0) is mentioned in D0};3
if Γ = ∅ then4
return failure; // no atom to continue5
X:= ∅; // initialize the set of possible answers6
τ := the first atom F (~c, t, S0) in Γ;7
γ′:= γ without the atom τ ;8
for possible closures χ of τ on V wrt D0, do9
if t is a constant then10
if t ∈ V then11
Y := PANS(γ′,D0); // recursive call, t constant12
if Y = failure then13
return failure14
Y ′:= {(ω, χ∧χ′) | (ω, χ′) ∈ Y , χ∧χ′ 6|= ⊥};15
X:= X ∪ Y ′; // merge the possible answers16
else17
for constants e ∈ V do18
Y := PANS(γ′|te,D0); // recursive call, t variable19
if Y = failure then20
return failure21
Y ′:= {(t = e ∧ ω, χ ∧ χ′) | (ω, χ′) ∈ Y , χ ∧ χ′ 6|= ⊥, t = e ∧ ω 6|= ⊥};22
X := X ∪ Y ′; // merge the possible answers23
return (the projection of X on the free variables of γ)24
the set pans(γ,D0). The algorithm works by i) selecting an atom for which a finite set of
possible answers is guaranteed (lines 3–8), ii) specifying the possible answers to this atom
and recursively finding those to the query without the selected atom (lines 9–14, 17–21),
and iii) merging the answers (lines 15–16, 22–23), until all atoms in γ have been selected.
The next theorem states the correctness of PANS.
THEOREM 17. Let D0 be a finite DBPC and γ a first-order conjunctive query uniform in
S0. Then, PANS(γ,D0) always terminates, and moreover if γ is range-restricted and JIT
wrt D0, it returns the set pans(γ,D0).
Algorithm PANS(γ,D0) can easily be extended to handle equalities as well as negated
atoms. The first case can be addressed via standard unification procedures. For negated
atoms the idea is that a ground literal of the form ¬F (~c, d, S0) such that F (~c, w, S0) is
mentioned in D0, may also be selected by the algorithm. Then, the algorithm works in the
same way as for the ground positive literal except that it iterates over the possible closures
of F (~c, w, S0) for which F (~c, d, S0) is not true. (Observe the similarities with negation as
failure of logic programming [Apt and Pellegrini 1994].)
We now turn our attention to the complexity of PANS(γ,D0) and progression. First
note that when γ is a range-restricted conjunctive query that is also JIT wrt D0, the size of
pans(γ,D0) is O(Nn), where n is the size of γ and N is the size of D0. This is because
Algorithm 1: PANS(γ,D0)
if γ is the empty conjunction then1
return {}; // query successfully processed2
Γ := {F (~c, t, S0) ∈ γ | F (~c, w, S0) is mentioned in D0};3
if Γ = ∅ then4
return failure; // no atom to continue5
X:= ∅; // initialize the set of possible answers6
τ := the first atom F (~c, t, S0) in Γ;7
γ′:= γ without the atom τ ;8
for possible closures χ of τ on V wrt D0, do9
if t is a constant then10
if t ∈ V then11
Y := PANS(γ′,D0); // recursive call, t constant12
if Y = failure then13
return failure14
Y ′:= {(ω, χ∧χ′) | (ω, χ′) ∈ Y , χ∧χ′ 6|= ⊥};15
X:= X ∪ Y ′; // merge the possible answers16
else17
for constants e ∈ V do18
Y := PANS(γ′|te,D0); // recursive call, t variable19
if Y = failure then20
return failure21
Y ′:= {(t = e ∧ ω, χ ∧ χ′) | (ω, χ′) ∈ Y , χ ∧ χ′ 6|= ⊥, t = e ∧ ω 6|= ⊥};22
X := X ∪ Y ′; // merge the possible answers23
return (the projection of X on the free variables of γ)24
the set pans(γ,D0). The algorithm works by i) selecting an atom for which a finite set of
possible answers is guaranteed (lines 3–8), ii) specifying the possible answers to this atom
and recursively finding those to the query without the selected atom (lines 9–14, 17–21),
and iii) merging the answers (lines 15–16, 22–23), until all atoms in γ have been selected.
The next theorem states the correctness of PANS.
THEOREM 17. Let D0 be a finite DBPC and γ a first-order conjunctive query uniform in
S0. Then, PANS(γ,D0) always terminates, and moreover if γ is range-restricted and JIT
wrt D0, it returns the set pans(γ,D0).
Algorithm PANS(γ,D0) can easily be extended to handle equalities as well as negated
atoms. The first case can be addressed via standard unification procedures. For negated
atoms the idea is that a ground literal of the form ¬F (~c, d, S0) such that F (~c, w, S0) is
mentioned in D0, may also be selected by the algorithm. Then, the algorithm works in the
same way as for the ground positive literal except that it iterates over the possible closures
of F (~c, w, S0) for which F (~c, d, S0) is not true. (Observe the similarities with negation as
failure of logic programming [Apt and Pellegrini 1994].)
We now turn our attention to the complexity of PANS(γ,D0) and progression. First
note that when γ is a range-restricted conjunctive query that is also JIT wrt D0, the size of
pans(γ,D0) is O(Nn), where n is the size of γ and N is the size of D0. This is because
Page 15
A Database-type Approach for Progressing Action Theories with Bounded Effects
the assumptions for γ and Theorem 8 ensure that in the worst case for each atom τ in γ,
the set pans(τ,D0) corresponds to the information in the entire D0.
THEOREM 18. Let γ be a range-restricted conjunctive query and D0 a finite DBPC. Let
n be the number of atoms in γ, k the number of distinct atoms with a ground input inD0,m
the maximum number of disjunct in a PCA in D0, and l the maximum number of constants
in an atomic closure in D0. Then PANS(γ,D0) runs in time O((k · l + n2) · (m · l)n).
Even though the complexity is exponential on the size n of γ, our progression method
evaluates the formulas γ∗F and ΘA from Dss and Dsr, whose sizes do not grow. In fact, it is
safe to assume that the sizes of these formulas are bounded by a small integer N , in which
case the complexity of PANS(γ,D0) is a polynomial with degree N .
Assuming then that all the relevant formulas for progressing D0 wrt α are in PANS-NF
by the use of PANS(γ,D0), the complexity of our method is dominated by the process of
specifying all the J -models, where J is the context set of α. In the worst case, the size of
J is k, which essentially means that with the execution of α all the atoms in D0 become
mutually constrained, and thus need to appear in the same PCA.
Nonetheless, we expect the size of J to be manageable in practice, as the robotic or
agent domains we have in mind are quite different from logical puzzles of this sort. In
particular, we expect that the amount of disjunctive knowledge that is represented in D0
always comes in (many) small “packages.” Under these plausible assumptions, it follows
that m is always bounded by some small constant M , in which case, the running time of
our progression method and the size of Dα are both polynomial to the size of D0 with a
degree that depends on the actual values of N,M .
These assumptions are relatively strong and certainly do not apply to all applications
we have in mind, but we believe that they are safe for many “organic” scenarios where the
theory D is used to represent the effects of a domain that is similar to the physical world.
Furthermore, as far as the assumptions on the incomplete information are concerned, we
believe that they can be enforced with an appropriate account of sensing.
5 Related work
The notion of progression for basic action theories was first introduced by Lin and Reiter
[1997]. The version we use here is due to Vassos et al. [2008], which we extended slightly
to account for sensing. As far as a first-order definable progression is concerned, Lin and
Reiter [1997] were first to investigate restrictions on the successor state axioms as they
introduced a context-free assumption for actions.
Liu and Levesque [2005] introduced the local-effect assumption for actions when they
proposed a weaker version of progression that is logically incomplete, but remains practi-
cal. Vassos et al. [2008] showed that, under this assumption, a logically correct first-order
progression can actually be computed by updating a finite D0. Our restriction of Defini-
tion 10 is similar, but goes beyond local-effect. The key difference is that we do not require
the arguments of a fluent F be included in those of the action. This allows us to handle
actions like turn and moveFwd (with no arguments) affecting fluents like RobotDir(x, s)
and RobotAt(x, s). To stay practical, though, we restricted the structure of D0. It is im-
portant to point out that it is not always possible to revert to a ground action of the form
move(x, y, z) as, for instance, the starting x or destination y may be unknown to the agent.
In [Liu and Lakemeyer 2009], the authors first showed how the result of Vassos et al.
[2008] on local-effect progression relates to the notion of forgetting, and examined the more
the assumptions for γ and Theorem 8 ensure that in the worst case for each atom τ in γ,
the set pans(τ,D0) corresponds to the information in the entire D0.
THEOREM 18. Let γ be a range-restricted conjunctive query and D0 a finite DBPC. Let
n be the number of atoms in γ, k the number of distinct atoms with a ground input inD0,m
the maximum number of disjunct in a PCA in D0, and l the maximum number of constants
in an atomic closure in D0. Then PANS(γ,D0) runs in time O((k · l + n2) · (m · l)n).
Even though the complexity is exponential on the size n of γ, our progression method
evaluates the formulas γ∗F and ΘA from Dss and Dsr, whose sizes do not grow. In fact, it is
safe to assume that the sizes of these formulas are bounded by a small integer N , in which
case the complexity of PANS(γ,D0) is a polynomial with degree N .
Assuming then that all the relevant formulas for progressing D0 wrt α are in PANS-NF
by the use of PANS(γ,D0), the complexity of our method is dominated by the process of
specifying all the J -models, where J is the context set of α. In the worst case, the size of
J is k, which essentially means that with the execution of α all the atoms in D0 become
mutually constrained, and thus need to appear in the same PCA.
Nonetheless, we expect the size of J to be manageable in practice, as the robotic or
agent domains we have in mind are quite different from logical puzzles of this sort. In
particular, we expect that the amount of disjunctive knowledge that is represented in D0
always comes in (many) small “packages.” Under these plausible assumptions, it follows
that m is always bounded by some small constant M , in which case, the running time of
our progression method and the size of Dα are both polynomial to the size of D0 with a
degree that depends on the actual values of N,M .
These assumptions are relatively strong and certainly do not apply to all applications
we have in mind, but we believe that they are safe for many “organic” scenarios where the
theory D is used to represent the effects of a domain that is similar to the physical world.
Furthermore, as far as the assumptions on the incomplete information are concerned, we
believe that they can be enforced with an appropriate account of sensing.
5 Related work
The notion of progression for basic action theories was first introduced by Lin and Reiter
[1997]. The version we use here is due to Vassos et al. [2008], which we extended slightly
to account for sensing. As far as a first-order definable progression is concerned, Lin and
Reiter [1997] were first to investigate restrictions on the successor state axioms as they
introduced a context-free assumption for actions.
Liu and Levesque [2005] introduced the local-effect assumption for actions when they
proposed a weaker version of progression that is logically incomplete, but remains practi-
cal. Vassos et al. [2008] showed that, under this assumption, a logically correct first-order
progression can actually be computed by updating a finite D0. Our restriction of Defini-
tion 10 is similar, but goes beyond local-effect. The key difference is that we do not require
the arguments of a fluent F be included in those of the action. This allows us to handle
actions like turn and moveFwd (with no arguments) affecting fluents like RobotDir(x, s)
and RobotAt(x, s). To stay practical, though, we restricted the structure of D0. It is im-
portant to point out that it is not always possible to revert to a ground action of the form
move(x, y, z) as, for instance, the starting x or destination y may be unknown to the agent.
In [Liu and Lakemeyer 2009], the authors first showed how the result of Vassos et al.
[2008] on local-effect progression relates to the notion of forgetting, and examined the more
Page 16
Page 17
Page 18
Page 19
Page 20
Loading ...
Resources
-
312.02 KB · Uploaded Jan 26, 2012 by Stavros Vassos

