Re: daml:SymmetricProperty?

From: Ian Horrocks (
Date: 03/01/01

On March 1, Jim Hendler writes:
> >  Might also be worth
> >  > considering whether there are other levels of this (transitive
> >  > closure, for example) that we might want to consider -
> >  >   i.e.
> >  >    Driveable(X Y) is the transitive closure of Landborder(X Z)
> >
> >Transitive closure would also be a real extension to the expressive
> >power of the language. Although the extension wouldn't change the
> >complexity class of the language, there is good evidence to suggest
> >that empirical tractability would be seriously damaged by adding
> >transitive closure.
> >
> >Ian
> unless one happens to have developed the world's fastest transitive 
> closure inferencing -- see the papers on PARKA-DB(TM; patent pending) 
> :->
> Seriously, we need to be careful that we don't throw out important 
> functionality and expressivity that could be of use to tool 
> designers, because of the logical issues -- in many cases people 
> pre-compute a lot of the transitive relationships (like ISA) so they 
> can get better performance -- even if the logic engine doesn't take 
> this into account, it can be very important for performance of more 
> "ad hoc" systems -- I worry often as to whether we are letting the 
> logical purity of DAML+OIL get in the way of things programmers want 
> - so far we've hit pretty good workable solutions -- I am now 
> looking, however, for what the joint committee does after the current 
> language moves into some sort of stabilization process (W3C or 
> otherwise), and that's going to almost necessarily take us into 
> something either more expressive, more "useable", more complex, etc.
>   so my earlier message was just to get us thinking of the next level 
> up, not meant to be something added to current langauge as is. 
> (another layer of the layercake - what fun!)
>   -JH

In this case I wasn't arguing for logical purity but for "bangs per
buck". The combination of transitive properties and subproperties
gives you almost all of the power of transitive closure and is very
much easier to implement (to the best of my knowledge there
is no known algorithm for reasoning directly with transitive closure
combined with the language that we have already). We can still express
e.g., that ancestor is a transitive superproperty of parent, which
in my experience covers most of what you what you want/need to say.


This archive was generated by hypermail 2.1.4 : 04/02/02 EST