mlsanityData to 14 Oct 2026

Lolisa: Formal syntax and semantics for a subset of the solidity programming language in Mathematical Tool Coq

arXiv 1803.09885 ↗First posted 27 Mar 2018cs.PLcited by 1

Not on the map. Why?

Abstract (arXiv)

This article presents the formal syntax and semantics for a large subset of the Solidity programming language developed for the Etheruem blockchain platform based on our resent work about developing a general, extensible, and reusable formal memory (GERM) framework and an extension of Curry-Howard isomorphism, denoted as execution-verification isomorphism (EVI). This subset is denoted as Lolisa, which, to our knowledge, is the first mechanized and validated formal syntax and semantics developed for Solidity. The formal syntax of Lolisa adopts a stronger static type system than Solidity for enhanced type safety. In addition, Lolisa not only includes nearly all the syntax components of Solidity, such as mapping, modifier, contract, and address types, but it also contains general-purpose programming language features, such as multiple return values, pointer arithmetic, struct, and field access. Therefore, the inherent compatibility of Lolisa allows Solidity programs to be directly translated into Lolisa with a line-by-line correspondence without rebuilding or abstracting, and, in addition, the inherent generality of Lolisa allows it to be extended to express other programming languages as well. To this end, we also present a preliminary scheme for extending Lolisa to other languages systematically.

Key facts. Cited by 1 paper in the map (data through 14 Oct 2026). First posted on arXiv 27 Mar 2018.

Builds on

No reference list yet.

Built on by

Cited by year

Citing papers per year: 2022: 1.

1 paper.