Deductive proof of industrial smart contracts using why3

5Citations
Citations of this article
10Readers
Mendeley users who have this article in their library.
Get full text

Abstract

In this paper, we use a formal tool that performs deductive verification on industrial smart contracts, which are self-executing digital programs. Because smart contracts manipulate cryptocurrency and transaction information, if a bug occurs in such programs, serious consequences can happen, such as a loss of money. This paper aims to show that a language dedicated to deductive verification, called WhyML, can be a suitable language to write correct and proven contracts. We first encode existing contracts, using the Why3 tool, into WhyML program; next, we formulate specifications to be proven as the absence of RunTime Error and functional properties, then we verify the behaviour of the program using the Why3 system. Finally, we compile the WhyML contracts to the Ethereum Virtual Machine (EVM). Moreover, our approach estimates the cost of gas, which is a unit that measures the amount of computational effort during a transaction.

Cite

CITATION STYLE

APA

Nehaï, Z., & Bobot, F. (2020). Deductive proof of industrial smart contracts using why3. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 12232 LNCS, pp. 299–311). Springer. https://doi.org/10.1007/978-3-030-54994-7_22

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free