[POPLmark] Re: adequacy
Karl Crary
crary at cs.cmu.edu
Mon May 9 20:26:16 EDT 2005
Randy,
If I'm understanding your answer, you seem to be saying that
substitution is not an essential part of the syntax; rather, it is just
another judgement that is defined over it. (Correct me if I
misunderstand you, because you didn't say so explicitly.) Consequently,
you seem to say, there is no requirement to show that the correspondence
between object terms and their encoding respects substitution.
I admit we're in a fuzzy area here, but I think that the fact that no
one ever writes down a substitution judgement indicates we all see it as
part of the syntax. Certainly I think we can all agree that
alpha-equivalence is nearly always regarded as an essential part of the
syntax, so any adequate encoding must respect it. This is not a problem
for de Bruijn representations, but it is a problem for explicit variables.
-- Karl
Randy Pollack wrote:
>Karl Crary writes:
> > So my question is, what is the appropriate notion of adequacy for a FOAS
> > system such as Constructions? To me it seems very tricky, because you
> > want to set up an isomorphism between two systems that don't even have
> > the same structure. That is, how do you say that the encoding respects
> > substitution when FOAS doesn't even have a primitive notion of substitution?
> >
> > Even in the absence of a rigorous definition, I would be interested to
> > hear how the Coq people think about these matters.
>
>There are many different representations in the class Karl calls FOAS.
>For definiteness sake, lets consider Jerome Vouillon's PoplMark
>submission using pure de Bruijn representation in Coq. Jerome's
>datatypes "typ" and "term" are concrete descriptions of sets of
>well-founded trees. If you solved the PoplMark challenge informally,
>pencil and paper, using pure de Bruijn representation, you would write
>some notations intended to denote exactly the same sets of trees.
>Each one of these trees is as concrete as a natural number. So, while
>there is still an unavoidable philosophical gap (between "in my mind"
>and "on paper"), I don't see any mathematical gap. Similarly, the
>judgements and derivations of Jerome's formalisation are (up to a
>philosophical gap) the same sets of concrete trees as an informal
>presentation would use.
>
>A different question, genuinely mathematical, is whether pure de
>Bruijn representation (either formalised in Coq, or informal pencil
>and paper) is an adequate representation of our intended abstract
>notion of types or terms with binding. This question has been
>addressed many times, both formally and informally, since de Bruijn's
>original paper. De Bruijn's original paper provides at least as
>convincing an adequacy theorem as does LF style adequacy theorems.
>Many people (not all) consider that "de Bruijn representation is the
>real meaning of lambda terms".
>
>Jerome defines a notion of substitution on these concrete trees, which
>corresponds clearly to what de Bruijn wrote in his paper. Again, the
>adequacy of what de Bruijn wrote to represent the informal notion of
>substitution has been proven many times. I don't really see Karl's
>point "how do you say that the encoding respects substitution when
>FOAS doesn't even have a primitive notion of substitution?"
>
>BTW, the particular meta-logic (Karl asks about Constructions) is
>largely irrelevant, as long as we believe it is consistent. One of
>the good things about using LF as a meta-language is that its
>consistency is proved in number theory, which is not the case for
>Constructions. But (as a recent contributor asked) what is the logic
>of Twelf, and what is the strength of its consistency theorem? These
>seem to be important questions for developing the Twelf approach.
>
>There are many other concrete presentations of lambda terms,
>e.g. Curry/Feys, McKinna/Pollack, Gordon/Melham, Stoughton, ... They
>are not all isomorphic. E.g. neither McKinna/Pollack nor Stoughton's
>representation are quotiented by alpha equivalence, but they have
>operations that behave well wrt alpha classes. Now things can get
>interesting. We can formally state and prove, in some mechanical
>system, relationships between some different representations.
>E.g. translations between representations that respect substitution.
>One gains confidence in formal definitions by formally relating them
>to other formal definitions. If several formal representations have
>(informally proved) adequacy theorems, and we have formally proved
>relationships between the representations, that is convincing.
>
>Randy
>_______________________________________________
>Poplmark mailing list
>Poplmark at lists.seas.upenn.edu
>http://lists.seas.upenn.edu/mailman/listinfo/poplmark
>
>
>
>
More information about the Poplmark
mailing list