[CL] Why Don't We Need Free Variables?
Randall R Schulz
rschulz at sonic.net
Tue Aug 2 10:37:12 CDT 2005
Drew,
I appreciate your the attempt to help me understand what appears a
shortcoming in the conceptualization of CL. No doubt I'm the one
suffering from a misconception...
On Tuesday 02 August 2005 07:31, Drew McDermott wrote:
> > [Randall R Schulz]
> >
> > It seems you've made an excessively limiting assumption that
> > formulas are to be asserted and nothing else.
>
> Let me try to rebut your complaint, at the risk of repeating what Pat
> already said.
>
> What you are asking for, it seems to me, is a purely syntactic
> vehicle for transmitting formulas that CL doesn't classify as well
> formed. There are two ways to do that:
I believe that's an accurate representation of my point.
> 1 Adopt a notation in which variables can be distinguished from
> constants orthographically, say, with preposed question marks:
>
> (if (loves John ?x) (species ?x feline))
For the record, I very much like having a lexical convention that
distinguishes variables from other names. This is common practice in
technical publications involving mathematical, logical and physical
formulas, and to me it's just confusing to obliterate the lexical
distinction between variables and other linguistic entities that have
names.
> 2 Introduce a pseudo quantifier to declare some names to be
> variables. You could use 'lambda' for this purpose, and often that
> could even be given an appropriate semantics, although CL doesn't.
> But you could make up a quantifier; I've occasionally used the
> symbol 'freevars' for this purpose:
>
> (freevars (x) (if (loves John x) (species x feline)))
>
> This may seem like a paradox or a joke, but it does the job.
I get the idea, but how does that get to be syntactically valid CL?
> What else do you need? If you want a standard _semantics_ for such
> formulas, you could adopt the convention that free variables are
> implicitly universally quantified, but in my experience this
> convention is often violated. Anyone can extend CL to include this
> convention (I assume; who would prevent them?). But there doesn't
> seem to be any particular reason for CL to adopt it. I'd be much
> more interested in seeing 'lambda' added to the language.
Is it so outlandish to want to convey FOL-like formulas that have no
fixed semantics established by the standard? If CL is so constrained
that only facts can be conveyed, it seems to have excluded practical
uses.
But I, too, am repeating myself.
Randy
More information about the CL
mailing list