Proceedings of the 10th ACM SIGPLAN International Conference on Certified Programs and Proofs 2021
DOI: 10.1145/3437992.3439934
|View full text |Cite
|
Sign up to set email alerts
|

Extracting smart contracts tested and verified in Coq

Abstract: We implement extraction of Coq programs to functional languages based on MetaCoq's certified erasure. As part of this, we implement an optimisation pass removing unused arguments. We prove the pass correct wrt. a conventional call-by-value operational semantics of functional languages. We apply this to two functional smart contract languages, Liquidity and Midlang, and to the functional language Elm. Our development is done in the context of the ConCert framework that enables smart contract verification. We co… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

2
12
0

Year Published

2021
2021
2023
2023

Publication Types

Select...
3
2
2

Relationship

2
5

Authors

Journals

citations
Cited by 11 publications
(14 citation statements)
references
References 32 publications
(24 reference statements)
2
12
0
Order By: Relevance
“…Being written in Coq gives us a significant advantage since it makes it possible to apply various techniques to verify the development itself. The current work extends and improves the results previously published and presented by the same authors at the conference Certified Programs and Proofs (Annenkov et al, 2021) in January 2021. We build on the ConCert framework (Annenkov et al, 2020;Nielsen and Spitters, 2019) for smart contracts verification in Coq and the MetaCoq project (Sozeau et al, 2020).…”
Section: Introductionsupporting
confidence: 88%
See 2 more Smart Citations
“…Being written in Coq gives us a significant advantage since it makes it possible to apply various techniques to verify the development itself. The current work extends and improves the results previously published and presented by the same authors at the conference Certified Programs and Proofs (Annenkov et al, 2021) in January 2021. We build on the ConCert framework (Annenkov et al, 2020;Nielsen and Spitters, 2019) for smart contracts verification in Coq and the MetaCoq project (Sozeau et al, 2020).…”
Section: Introductionsupporting
confidence: 88%
“…The present work builds on and extends the ConCert smart contract certification framework presented by the three authors of the present work at the conference Certified Programs and Proofs in January 2020 (Annenkov et al, 2020). In this section, we describe the overall structure of ConCert focusing on the parts, relevant for the present work, and extensions developed in (Annenkov et al, 2021) and in the present work.…”
Section: The Concert Frameworkmentioning
confidence: 99%
See 1 more Smart Citation
“…Jiao et al [23] and Ribeiro et al [28] verify programs written in a subset of Solidity with respect to a high-level description of the semantics, and Bhargavan et al [11] verify smart contracts written in Solidity by translating them to F ★ . Annenkov et al [6] provide means of defining and verifying smart contracts in Coq and then extracting code for various blockchain platforms. A number of systems provide means of verifying the correctness of cryptographic protocols and their implementations, including [1ś4, 9,12,29].…”
Section: Related Workmentioning
confidence: 99%
“…Jiao et al [16] and Ribeiro et al [20] verify programs written in subset of Solidity with respect to a highlevel description of the semantics, and Bhargavan et al [7] verify smart contracts written in Solidity by translating them to F ⋆ . Annenkov et al [3] provide means of defining and verifying smart contracts in Coq and then extracting code for various blockchain platforms. At the other end of the chain, Abate et al [1] provide means of verifying the correctness of cryptographic protocols.…”
Section: Related Workmentioning
confidence: 99%