Re: Moving the Debate on Definitions Forward

Robert MacGregor <>
Message-id: <>
Subject: Re: Moving the Debate on Definitions Forward 
Date: Tue, 17 Jul 90 14:37:14 PDT
From: Robert MacGregor <>

>From Richard:

> Also, there has not been any disagreement voiced about
> the form of the particular operators DEFOBJECT, DEFUNCTION, DEFRELATION,
> and DEFPRIMRELATION, and I think we agree on their extensional
> semantics.

OK, I guess its time to voice some disagreement.  First of all, I
object to the convention that the body of a defxxx form should be
a list of sentences that are implicitly ANDed.  Instead, I would
advocate making the body of a defxxx a single sentence, e.g., one
should write

   (defrelation bachelor (?x)
      (and (male ?x) (not (married ?x))))

instead of 

   (defrelation bachelor (?x)
      (male ?x) (not (married ?x)))

In Peter's note, he mentions several areas (if forget where) where he
would like more implicit ANDing to occur.  I'm advocating the opposite
-- that we eliminate implicit ANDs from most places in the language.  An
additional motivation for the explicit use of ANDs inside of definitions
is that it captures the intuition that a definition binds a
symbol to a "description".  KIF doesn't have descriptions (yet), but it ought

Second, I would like to object to DEFOBJECT.  Peter invented his own
DEFFRAME, which looks much closer to what I might have invented if I
wanted a special syntax for describing objects.  So I would recommend
eliminating DEFOBJECT, and putting up for consideration something like
Peter's construct.

Miscellaneous comments:

I agree with Peter that "<=" should mean "less-than-or-equal", or that it
should not be an operator at all.  Also, I think "=>" ought
to be called "implies".  

The "cut" symbol should be eliminated.

The operators "alike", "is", "<-" and "<--", "<==" and "==>" operators should
be eliminated.  If we had a workable scheme for annotating sentences, then that
could be used instead.  This proliferation of unintelligible control operators
indicates a basic weakness in the language (namely, in its ability to
represent metaknowledge/annotations).

"?x" is preferable to "$x" to indicate variables.

Modals:  Some of the KIF text indicates that a proper way to indicate
a belief is to relate it to a quoted sentence, e.g.,

   (believes john '(wife Fred Sue))

If the objects of belief are sentences, then perhaps this is a good
way to model beliefs.  On the other hand, if the objects of belief
are propositions, then quotation appears to be inappropriate (Peter's
document mentions this).  Unless there is a strong consensus supporting
the use of quotation to represent objects of belief, then I think the
current examples should be eliminated from the document (or at least moved
to an appendix indicating a POSSIBLE scheme for belief representation).

Should "set-of" be monotonic or not?  It seems obvious to me that we need
both kinds, so the question here ought to be rephrased as "What is the
name of the monotonic `set-of', and what is the name of the nonmon `set-of'?".

Implicit control of Problem Solving (e.g., preserving the order of arguments)
  Rephrasing this, should we allow the language to be (even more?) non-declarative?
  I vote no.  

Cheers, Bob