Converses (Re: Availability of the ANSI standard proposal?) (Robert MacGregor)
Message-id: <ad7cbd6a030210045d47@[]>
Mime-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Date: Mon, 25 Mar 1996 13:38:23 -0800
To: (Fritz Lehmann),,,
From: (Robert MacGregor)
Subject: Converses  (Re: Availability of the ANSI standard proposal?)
Precedence: bulk
>From Fritz Lehmann:

>Some time before I started working on Cyc, they decided to drop
>converses entirely.  This was a very wise decision, I believe.  If
>you think of a relation "floating" in abstract space, the converse(s)
>are really matters of how the abstract relation is projected into
>a string notation.  There is only one genuine relation represented
>by all the converses.

I agree with Fritz that at a fundamental level there is only one relation,
i.e., that converse(s) should not be represented.  However, at a more
"user-friendly" level, they seem to be needed, e.g., it is convenient
to represent both of the notions "parents-of" and "children-of".  Although
it is tempting to say that this is an "interface problem" that should be
dealt with outside of the KR system, our experience predicts that users
would react negatively if the notion of converse relations were not present
in whatever system they were using.  Conjecture:  users would probably be
content with just *binary* converse relations (inverses).

Another issue at the "user-friendly" level is that of "functions" vs.
"relations".  The OO crowd seems to much prefer functions to
relations (e.g., they prefer to define a function "parents" rather
than defining a relation "has-parent").   The inverse relations they declare
are between pairs of functions (e.g., between "parents" and "children")
rather than between pairs of relations.  KIF supports both functions and
relations, so it is agnostic on this point.

- Bob

Robert M. MacGregor                           
USC/ISI, 4676 Admiralty Way, Marina del Rey, CA 90292      (310) 822-1511