I'll take a shot at answering some of these questions. (01)
> (3) On the question of a defining vocabulary for predicates:
> [John Sowa - characterizing Cyc's initial goal] 1. There shall be
> *one* single consistent theory that defines *all* the predicates (or
> concept & relation types) that are permissible in any message passed
> between any two systems that claim to adhere to the ONTAC standards.
>
> This presents a very interesting question, and if anyone actually
> have any data on the issue, it would be very enlightening for us.
> Every OpenCyc microtheory uses the "BaseKB" as a common foundation. I
> am aware of some microtheories that are logically inconsistent with
> some other microtheories (not with the BaseKB), but many microtheories
> seem to be created merely for computational efficiency purposes, not
> because they are actually inconsistent with others. We are still left
> with the question of whether any microtheories (which ones?) require
> concepts in their axiomatic definition that are not already in the
> BaseKB - either directly or by transitive closure of the definitions.
> To answer that question we would have to agree on (a) what constitutes
> a primitive not fully-axiomatized predicate; and (b) what axioms are
> actually used for the predicate definitions. The latter is a problem,
> since the axiomatic definitions of the predicates have not been made
> public by Cyc.
> It will be extremely interesting and informative to discover which
> of the predicates in the Cyc microtheories cannot be specified by the
> conceptual elements of the BaseKB -- i.e., which of them are truly
> primitive in the Cyc system. If anyone has any example of a
> microtheory predicate which is known to be primitive -- not definable
> via concepts used in the BaseKB, please provide us with that
> information. Only concrete examples of logically incompatible axioms
> will provide us with the information necessary to determine what the
> structure of a lattice of ontologies will actually be. (02)
I have to admit that I'm a little confused by this passage, I'm not sure
what a "microtheory predicate" is supposed to be. So, please accept my
apologies if I'm misinterpreting you. (03)
In Cyc, there is not a fundamental set of primitive concepts that all new
concepts need to be defined in terms of nor any expectation or desire for
that condition to hold. As new concepts are created they are given new
terms and integrated into the ontology based on their meaning and that
meaning's relationship to other term's meaning. (04)
In BaseKB and, more commonly, UniversalVocablaryMt, the axioms (or
actually, rule-macro assertions) that define the proper usage and some
basic logical relations are stored. If you take "definable" to mean that
you can express necessary and sufficient conditions for them, then the
vast majority of the predicates in the Cyc ontology would fit that bill
since necessary and sufficient conditions for most concepts simply don't
exist. More formally, Cyc doesn't assume any type of reductionism. (05)
> Unless we can get specific examples of concepts in the microtheories
> that are not specified using concepts in the BaseKB, we cannot know if
> Cyc BaseKB provides an example of successful use of a defining
> vocabulary, or not. And if not, we would still need to know whether
> the Cyc designers decided not to bother creating definitions out of
> time pressure, convenience, or computational efficiency rather than
> because of some principled logical requirement. We can anticipate that
> there will in fact be some logical inconsistencies in some context
> (microtheory) representations - whether in Cyc or any other large
> ontology - that will require creating new nodes in a lattice of
> ontologies. But we are interested in finding the maximal potential for
> agreement, and for that we need to know which predicates in
> microtheories are (1) logically incompatible, or (2) undefinable using
> only BaseKB concepts. If Cyc is going to be cited as exemplifying some
> principle, we need very specific details of how it illustrates that
> principle. Saying that something can't be done because some individual
> or company didn't do it is not only a logical non-sequitur, it
> conflates multiple potential reasons for things not getting done. (06)
A lot of work goes into articulating the concepts, it's just that we have
open sourced only a portion of it. (07)
Microtheories do not structure the ontology and each microtheory does not
define an ontology. Although Cyc's microtheories could be used to create
something like Sowa's lattice of ontologies, in actuality they're not.
Cyc only has one ontology. Microtheories are a knowledge storage
mechanism that enables reasoning from different contexts/perspectives.
So, microtheories allow you to store facts about the current world,
historical situations, and hypothetical states of affairs. Their primary
role is actually with managing potentially inconsistent statements of
facts (not features of the ontology) and with enabling temporally
qualifications (i.e., specifying the time intervals during which
sentences are true). (08)
Here's how microtheories are commonly used...
If you look on the web for information about the birth of George
Washington Carver you will find different dates and places. Obviously,
some of the sentences are false. However, both sets of facts can be
expressed in the same ontology. Microtheories allow you to separate out
the facts, and store them in a container that you connect to the source
of the different sets of facts. Then you can reason by relying on the
source of your choice. (As such, they are a very useful knowledge
management tool.) (09)
In general, the definitional assertions on predicates are stored in
UniversalVocabularyMt. This is where a large part of the usage is
fixed (e.g., biologicalMother is a binary relationship between an Animal
and FemaleAnimal). The main carriers of this information are: isa, genlPreds,
genlInverse, negationPreds, and the many arg* preds (and these make up a
large portion of the OpenCyc content). (010)
You could define a term in a 'lower' microtheory and have different
definitions in different microtheories. But that seems like very bad
engineering practice because a single term would be referring to
several concepts and that defeats the whole point of having ontologies
since the terms are supposed to be unambiguous. (011)
best- (012)
John C. (013)
_________________________________________________________________
Message Archives: http://colab.cim3.net/forum/ontac-forum/
To Post: mailto:ontac-forum@xxxxxxxxxxxxxx
Subscribe/Unsubscribe/Config:
http://colab.cim3.net/mailman/listinfo/ontac-forum/
Shared Files: http://colab.cim3.net/file/work/SICoP/ontac/
Community Wiki:
http://colab.cim3.net/cgi-bin/wiki.pl?SICoP/OntologyTaxonomyCoordinatingWG (014)
|