Scilla: a Smart Contract Intermediate-Level LAnguage

01/02/2018
by   Ilya Sergey, et al.
0

This paper outlines key design principles of Scilla---an intermediate-level language for verified smart contracts. Scilla provides a clean separation between the communication aspect of smart contracts on a blockchain, allowing for the rich interaction patterns, and a programming component, which enjoys principled semantics and is amenable to formal verification. Scilla is not meant to be a high-level programming language, and we are going to use it as a translation target for high-level languages, such as Solidity, for performing program analysis and verification, before further compilation to an executable bytecode. We describe the automata-based model of Scilla, present its programming component and show how contract definitions in terms of automata streamline the process of mechanised verification of their safety and temporal properties.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
01/07/2020

Albert, an intermediate smart-contract language for the Tezos blockchain

Tezos is a smart-contract blockchain. Tezos smart contracts are written ...
research
05/08/2023

Capturing Smart Contract Design with DCR Graphs

Smart contracts manage blockchain assets. While smart contracts embody b...
research
11/26/2018

MetAcsl: Specification and Verification of High-Level Properties

Modular deductive verification is a powerful technique capable to show t...
research
01/09/2020

SMT-Friendly Formalization of the Solidity Memory Model

Solidity is the dominant programming language for Ethereum smart contrac...
research
04/10/2020

Resources: A Safe Language Abstraction for Money

Smart contracts are programs that implement potentially sophisticated tr...
research
08/06/2021

Extracting functional programs from Coq, in Coq

We implement extraction of Coq programs to functional languages based on...
research
07/12/2019

Delta -- new logic programming language and Delta-methodology for p-computable programs on Turing Complete Languages

In paper describes the new logic programming language Delta, which have ...

Please sign up or login with your details

Forgot password? Click here to reset