- From: Natasha Noy <noy@SMI.Stanford.EDU>
- Date: Sun, 24 Oct 2004 09:15:54 -0700
- To: Christopher Welty <welty@us.ibm.com>
- Cc: Alan Rector <rector@cs.man.ac.uk>, ewallace@cme.nist.gov, swbp <public-swbp-wg@w3.org>
Never mind -- my answer from Friday evening doesn't work at all (nothing like a weekend to clear your mind :) While I can fix that expression to work correctly, indeed I guess it won't be FOL anyway since you have to quantify over a predicate? And indeed, I think there is no way to say that without such quantification in FOL, let alone OWL. Sorry -- my mistake! And it's perhaps a point worth making in a note if we go into explaining why the things work the way they do in OWL -- which is what started this discussion. Just for the record, if you do quantify over predicates, the following, finally, should work (I think... but I may be wrong again..) (forall ?A (=> (and (C x) (?A x)) (forall ?y (=> (?A ?y) (C ?y))) Natasha On Oct 22, 2004, at 5:34 PM, Natasha Noy wrote: > > Yes, you are right -- sorry. But still you can define direct-instance > ?x of ?C in FOL as iff > > (forall ?A (=> (and (?C ?x) (?A ?x)) > (= ?C ?A))) > > Is this wrong again? > > Of course this, by itself, has little to do with assymetry of domains > and ranges in OWL and I no longer remember how this came about :) > > Natasha > > On Oct 22, 2004, at 4:11 PM, Christopher Welty wrote: > >> >> OK, in my world A subclassOf B has an FOL interpretation of (=> (A >> ?x) (B ?x)) and o instance-of A has an FOL interpretation of (A o). >> You've invented a new logic on top of FOL, in which the elements of >> the language (i.e. subclass, instance-of) are FOL predicates. I was >> talking about FOL. >> >> -Chris >> >> Dr. Christopher A. Welty, Knowledge Structures Group >> IBM Watson Research Center, 19 Skyline Dr., Hawthorne, NY 10532 >> USA >> Voice: +1 914.784.7055, IBM T/L: 863.7055, Fax: +1 914.784.7455 >> Email: welty@watson.ibm.com, Web: >> http://www.research.ibm.com/people/w/welty/ >> >> public-swbp-wg-request@w3.org wrote on 10/22/2004 06:11:48 PM: >> >> > >> > > Well, OKBC was intended to be an API, in my understanding, so it >> may >> > > very well have capabilities that are beyond FOL, as OO languages >> do. >> > >> > but there is an axiomatization for it in FOL in the specs, AFAIK >> > >> > > >> > > Regarding the axiomatization, why don't you try writing FOL >> axioms >> > > that capture this. I don't understand how what you have said >> can be >> > > written in FOL. >> > >> > (=> (direct-type ?C ?x) >> > (not (exists ?Y (and (subclass-of ?Y ?C) (instance-of ?X >> ?Y)))) >> > >> > (modulo the correct order of arguments for the predicates) >> > >> > > Then, much more to the point, try it in OWL. >> > >> > Ah, that's a whole other story :) But you were generalizing to FOL. >> > >> > Natasha >> > >> > > >
Received on Monday, 25 October 2004 06:55:41 UTC