coq-club AT inria.fr
Subject: The Coq mailing list
List archive
- From: Abhishek Anand <abhishek.anand.iitg AT gmail.com>
- To: coq-club <coq-club AT inria.fr>
- Subject: [Coq-Club] CFGV, a generic library for reasoning about languages with binders
- Date: Thu, 19 Jun 2014 19:34:32 -0400
Dear Coq users,
I'd would like to announce the release of CFGV, a library
that aims to alleviate the burden of
reasoning about substitution and alpha equality when formalizing
languages with binders in a nominal style.
By nominal style, I mean that bound variables have names.
Like Ott[1], the input to our library is a Context Free Grammar annotated
with Variable binding information.
However, there is no external "code-generation" step to get Coq code from the input.
The input specification language itself is formalized as a record type (CFGV)
in Coq.
So, the input grammar is specified in Coq
as a member of the CFGV type.
The rest of our library is parametrized by a CFGV.
This includes definition of terms, alpha equality, substitution, free variables
and many proofs about them.
Once you construct a member of our CFGV type that corresponds
to your language, you
can instantiate our library with this member to get the
above mentioned definitions and proofs for free.
More information is available in the following paper:
Abhishek Anand and Vincent Rahli. "A Generic Approach to Proofs about Substitution". LFMTP 2014
The Coq sources are available on github:
If you have any question, comment, or you run into an issue,
please feel free to create an issue at:
Your feedback is very welcome.
[1] : Sewell, Peter, Francesco Zappa Nardelli, Scott Owens, Gilles Peskine, Thomas Ridge, Susmit Sarkar, and Rok StrnišA. 2010. “Ott: Effective Tool Support for the Working Semanticist.” JFP 20 (01): 71. doi:10.1017/S0956796809990293.
Regards,
-- Abhishek
- [Coq-Club] CFGV, a generic library for reasoning about languages with binders, Abhishek Anand, 06/20/2014
Archive powered by MHonArc 2.6.18.