- From: Ian Horrocks <horrocks@cs.man.ac.uk>
- Date: Mon, 30 Sep 2002 15:11:18 +0100
- To: pat hayes <phayes@ai.uwf.edu>
- Cc: www-webont-wg@w3.org
On September 27, pat hayes writes: > > >Pat, > > > >Now we seem to have a come to a better understanding about the > >correspondence between FOL and OWL, could you re-answer the following > >question. > > > >Thanks, > > > >Ian > > > >>Pat, > >> > >>DAML+OIL, and I hope OWL, can be viewed a fragment of FOL, with atomic > >>classes and properties corresponding to unary and binary predicates > >>respectively. According to this correspondence, subClassOf axioms > >>become implications, e.g., A subClassOf B corresponds to: > >> > >>forall x . A(x) -> B(x) > >> > >>Similarly, a property range axiom P range A corresponds to: > >> > >>forall x,y P(x,y) -> A(y). > >> > >>What could be simpler and clearer than that? > >> > >>The combination of these two sentences entails > >>forall x,y P(x,y) -> B(y). > >> > >>What could be simpler and clearer than that? > > > > > >If you want some alternative semantics, could you please explain in > > >similar terms what it is? > > Sure. I agree this is clear and simple, and I think everyone agrees > that something very close to this is what we all want. The issue has > always been only whether those conditions are necessary, or necessary > and sufficient. We all want the following to be true: > > 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. One point that is worth making though is that there are a number of similar statements that can be made about OWL properties, and that it may make sense to give them a uniform semantics, i.e., all treated as implication or all treated as bi-implication. E.g., we also have: Domain(P,C) implies/iff (forall x,y P(x,y) -> C(x)) TransitiveProperty(P) implies/iff (forall x,y,z (P(x,y) ^ P(y,z)) -> P(x,z)) SymmetricProperty(P) implies/iff (forall x,y P(x,y) -> P(y,x)) FunctionalProperty(P) implies/iff (forall x,y,z (P(x,y) ^ P(x,z)) -> y=z) InverseFunctionalProperty(P) implies/iff (forall x,y,z (P(y,x) ^ P(z,x)) -> y=z) inverseOf(P,Q) implies/iff (forall x,y P(x,y) -> Q(y,x)) We already had the discussion w.r.t. transitive (or was it functional). I argued for implies semantics, but the general view seemed to be that iff semantics should hold (and by extension that it should hold for all the above statements). Ian > > The potential utility of the former is that it allows ranges to have > properties. Suppose we wanted to say something about ranges (perhaps > ranges from a particular class of ranges), expressed by a predicate > Q: Range(P, x) -> Q(x), say. (It is SUCH a relief to be able to > write logic!) With the second, stronger condition, this would entail > that Q was preserved under implication, ie > (forall x (P(x) -> R(x)) -> (Q(P) -> Q(R)) > which is a very strong condition for Q to have to satisfy for no good > reason; in fact, it is so strong that it would make this practically > useless, since hardly any useful properties satisfy this kind of > condition (it is restricted to properties like having more than a > certain number of instances, things like that.) > > I hope this helps to make the point clearer. > > Pat > > -- > --------------------------------------------------------------------- > IHMC (850)434 8903 home > 40 South Alcaniz St. (850)202 4416 office > Pensacola (850)202 4440 fax > FL 32501 (850)291 0667 cell > phayes@ai.uwf.edu http://www.coginst.uwf.edu/~phayes
Received on Monday, 30 September 2002 10:03:14 UTC