Re: Expressiveness question

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 UTC