W3C home > Mailing lists > Public > www-webont-wg@w3.org > October 2002

Re: Possible semantic bugs concerning domain and range

From: Ian Horrocks <horrocks@cs.man.ac.uk>
Date: Wed, 16 Oct 2002 19:00:29 +0100
Message-ID: <15789.43325.76923.116570@galahad.cs.man.ac.uk>
To: Dan Connolly <connolly@w3.org>
Cc: Jos De_Roo <jos.deroo.jd@belgium.agfa.com>, Pat Hayes <phayes@ai.uwf.edu>, www-webont-wg@w3.org

On October 16, Dan Connolly writes:
> 
> On Tue, 2002-10-15 at 16:47, Jos De_Roo wrote:
> > 
> > >> >>  Range(P, A) -> (forall x,y P(x,y) -> A(y) )
> > >> >>
> > >> >>  You want
> > >> >>
> > >> >>  Range(P,A) <-> (forall x,y P(x,y) -> A(y) )
> > >> >>
> > >> >>  They are about equally clear and intuitive; but the latter rules out
> > >> >>  some possibilities which the former permits. I believe that all the
> > >> >>  'intuitive' entailments that people want in fact hold in both these
> > >> >>  cases; and that the former is therefore to be preferred.
> > >> >
> > >> >I am agnostic about which of these is to be preferred - as a humble
> > >> >engineer, all I need to know is which one it is so that I have a clear
> > >> >spec to which I can build my systems.
> > >
> > >I'm kinda agnostic too... I was leaning toward the IF, rather
> > >than the IFF...
> > 
> > I'm not agnostic at all...
> > i.e. I can't see how to write
> >   (forall x,y P(x,y) -> A(y)) -> Range(P,A)
> > in Horn-clauses or in Datalog
> > (although I like nested implications
> > in propositional proof arguments)
> 
> Oohh; that's quite compelling... currently, you can
> implement a complete RDFS reasoner with a
> horn/datalog reasoner. If we changed range to IFF,
> it's not clear that this property would hold.
> 
> Likewise for subClassOf.

If you use a direct encoding such as the one Benjamin and I have been
suggesting (i.e., classes as unary predicates, properties as binary
predicates), then you can check if subClassOf(C,D) holds simply by
inventing a new individual i and checking if C(i) -> D(i) holds.

Similarly for Range(P,A), you can invent two new individuals i1 and i2
and check if P(i1,i2) -> A(i2) holds.

Ian

> 
> -- 
> Dan Connolly, W3C http://www.w3.org/People/Connolly/
> 
> 
Received on Wednesday, 16 October 2002 13:59:06 GMT

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