[CL] XML annex: nothings and the ID namespace

Pat Hayes phayes at ihmc.us
Tue Nov 1 13:41:36 CST 2005


>Pat,
>
>I was rereading the discussion of modules, etc., in Section 6
>of the current draft, and I think that a change of emphasis
>could make it clearer:
>
>>  No, Murray is right, we still have this in the syntax, but we renamed
>>  them 'non-discourse names'. Its a list of names that a module
>>  (written in a segregated dialect) uses, but wishes to declare do not
>>  denote anything in its universe of discourse. It would be perfectly
>>  fine to use a label like 'excluded' or 'not-thing' or whatever. I
>>  think that the reason Murray is focussing on this might be that its
>>  the only place in the syntax where there is a structure which is
>>  simply a list of names.
>
>CL makes a major break with most other logics, including KIF,
>by not making any syntactic distinction between variables and
>constants.  To most people who are familiar with conventional
>logics (including KIF), that is a jarring difference.

There are textbook logics that go both ways on this, I don't agree 
that CL is in a class by itself. I think that among the 20 or so 
textbooks I once read when I was a logic teacher, about a third of 
them did not distinguish variables as a syntactic category.

>But I just checked Section A.1.2 about the differences between
>KIF and CLIF, and that is not even mentioned as one of the 8
>significant differences.

Hmm, it should be, it was listed there at one time. I agree it should 
be if it is not.

>  CGIF makes the same distinction as
>KIF, and when I'm writing Annex B, that difference between KIF
>and CLIF keeps rearing its ugly head again and again.

Well, the AS does not prohibit your making the distinction if you 
want to make it, but keeping the variables bound and the other names 
not bound is up to an external parser. But a conforming CL dialect 
can be based on this lexical distinction and still be fully 
conformant.

>  Compared
>to that, going from ASCII to Unicode is a "no brainer".
>
>Suggestion:  I think that the point that CL syntax (abstract
>and concrete) does not distinguish variables and constants
>should be highlighted much earlier in the document, and its
>implications should be discussed for modules, importation, etc.

I don't see much connection with modules and importation, since you 
can only import into a text, not a subexpression.

>The reason for excluded names in modules is much easier to
>understand if you explain to people that you need to avoid
>having a CL quantifier accidentally "capturing" a name that
>was intended to be a constant.

? I guess I don't follow that point. I don't see that as being an 
issue for modules. The idea of a module is simply to allow an 
ontology to declare its own local universe of discourse, and to 
indicate explicitly what 'things' are NOT in it. There has to be some 
way to do this, and obviously you can't do it using a sentence in the 
ontology itself, since if you use a name  as an argument then it has 
to denote, so you can't write something like (non-denoting A B C ...) 
as a sentence.

Pat

>  That kind of motivation is
>much more meaningful to an implementer (or user) than some
>lengthy discussion about networks.
>
>John
>
>_______________________________________________
>CL mailing list
>CL at philebus.tamu.edu
>http://philebus.tamu.edu/mailman/listinfo/cl


-- 
---------------------------------------------------------------------
IHMC		(850)434 8903 or (650)494 3973   home
40 South Alcaniz St.	(850)202 4416   office
Pensacola			(850)202 4440   fax
FL 32502			(850)291 0667    cell
phayesAT-SIGNihmc.us       http://www.ihmc.us/users/phayes



More information about the CL mailing list