[Top] [All Lists]

RE: [ontac-forum] Re: The world may fundamentally be inexplicable - Cyc

To: ONTAC-WG General Discussion <ontac-forum@xxxxxxxxxxxxxx>
From: John Cabral <jcabral@xxxxxxx>
Date: Thu, 12 Jan 2006 17:04:04 -0600 (CST)
Message-id: <Pine.LNX.4.44.0601120912150.5870-100000@xxxxxxxxxxxxxx>

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
Shared Files: http://colab.cim3.net/file/work/SICoP/ontac/
Community Wiki: 
http://colab.cim3.net/cgi-bin/wiki.pl?SICoP/OntologyTaxonomyCoordinatingWG    (014)
<Prev in Thread] Current Thread [Next in Thread>