# Re: Expressiveness question

From: pat hayes <phayes@ihmc.us>
Date: Tue, 20 Jan 2004 18:09:47 -0600
Message-Id: <p06001f36bc336cc53835@[10.0.100.76]>

```
Hi Sheila

>.....we are asking whether  we can axiomatize a situation
>calculus [2] domain theory in SWRL.

In a word, no.  On the other hand, if were were to go into a bit more
detail, maybe you could get something done in SWRL that would do a
lot of what you want to do.
.....
>To this end, the following is an example of an axiom we would like
>to encode:
>
>Forall x. Forall s.
>   holding(x,do(a,s)) iff
>     [(a=pickup(x)) V (holding(x,s) & (a neq putdown(x))]

The real killer here is the iff with a disjunction on one side of it.
If we pick this apart, some of it fits into SWRL with a bit of work
(never mind the foralls):

(a=pickup(x)) OR (holding(x,s) AND (a neq putdown(x) )  IMPLIES
holding(x, do(a,s))

splits into two Horn clauses

(a=pickup(x))  IMPLIES holding(x, do(a,s))

(holding(x,s) AND (a neq putdown(x) )  IMPLIES holding(x, do(a,s))

both of which can be got into SWRL with a bit of tweaking. (The
equations and embedded terms would need to be made into relations.)
The other way round, however, gives a non-Horn case:

holding(x, do(a,s)) IMPLIES (a neq putdown(x) )

is OK, but

holding(x, do(a,s)) IMPLIES ((a=pickup(x)) OR (holding(x,s) )

isn't, and isn't ever likely to be stateable in any rule language.

Now, my instinct at this point is to ask you whether you really,
really must have the full 'iff' here, or whether there might be a way
in which you could live with some weaker way of using the effect of
the back-implication. It is needed for the frame-problem-solving
stuff which Ray's technique uses, but maybe you can instead treat
that as an external constraint on an action application.  I have to
say, personally I have never believed that genuine iff laws are
really practical for realistic examples of action descriptions in any
case: and there are other, alternative ways of handling the
frame-style reasoning, even the use of circumscription-style
reasoning if really necessary. Or, in the cases where you really
require this kind of reasoning so as to use a GOLOG engine, maybe,
you could code up suitable categories so as to avoid the explicit
disjunctions, and connect them to the existing concepts by DL
reasoning expressed in OWL (?? The only way to tell would be to see
some more realistic examples of the kind of problems you are
tackling.)

Well, anyway, if you want an off-the-shelf answer, it has to be
negative.  But we can give you about 75% of what you want, it seems.
Maybe that will get you somewhere (?)

Pat

--
---------------------------------------------------------------------
IHMC	(850)434 8903 or (650)494 3973   home
40 South Alcaniz St.	(850)202 4416   office
Pensacola			(850)202 4440   fax
FL 32501			(850)291 0667    cell
phayes@ihmc.us       http://www.ihmc.us/users/phayes
```
Received on Tuesday, 20 January 2004 19:18:53 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:53:11 GMT