Information Technology Reference
In-Depth Information
8x [
( x ) :
( x ) ], for instance, denes
as not being
. Clearly,
down
up
down
up
whenever an instance of
( x )
is supposed to change accordingly|and vice versa. This brings about simi-
lar situations as in our spring scenario, so that their correct treatment, too,
relies on the distinction between triggering eect and context. In passing, let
us mention that denitional state constraints contribute to another special
problem, which will be discussed in detail in Section 2.7.
Much like with action laws, it might be convenient to use variables in
causal relationships in order to summarize a whole collection of similar ground
instances. E.g., suppose all switches of an electric circuit and a light bulb are
serially connected, then
( x ) is changed the respective instance of
up
down
up ( x ) causes
if 8y: up ( y )
light
states that having switched up any switch x causes light provided all switches
are (now) in the upper position. With this we arrive at the following formal
denition of causal relationships and their application to state-eect pairs.
Denition 2.4.1. Let E and F be sets of entities and fluent names, re-
spectively. A causal relationship is of the form
" causes % if
where (the context ) is a fluent formula and both " (the triggering eect )
and % (the ramication ) are fluent expressions. 8
Let ( S; E ) be a pair consisting of a state S and a set of fluent liter-
als E. Furthermore, let r = " causes % if be a causal relationship, and
let x denote a sequence of all free variables occurring in ", %,or . Then a
ground instance r [ e ] is applicable to ( S; E ) i " [ e ] 2 E and [ e ] ^:% [ e ] is
true in S. The application of r [ e ] to ( S; E ) yields the pair ( S 0 ;E 0 ) where
S 0 =( S nf:% [ e ] g ) [f% [ e ] g and E 0 =( E nf:% [ e ] g ) [f% [ e ] g.If R is a set of
causal relationships, then by ( S; E ) ; R ( S 0 ;E 0 ) we denote the existence of
a relationship in R whose application to ( S; E ) yields ( S 0 ;E 0 ) .
To summarize, a causal relationship " causes % if is applicable if con-
text holds, the indirect eect-to-be % is currently false, and if its cause "
is among the current eects. A relationship is applied by changing :% to %
in the current state and adding % to the current eects. In order that the
latter does not produce an inconsistency among the eects, a possibly pre-
ceding eect :% is withdrawn. 9 This precaution guarantees that whenever
( S; E ) ; R ( S 0 ;E 0 ) with S being a state and E being consistent, then
S 0
is a state and E 0
is consistent, too.
8
Recall that fluent expressions are of the form ( : ) f ( t 1 ;:::;t n ) with f being a
fluent name and t i a variable or entity.
9
It may sound strange to presuppose the occurrence of such situations instead
of disregarding them, or even excluding them for that matter. Yet later, in
the following but one section, we will meet an example scenario where this
withdrawing a previously obtained indirect eect is necessary and perfectly
reasonable.
Search WWH ::




Custom Search