Is subclassing "strict order" or is it reflexive? RE: [sc34wg3] New SAM PSIs

Murray Altheim sc34wg3@isotopicmaps.org
Fri, 14 Feb 2003 14:45:35 +0000


Bernard Vatant wrote:
 > Does Murray need a little help from the maths'teacher? :))

Much appreciated. I hope you can bear with me. I'll necessarily
repeat myself in hopes of being clear (which sometimes has the
opposite effect I know).

 > Well, what is the type of class-subclass relation?

Before we begin, I'd like to clarify the conversation. I note that
the XTM 1.0 Specification calls this a superclass-subclass relationship,
whereas the SAM calls it supertype-subtype. I will assume "class" and
"type" are synonyms for the purpose of this discussion.

In what domain are we talking (which is the real issue here, IMO)?
Are we talking strictly set theory, or are we talking taxonomy? How
are these different? (I.e., are the relationships between type labels
in set theory the same as the inter-class relationships in
taxonomies? How are these different? I'll try to demonstrate...).

On the one hand, and the error I think OWL is making, is that it
seems to be talking about *members* of sets. So, if we have a set A
and a set B whose members are all the same, they are identical sets.
Eg., if we have 100 hominids and 100 primates, and they are the same
100 individuals, we can consider the two sets identical. We cannot,
and I repeat, cannot, necessarily therefore consider the classes of
primates and hominids as identical. They are not.

A type hierarchy or taxonomy is strictly talking about the
relationships between types or classes, not their instances. This is
the point about extension and intension that Lars Marius brought
up.

This may be interpreted one of two ways. First, as a relationship
between sets of individuals, secondly as essentially an argument
about differences in labels, saying, for example, that "primate"
in English and "primas" in German refer to the same class, or that
two different labels for a specific star refer to the same star;
we're not actually talking about a *difference* in classes, merely
their labels, that within one context or domain a difference in
label is not a difference in actual class, i.e., it does not
constitute a different class but merely a different label for the
same class.

So, if further down the line we learn more information, allowing
us to determine that A and B refer to the same set, A and B are
merely alternate labels or designations for the same set, not
different classes.

 > -- An "order" relation, noted <= herafter, with the three following
 > properties ...
 >
 > 1. Transitivity: IF (a <= b) and (b <= c) THEN (a <= c)
 > 2. Reflexivity: (For all x) (x <= x)
 > 3. Antisymmetry: IF (a <= b) and (b <= a) THEN (a = b)
 >
 > -- Or a "strict order" relation, noted < hereafter, with the following
 > properties ...
 >
 > 1. Transitivity: IF (a < b) and (b < c) THEN (a < c)
 > 2. (For all x) (x < x) is false
 > 3. IF (a < b), THEN (b < a) is false
 >
 > Note that a "strict order" relation is *not* an "order" relation - speak
 > about consistency in maths vocabulary :(

I don't think this is about ordering at all.

But if I'm correct and we're talking taxonomies here and not members
of sets, which also seems to be the more demanded relationship type
for web-based ontologies (I don't think we want to consider such
things as trucks<=vehicles or primates>=hominids in terms of sets but
rather their taxonomic class relations), then all this talk of
transitivity and reflexivity seems misplaced.

IOW, if I hear the word "class" or "type" we're not talking members
of sets (or "instances of classes"), we're talking the relationship
between classes.

 > I understand, Murray, you consider class-subclass relation as a "strict
 > order", and do not understand how it can be considered an "order".

The transitivity of set membership is different than the relations
between their types or classes. I searched across my available books
and found the closest I could to what I believe you're talking about
-- let's make sure we agree on some basic terms (here's an excerpt
we can perhaps use as a baseline):

   "The type hierarchy is a partial ordering defined over the set
    of type labels. The symbol ≤ designates the ordering. Let s, t,
    and u be type labels:

    * If s<=t, then s is called a subtype of t; and t is called a
      supertype of s, written t>=s.
    * If s<=t and s!=t, then s is called a proper subtype of t, written
      s<t; and t is called a proper supertype of s, written t>s.
    * If s is a subtype of t and a subtype of u (s<=t and s<=u), then
      s is called a common subtype of t and u.
    * If s is a supertype of t and a supertype of u (s>=t and s>=u),
      then s is called a common supertype of t and u.

    In AI, the type hierarchy supports the inheritance of properties
    from supertypes to subtypes of concepts."

What I hear you saying is that the first bullet item above allows
s<=t and t>=s, therefore s=t is possible. This is what I believe OWL
is stating. The error here is that a type hierarchy is a higher order
relation not between the individual classes, but between classes of
individuals -- this is the error I believe is being made in OWL.

And this would suggest that the subject heading of this message is
simply an incorrect question, that superclass-subclass is a class
relationship, not a relation between set members.

[...]
 > That's what "checking for loops" means, for OWL class-subclass like for
 > any order relation: same issue e.g. with "whole-part" and same way to
 > deal with it.
 >
 > Does that help ?

Well, I had about a half hour discussion with Enrico Motta (our
director, who was on the WebOnt WG), and I still came away thinking
this is all wrong. So I'm pigheaded (this isn't news to some folks).

Even if there is some mathematically-logical sense within which this
is true, which I think I've demonstrated is not the case (unless
we're talking about the relationships between classes of individuals
and *not* the relationships between classes (ie., taxonomy), I still
think this decision would be a mistake, since such "subtleties" are
likely lost on 99% of the buying public (ie., developers and
implementors).

Based solely on the "principle of least surprise" I believe most
people would intuitively disbelieve that a class can simultaneously
have both a superclass and a subclass relationship to another class,
and absent an example discussing *individuals* I can't think of an
example relating classes where this is true that doesn't bring
extensionality/intensionality into play, or simply a matter of
labelling (eg., "human" and "homo sapiens" are the same class*),
not the relationship between classes.

Pity the world that has to deal with this stuff when it hits
the Web: is porn queen A the same as porn queen B?  :-)

Murray

* which isn't strictly true anyway -- one is a colloquial name, the
   other the zoological taxonomic (genus-species) identifier; they're
   identifiers from different domains.
......................................................................
Murray Altheim                  <http://kmi.open.ac.uk/people/murray/>
Knowledge Media Institute
The Open University, Milton Keynes, Bucks, MK7 6AA, UK

     "In Las Vegas Mr Gates also demonstrated a prototype
      fridge magnet which can be programmed to receive traffic
      reports, sports results and advertisements from local
      restaurants using the same FM signal as the wristwatch."
                                  -- The Guardian, 10 Jan 2003.