ontolog-forum
[Top] [All Lists]

Re: [ontolog-forum] Generalization, specialization, and interoperability

To: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: William Frank <williamf.frank@xxxxxxxxx>
Date: Sat, 20 Sep 2014 11:02:36 -0400
Message-id: <CALuUwtBUUBwt3yZGKMbzJThQYRt1ELEGyPujgs-rbpJaQDu9LA@xxxxxxxxxxxxxx>
I found this very interesting,raising additional mathematical questions that could be useful in the systematization of relationships between ontologies, beyond those of interoperability, and perhaps reapplied to interoperability in a more fruitful manner.

1. How is 'generalization' and 'specialization' as a relation between classes realated to the relation defined here between theories?  I believe that in fact, the relation between classes is actually derived from the relations between theories about the classes.

2. How is abstraction, which often includes a change in terminology, most usefully defined and related to generalization?

For example, it seems to me that abstraction,  as in the way that a tree structure is an abstraction of organization charts, single cell reproduction, asymmetric keypair protection, ... is also a generalization, so that the REST of the theories of single cell reproduction and asymmetric keypair protection will be incompatable, but the abstraction **and** generalization to the theory of tree structures is a point of shared generalization.  (or, as in the way a group is an abstraction of addition with identity zero as well as of multiplication with identity one).

And, in the tree example, the REST of the theories of single cell reproduction and asymmetric keypair protection are not, as in your definitions, 'inconsistent', because they do not even share the same vocabularies or meanings for the terms they use.  Only the abstraction that maps several different meanings, say 'protected by', 'parent organization of' 'parent cell of', to an abstract relation,named say 'predicessor' or 'parent' is shared, and is a 'generalization' of all of them.

So, mappings of vocabularies may help resolve some of the problems being suggested in this thread.

Wm





On Fri, Sep 19, 2014 at 10:15 AM, John F Sowa <sowa@xxxxxxxxxxx> wrote:
In another forum, I sent a note about using the terms 'generalization'
and 'specialization' as a way to clarify relationships among ontologies
(or any theories of any kind).

In particular, they provide a convenient way to specify the conditions
for interoperability among theories and the systems they describe:

  1. Definition.  A theory A is a generalization of a theory B iff B
     entails A:  every model for which B is true is also a model for A.
     If A is a generalization of B, then B is a specialization of A.

  2. Even when those two words aren't used, the concept is implicit.
     In Cyc, for example, they are the basis for the partial ordering
     of microtheories:  every microtheory is a specialization of
     (entails) the theories above it in the hierarchy.

  3. As another example, Schema.org is a very general (underspecified)
     collection of types (or classes) that many developers adopted for
     applications that are inconsistent with one another.  But the
     theories that specify those applications (explicitly or implicitly)
     are all specializations of Schema.org.

  4. If data d is specified in a general theory, such as Schema.org, and
     used a more specialized theory X, all properties of d specified in
     the general theory may be assumed in X.  But any property P that
     is not specified in the general theory may be used in X only after
     a test such as "If P(d), then ..."

  5. With these two terms, the conditions for interoperability among
     two theories A and B (or any systems that are specified by or
     described by A and B) can be stated:

     a) If two theories A and B are inconsistent in their details,
        they can interoperate on shared data that is specified by
        a common generalization C.

     b) To use data specified in C, neither A nor B may assume any
        properties of that data not specified in C.  But they can use
        the details in conditionals that begin "If x has property P ..."

     c) Points 5a and 5b are implicit in the way interoperable systems
        work.  The spec's for the data on which interoperability is
        required are the common generalization C.  Any property not
        specified in C can only be used in A or B after an appropriate
        test.

The generalization/specialization distinction can also clarify other
relationships, practical and theoretical.  For example, we have often
discussed issues about defaults, open worlds vs close worlds, and
related problems in nonmonotonic reasoning.

But every proof in a nonmonotonic logic can be converted to a proof
in a monotonic (classical) logic from a suitably revised theory --
because each nonmon step adds, deletes, or modifies a monotonic axiom.

After the nonmon proof has finished, it's possible to gather up all
the monotonic axioms into one purely classical theory, from which an
equivalent proof can be carried out with classical rules of inference.

In terms of generalization/specialization, every nonmon proof
corresponds to a walk in a lattice of classical theories.  The full
lattice may be infinite, but only a finite set of nodes are used
for any application:  The number of nodes is equal to the number
of steps in the nonmon proof.

Summary:  The terms 'generalization' and 'specialization' can be
used to explain and clarify a wide range of issues, both practical
and theoretical.

John

_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J



_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/  
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/  
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/ 
To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J    (01)

<Prev in Thread] Current Thread [Next in Thread>