arXiv · 1907.10674
ConCert: A Smart Contract Certification Framework in Coq
Abstract
We present a new way of embedding functional languages into the Coq proof assistant by using meta-programming. This allows us to develop the meta-theory of the language using the deep embedding and provides a convenient way for reasoning about concrete programs using the shallow embedding. We connect the deep and the shallow embeddings by a soundness theorem. As an instance of our approach, we develop an embedding of a core smart contract language into Coq and verify several important properties of a crowdfunding contract based on a previous formalisation of smart contract execution in blockchains.
Explore related subjects
Keep this discovery
Danil Annenkov, Jakob Botsch Nielsen, Bas Spitters. 2019-07-24. ConCert: A Smart Contract Certification Framework in Coq. https://doi.org/10.1145/3372885.3373829
Cite the original work for its findings. Save a collection to share your selection of sources.