Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] Matching logic

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] Matching logic


Chronological Thread 
  • From: Xavier Leroy <Xavier.Leroy AT inria.fr>
  • To: coq-club AT inria.fr
  • Subject: Re: [Coq-Club] Matching logic
  • Date: Tue, 31 May 2016 19:25:57 +0200
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=xavier.leroy AT gmail.com; spf=Pass smtp.mailfrom=xavier.leroy AT gmail.com; spf=None smtp.helo=postmaster AT mail-wm0-f48.google.com
  • Ironport-phdr: 9a23:V55M1hK6Ie5WBpH1e9mcpTZWNBhigK39O0sv0rFitYgUKfXxwZ3uMQTl6Ol3ixeRBMOAu6MC1red6vixEUU7or+/81k6OKRWUBEEjchE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i760zceF13FOBZvIaytQ8iJ35Xxir35osWCKyxzxxODIppKZC2sqgvQssREyaBDEY0WjiXzn31TZu5NznlpL1/A1zz158O34YIxu38I46FppIZ8VvDxeL19RrhFBhwnNXo07Yvlr0rtVwyKs0sVTGQbiFJsDhLC/Vmubp7vsybg8M5wwi6LFczwV7E9Hzq4ufQ4ACT0gTsKYmZquFrcjdZ92fpW

On 31/05/16 07:20, Kenneth Adam Miller wrote:
> I've read seven chapters into Interactive Theorem Proving and
> Program Development, and I don't think either axiomatic or
> operational semantics are mentioned anywhere

Just hold tight for a few more chapters! The chapters Imp, Equiv,
Hoare, Hoare2 and Smallstep explain very well the approach already
mentioned in this thread, namely defining the syntax and (operational or
axiomatic) semantics of a programming language in Coq, and proving
properties about them.

> You can't add a semantics for a language built under and by Coq?

You can certainly define semantics for a programming language in Coq.

> What about Mezzo, there is a language that was built with Coq.

Not really "built with Coq". Rather, its abstract syntax, operational
semantics and type systems were formalized using Coq, then proved sound.

> If you're right, then I guess that the mezzo source files just map
> down to Coq types eventually.

You could look up the terms "shallow embedding" and "deep embedding"
in the literature. What you have in mind sounds like a deep embedding
but the Mezzo formalization, and many other P.L. formalizations in
Coq, use the "shallow embedding" approach.

Hope this helps,

- Xavier Leroy



Archive powered by MHonArc 2.6.18.

Top of Page