Discussions about KIF and related email@example.com
Date: Mon, 20 Jul 92 07:37:21 EDT
To: INTERLINGUA@ISI.EDU, KR-ADVISORY@ISI.EDU, CG@CS.UMN.EDU
Subject: Discussions about KIF and related issues
On July 6, I sent a note describing a two-hour discussion with Mike
Genesereth about some issues concerning KIF (at the end of this note is
a copy of the four main points). During the AAAI Conference last week,
I had further discussions about KIF and related issues with several
people. Following are some of the main points:
I talked with Doug Lenat about the relationship between KIF and the
Cyc Epistemological Level (EL). Over the past few years, the Cyc EL
has evolved towards a purely declarative language with the scruffy,
procedural mechanisms pushed into the HL (Heuristic Level). Although
it started as a frame-based language that was very far removed from
the logic-based core of KIF and related languages, the EL is now very
close -- actually a superset -- of that core. I very much like the EL/HL
distinction, and I agree with Lenat that it would be nice if KIF could
evolve to include all or almost all of the features of the Cyc EL.
But I also agree with Genesereth that a solid theoretical foundation
I don't believe that those two positions are irreconcilable. The major
differences seem to be in personality and working methods:
1. Lenat's goal is to represent everything. Whenever something new came
up that Cyc couldn't represent, the Cyc developers rushed in to add
a feature to handle it. Some of those features were incompatible
with other features in Cyc and inconsistencies arose. To resolve
the problems, they gradually evolved towards a very clean EL, which
is close in spirit to KIF, but considerably richer.
2. Genesereth's goal is to develop a solid theoretical foundation for
representing everything. He has been working towards that goal with
meticulous care and has been reluctant to include any new feature
until all of its implications and interactions with other features
have been thoroughly analyzed and understood. As a result, KIF
development has been very slow, and it still lacks many of the
features the Cyc EL. The largest discrepancies lie in treatment
I sympathize with both of these positions: I would like to see a system
as rich as the Cyc EL with a theoretical foundation as solid as KIF.
I don't believe that goal is unattainable, but some changes in the way
that the various groups work together may be necessary to achieve it.
Another person I spoke with in the hallways is Pat Hayes. He had been
discussing the issue of contexts with John McCarthy for a long time
and felt that McCarthy was trying to bundle up too many uses in a single
mechanism (e.g. see Point #3 below in my discussion with Genesereth).
McCarthy agreed that contexts had multiple uses, but he wanted to "kill
multiple birds with a single stone." That is a laudable aim, but a lot
of analysis is necessary to formalize all the bird-killing axioms.
I also spoke with Stuart Shapiro about relating SNePS to KIF. He has
been working with Tim Finin and the KQML group to use KQML for accessing
SNePS. Stuart said that he hadn't worked out the translation between KIF
and SNePS, but that it shouldn't be too difficult. I urged him to work
on that translation, since there is a lot of potential for difficulties
to creep into the details. I am doing a similar analysis of the recent
version of KIF and its mapping to conceptual graphs; the interactions
of sets with the other features have to be handled very carefully.
I also spoke with Bob MacGregor about how KRSS, LOOM, and other KL-ONE-
like systems could be mapped to KIF. MacGregor said that he is much
happier about the latest version 3.0 of KIF, which he thinks is moving
in the right direction, but he still sees some discrepancies that have
to be ironed out. We didn't have time to talk about them in detail.
Conclusions: I think that we are making progress towards developing a
common semantic core for all the logic-based languages. Contexts are
one of the most complex issues where there is still a big discrepancy
between some of the systems. I agree with McCarthy, Guha, and Lenat
that contexts are a very powerful mechanism that can solve a number of
related problems. But I also agree with Hayes and Genesereth that more
analysis is needed to sort out those problems. That is an important
area for further research and development.
Main points that emerged from the discussion between Mike Genesereth
and John Sowa on June 23, 1992:
1. Types. At the KR Advisory Board meeting on March 28, I discussed
this point with both Mike and Richard. Mike agreed that it would
not cause major theoretical problems to add types or sorts to KIF
and that they would be useful in simplifying the mapping to typed
languages such as KRSS, conceptual graphs, and most versions of
semantic nets and object-oriented languages. But Mike and Richard
have not yet made a final decision on adding types to KIF, since
there are still some issues that remain to be resolved, especially
in the interaction of types with sets and some of the other details
of the language. I agree that the interaction of types and sets is
a critical issue, and it should have high priority.
2. Set theory and mereology. Mike and I agreed that mereology has some
interesting properties that make it useful for certain kinds of
knowledge representation, but that set theory is so widely used that
it must be included in the semantic core. We agreed on the following
a) Set theory as defined in KIF should be adopted as the basis for
defining structures. The distinctions between different axiom
systems (such as Zermelo-Fraenkel or Von Neumann-Bernays-Goedel)
are only relevant to applications that talk about nondenumerable
sets, which could never be implemented in any computer system.
I have philosophical doubts about the usefulness (or even the
existence) of such sets; but if anybody wants to talk about such
things, the language should permit them to do so.
b) The axioms for mereology could be stated in KIF or CGs as needed,
and the part_of relation for mereology could be identified with
the subset relation for sets. However, part_of could also be
applied to things that are not sets, such as fluids or other
continuous things that have no clearly marked joints or seams.
3. Contexts. Mike and I agreed that there are many distinct uses that
people have suggested for contexts, and many of them lead into
thorny research issues that have not yet been resolved to everyone's
satisfaction. Following is a list (by no means complete):
a) Partitioning a knowledge base into more manageable modules.
b) Encapsulating parts of a knowledge base, as in the so-called
c) Providing a shorthand notation for omitting common arguments,
such as location, time, etc.
d) Providing a way of resolving indexical referents, such as
"this", "that", "I", "you", or definite noun phrases beginning
e) Representing environments whose modality, level of certainty, or
hypothetical existence is different from that of the containing
f) Supporting propositional attitude verbs (such as believe, know,
think, want, hope, fear, expect, etc.).
g) Separating a metalevel of language that is used to talk about
the language that is used inside the nested context.
We agreed that all of these uses are important, but that a lot of
study is needed to sort them out. Some of them are more clearly
necessary than others, and the initial semantic core might not
support all of them. The question of which ones should be in the
core is an issue for further discussion.
4. Multiple representations. We agreed that a linear language such
as KIF has an advantage as an interchange format that is used for
transmissions along a wire. We also agreed that a graphic language
such as conceptual graphs is more readable for ordinary human beings.
KIF and CGs have a large overlap in their semantic bases, and the
semantic differences between them are negotiable. Therefore, we
should work towards developing a common semantics that can be
expressed equally well in both forms and with a formally defined
mapping between them. But this common mapping between KIF and CGs
should not preclude anyone else who has an equally expressive
language, in either linear or graphic form, from developing it as
another possible representation for the common semantic core.