Abstract
Blockchain ledgers based on the extended UTxO model support fully expressive smart contracts to specify permissions for performing certain actions, such as spending transaction outputs or minting assets. There have been some attempts to standardize the implementation of stateful programs using this infrastructure, with varying degrees of success. To remedy this, we introduce the framework of structured contracts to formalize what it means for a stateful program to be correctly implemented on the ledger. Using small-step semantics, our approach relates low-level ledger transitions to high-level transitions of the smart contract being specified, thus allowing users to prove that their abstract specification is adequately realized on the blockchain. We argue that the framework is versatile enough to cover a range of examples, in particular proving the equivalence of multiple concrete implementations of the same abstract specification. Building upon prior meta-theoretical results, our results have been mechanized in the Agda proof assistant, paving the way to rigorous verification of smart contracts.
| Original language | English |
|---|---|
| Title of host publication | 5th International Workshop on Formal Methods for Blockchains, FMBC 2024 |
| Editors | Bruno Bernardo, Diego Marmsoler |
| Publisher | Schloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing |
| ISBN (Electronic) | 9783959773171 |
| DOIs | |
| Publication status | Published - May 2024 |
| Event | 5th International Workshop on Formal Methods for Blockchains, FMBC 2024 - Luxembourg City, Luxembourg Duration: 7 Apr 2024 → … |
Publication series
| Name | OpenAccess Series in Informatics |
|---|---|
| Volume | 118 |
| ISSN (Print) | 2190-6807 |
Conference
| Conference | 5th International Workshop on Formal Methods for Blockchains, FMBC 2024 |
|---|---|
| Country/Territory | Luxembourg |
| City | Luxembourg City |
| Period | 7/04/24 → … |
Bibliographical note
Publisher Copyright:© Polina Vinogradova, Orestis Melkonian, Philip Wadler, Manuel Chakravarty, Jacco Krijnen, Michael Peyton Jones, James Chapman, and Tudor Ferariu.
Keywords
- Agda
- blockchain
- EUTxO
- formal verification
- ledger
- small-step semantics
- smart contract
- specification
- transition systems
- UTxO