RE: Possible semantic bugs concerning domain and range

Pat:
> Range(P, A) -> (forall x,y P(x,y) -> A(y) )
>
> You want
>
> Range(P,A) <-> (forall x,y P(x,y) -> A(y) )
>

Ian:
> 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).


My recollection was that:
- no decision was made
- Jos and me rather agreed with the sentiments you express here. vis
    + Either can be made to work;
    + they probably should all be iff or all be implies;
    + a decision is needed

agnostically yours

Jeremy

Received on Monday, 30 September 2002 14:02:27 UTC