Re: alternative interlingua

Tom Gruber <>
Message-id: <2859304847-15925329@KSL-Mac-69>
Date: Fri, 10 Aug 90  12:20:47 PDT
From: Tom Gruber <>
Subject: Re: alternative interlingua
In-reply-to: Msg of Fri, 10 Aug 90 13:24:49 EDT from (Peter F. Patel-Schneider) 
Maybe the problem in defining an interlingua for sharing knowledge bases
is hung on the ambiguity of "sharable knowledge".  We have gotten
comfortable with talking about the non-programming-language part of our
programs as "knowledge bases", even when they often are statements in a
very high level programming language.  Remember the talk about sharing
OPS5 rule bases?  They are no more shareable than an arbitrary Lisp
program, although OPS5 and Lisp programs presumably can encode
knowledge.  Consider the case closer to home:

> The problems start with the definition of "implies".  In CLASSIC, rules
> (third and subsequent arguments to cl-define-concept) are
> forward-chaining rules, and not material implications, so some
> axiomatization of implies, probably in terms of partial procedures, and
> definitely using some quotation mechanism, is required.

The problem is that I don't see any way of sharing knowledge encoded in
the formalism of forward-chaining rules without sharing the interpreter.
(footnote: or sharing (1) a declarative description of the interpreter
AND (2) a meta interpreter than can understand the declarative
descriptions.) Since the interlingua approach is based on the assumption
that we needn't share interpreters, then we need to face up to the fact
that some "knowledge" is in easily sharable form and some is not.  The
interlingua can not substitute for the transformations required to tease
out shareable knowledge.  The interlingua as currently described is
based on the strategy that knowledge stated in "declarative form" (in
the logicist sense) is potentially shareable.  We all know the tradeoffs
encountered when trying to be fully declarative and getting the job

Descriptions of the structure of physical devices can be
made shareable, even though there are many ways to describe their
structure and the various models may be motivated by different
information needs.  Statements like (point p22), (point p23),
(coincident p22 p23), (rigid-body rb13), ... can be shared if the
sharing parties agree on the referents of names such as "point".
Statements like "if you want a highly reliable electrical connection,
then use gold-plated connectors" clearly isn't in a shareable form.

Of course, shareablility doesn't guarantee usefullness.  It may be that
the fraction of our current KBs that are shareable is very low.  That
may be due to our current development environments, rather than
something inherent in the world.  A properly designed interlingua should
make it useful in the future to encode shareable knowledge and reuse
other's knowledge.  The interlingua should create the market where
trade in shareable knowledge is mutually benefial.

Thus I argue that the requirement that one should be able to encode all
the information in one's CURRENT favorite knowledge base in the
interlingua and guarantee that it ALL be useable by someone else, may be
broken.  It should be reformulated as the requirement that one should be
able to encode all potentially shareable knowledge in the interlingua,
using the extension mechanism to say things that may not be
computationally useful today.  In the current interlingua, potentially
shareable = can be put in "declarative" (interpreter independent) form,
which amount to statements with no *computational* or *operational*
semantics.  (Note: if Brian Smith is right, there is no such knowledge
in our knowledge bases.) The extension mechanism lets us encapsulate
things with semantics dependendent on an interpreter, anticipating the
technology that would allow us to make use of some of it.