Re: A Problem With The Semantics of DAML+OIL Restrictions

On July 3, Richard Fikes writes:
> > This "problem" was discussed at length when we were designing the
> > language (if I did around in the mail archive I can find some examples
> > similar to the one you provide above). Like it or not, this is what
> > you get when you use rdf, as it provides no way to specify structural
> > constraints on the kinds of thing you can write (you can "say anything
> > about anything").
> > 
> > Having said that, and although the above style of multiple constraints
> > are probably best avoided (in the interests of human
> > read/understandability at least), they present no inherent
> > difficulties and are comparable to stating the equivalence of two
> > simple restrictions - I could say much the same thing as your
> > Sam-Jones example with something like:
> > 
> >    (Type R Restriction)
> >    (onProperty R parent)
> >    (toClass R person)
> > 
> >    (Type R2 Restriction)
> >    (onProperty R2 parent)
> >    (hasValue R2 Sam-Jones)
> > 
> >    (sameClassAs R R2)
> > 
> > Of course, as in your example, we can now infer that the set of
> > objects who have Sam-Jones as a parent is the same as the set of
> > objects all of whose parents are persons. This may not be a very
> > sensible thing to say, but you can say crazy things in any tolerably
> > expressive language.
> > 
> > The (model theoretic) semantics are clear about the meaning of
> > restrictions (whether multiple or single), and they shouldn't present
> > any problems for a reasoner (beyond those that are already there due
> > to the ability to state arbitrary equivalences).
> > 
> > We deliberately chose to avoid the "solution" of using the language
> > (DAML+OIL) to constrain itself (e.g., by setting cardinality
> > constraints on toClass etc) as we did not want to try providing a
> > semantics for this kind of usage.
> 
> Unfortunately, I don't find your reply convincing.  Specifically, I
> don't see how the RDF translation of a restriction tells us what the
> sufficient conditions are for membership in the class specified by the
> restriction.  At the risk of being repetitive, what can we conclude from
> the following RDF statements in a file?
> 
>    (Type R Restriction)
>    (onProperty R parent)
>    (toClass R person)

We can conclude that our models of the world are restricted to those
in which the interpretation of R is equal to those set of objects all
of whose parents are persons.

> We can certainly conclude that the parents of all objects that are type
> R are persons.  However, how can we legitimately conclude that an object
> all of those parents are persons is type R when the very next RDF
> statement in the file may be "(hasValue R Joe)"?

We couldn't simply conclude that an object x, all of those parents are
persons in SOME model, is of type R. In order to conclude that, we
must be able to prove that there can be NO models in which x has a
parent that is not a person, e.g., if we know (parent x y), (Type y
person) and that x is in instance of a restriction stating that it can
have at most one parent.

> Those four statements
> together mean that in order to be type R an object has to have Joe as a
> parent and all of its parents must be persons.

As I said, it isn't sufficient that x have only persons as parents, we
must be able to prove that it can never have a non-person parent. If
we add the "hasValue Joe" axiom, then we can also conclude that our
models of the world are restricted to those in which the
interpretation of R is equal to those set of objects that have Joe as
a parent. Thus if we had been able to conclude that x is an instance
of R, then we can additionally conclude that x has Joe as a parent. We
can also conclude that any object having Joe as a parent has only
persons as parents.

> Thus, the first three
> RDF statements give us a different set of sufficient conditions then do
> the four RDF statements.

DAML+OIL (like most modern logical KR formalisms) supports arbitrary
axioms, so there is no notion of a single set of sufficient
conditions: e.g., we can have any number of axioms stating equivalence
between R and other classes. As I pointed out in my earlier email, the
particular structure of the RDF serialisation makes no difference in
this regard - you can always add new equivalence axioms w.r.t. R or any
other class. The conclusions that can be drawn at any particular
moment obviously depend on the facts available at that
moment. However, the logic is monotonic, in the sense that once we
have concluded that x is an instance of R, we can never add facts that
would allow us to conclude that x is no longer an instance of R
(although we could of course make our whole set of facts inconsistent).

> The problem is that if there is no way of
> indicating that the definition of a non-primitive class is closed
> ("That's all, folks"), then there is no way for that definition to
> provide a set of sufficient conditions for membership in the class.

As I said above, we can only reason w.r.t. the facts we have at our
disposal at a particular instant. If we add more facts, we may be able
to make additional inferences. Moreover, a given class can have many
"sets of sufficient conditions for membership". An individual PROVABLY
satisfying any one of these will be recognised as a member of the
class, e.g., the example of x given above. Note that in this case we
required facts in the KB that allowed us to infer that y was the only
parent of x - adding such facts could be thought of as "closing the
role" w.r.t. x.

> The
> other constructs in DAML+OIL for defining non-primitive classes (i.e.,
> intersectionOf, unionOf, complementOf) have that closure property
> because they are unique properties taking either a list as the value or
> a single class (in the case of complementOf).  The restrictions are
> open-ended and therefore don't work as specifiers of sufficient
> conditions.

I don't understand this statement. The situation is exactly the same
for these kinds of definition. E.g., there is nothing to stop me
asserting that a class C as being exactly equal to the conjunction of
classes A and B, then subsequently asserting that C is exactly equal
to the disjunction of F and G.

> By the way, I think the model theoretic semantics suffers from the same
> problem as the axiomatic semantics in this matter.  That is, both of
> them seem to treat each constraint in a restriction as sufficient
> conditions for membership in the class.  The constraints need to be
> combined when there is more than one of them in a restriction.

The model theoretic semantics treat each axiom (restriction or
otherwise) as a constraint on the set of possible models. Adding
axioms further constrains this set. If the possible models are
constrained in such a way that the interpretation of classes C1,...,Cn
must be the same in all models, then membership of any one of these
classes is a sufficient condition for membership of all the others.

I hope that clears things up.

Ian

> 
> Richard

Received on Tuesday, 3 July 2001 15:09:43 UTC