communication and representation
<hayes@parc.xerox.com>
Message-id: <9009062104.AA02356@owl.parc.xerox.com>
Date: Thu, 6 Sep 90 14:04:47 PDT
From: <hayes@parc.xerox.com>
Reply-To: hayes@parc.xerox.com
To: interlingua@vaxa.isi.edu
Subject: communication and representation
Danny Bobrow sent me some email correspondence between him and Peter
Patel-Schneider on how the interlingua should be thought about and asked me
for comments, reproduced below. He suggested that they might be of interest
to a wider audience. I would like any feedback, critical or otherwise, as
I am trying to state this distinction clearly enough to make a paper out
of it.
Pat
----------
Danny,
This issue between you and Peter on the True Role of the interlingua -
should it be thought of as an 'almost-universal' representation logic, or
should it be rather a computational utility to facilitate intertranslation
- seems fundamental. Its not black/white, because one could argue that the
best way to achieve the latter would be to create the former, and in any
case exactly what counts as a representation logic is sometimes involved
with implementational questions. Nevertheless I think it is important to
try to get it clear. This isnt the old procedural/assertional difference,
but a newer one: roughly, is the interlingua to be thought of itself as a
representation language or as a communication language between
representation languages? I would like to urge that these are different,
and maybe its important to get clear which you intend.
Let me abbreviate these as Rcode and Ccode. Expressions in an Rcode are
taken to have a semantics, or at any rate have some kind of inference
defined on them as being correct: they serve as representations.
Statements in a Ccode, however, are supposed to be have some information
encoded in them, and are to be understood by some input machine which will
be able to somehow extract the information from them ( and encode it, of
course, in a suitrable Rcode ). There are many important differences
between these. For a start, there is no particular reason why the Ccode
should be able itself to support any inference. A Ccode needn't be an
Rcode itself. English is a good example: it's close to impossible to
define valid rules of inference on surface English. ( Given a competent
understander of the Ccode, one can define a sort of representational
structure on it by having it understood, drawing valid conclusions in the
internal Rcode, then translating it back out into the Ccode, just as you or
I can usually quickly tell if some inference stated in English is valid;
but that doesnt mean that we THINK in English.)
Here is an example of the difference. Quotation or some such device is
clearly really handy to have in a Ccode, since it allows one to use the
code to talk about other expressions, eg allowing one to explain in the
code what some particularly awkward construction means, say, or just to
declare that it is written in Rcode24, or whatever. And the fact that it
allows 'paradoxical' constructions is merely amusing, since any
understander has the option of noticing such stuff and refusing to take it
seriously. It only becomes a serious matter if it appears in an Rcode which
is faced then with unfortunate deductive consequences. But largely for
this reason, quotation is a dangerous thing to let free in an Rcode, and it
has to be kept under close supervision.
One of the key differences bewteen a Ccode and any Rcode is that a
communication language is for use in a community, members of which can
often rely on one another knowing certain things which therefore do not
need to be constantly reiterated in their communications. So Ccode
expressions can often be very elliptical. This happens in human
communication all the time. This would be unacceptable in a Rcode, since
the missing information would be needed in the inferencemaking ( unless it
was so fixed that it could be built into the very inference mechanism once
and for all, eg the meaning of '&' ). The process of going from an
elliptical communication to a more filled-out understanding of what was
meant is a large part of what goes on in conversations.
Now, is the interlingua a Ccode or an Rcode? I think Peter ( and Mike G.,
among others ) see it as an Rcode: it has a semantics, for example, and
inferences are definable over it, and it is certainly usable as a
representation language. But in your email with Peter you sometimes seem
to think it is more like a Ccode. For example, it seems that there is an
implicit community of users all of whom can be expected to share some
unstated knowledge, and translation out of the interlingua can depend on
this knowledge ( eg of LOOM ) (?) But on the other hand, the interlingua
itself has a semantics, apparently, because the interlingua translation of
an expression in an Rcode is implied by that expression. I must confess
to being confused about just what sort of a thing you take the interlingua
to be.
Anyway, the point of this message is just to suggest that the difference
between a communication language and a representatiaon languge is worth
trying to keep in mind when talking about the interlingua, and being clear
about. And to ask whether it makes sense to you, and if it does, which do
you think the interlingua is?
Pat