English
Related papers

Related papers: Lolisa: Formal syntax and semantics for a subset o…

200 papers

Formal methods have been employed for requirements verification for a long time. However, it is difficult to automatically derive properties from natural language requirements. SpecVerify addresses this challenge by integrating large…

Software Engineering · Computer Science 2025-07-08 Weiqi Wang , Marie Farrell , Lucas C. Cordeiro , Liping Zhao

Smart contracts written in Solidity are programs used in blockchain networks, such as Etherium, for performing transactions. However, as with any piece of software, they are prone to errors and may present vulnerabilities, which malicious…

Logic in Computer Science · Computer Science 2021-11-29 Kunjian Song , Nedas Matulevicius , Eddie B. de Lima Filho , Lucas C. Cordeiro

We present a big-step and small-step operational semantics for Yul -- the intermediate language used by the Solidity compiler to produce EVM bytecode -- in a mathematical notation that is congruous with the literature of programming…

Programming Languages · Computer Science 2024-07-02 Vasileios Koutavas , Yu-Yang Lin , Nikos Tzevelekos

Modern blockchain, such as Ethereum, supports the deployment and execution of so-called smart contracts, autonomous digital programs with significant value of cryptocurrency. Executing smart contracts requires gas costs paid by users, which…

Emerging Technologies · Computer Science 2024-06-25 Majd Soud , Waltteri Nuutinen , Grischa Liebel

This demo abstract introduces a new light-weight programming language koa which is suitable for blockchain system design and implementation. In this abstract, the basic features of koa are introduced including working system (with…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-01-13 Junhui Kim , Joongheon Kim

For performance and verification in machine learning, new methods have recently been proposed that optimise learning systems to satisfy formally expressed logical properties. Among these methods, differentiable logics (DLs) are used to…

Logic in Computer Science · Computer Science 2024-07-08 Reynald Affeldt , Alessandro Bruni , Ekaterina Komendantskaya , Natalia Ślusarz , Kathrin Stark

Large language models (LLMs) excel at generating code from natural language instructions, yet they often lack an understanding of security vulnerabilities. This limitation makes it difficult for LLMs to avoid security risks in generated…

Cryptography and Security · Computer Science 2025-05-08 Lingxiang Wang , Hainan Zhang , Qinnan Zhang , Ziwei Wang , Hongwei Zheng , Jin Dong , Zhiming Zheng

The rise of blockchain has brought smart contracts into mainstream use, creating a demand for smart contract generation tools. While large language models (LLMs) excel at generating code in general-purpose languages, their effectiveness on…

Software Engineering · Computer Science 2026-01-14 Zhifan Ye , Jiachi Chen , Zhenzhe Shao , Lingfeng Bao , Xiaohu Yang , Zhongxin Liu

Smart contracts are computer programs that run on blockchain platforms, with Solidity being the most widely used language for their development. As blockchain technology advances, smart contracts have become increasingly important across…

Software Engineering · Computer Science 2025-06-05 Lantian Li , Zhihao Liu , Zhongxing Yu

Smart Contracts are essential blockchain components, mainly written in Solidity. The high availability of public Solidity code leads to frequent reuse and high clone ratios. Since cloning can propagate vulnerabilities and flaws, effective…

A bug or error is a common problem that any software or computer program may encounter. It can occur from badly writing the program, a typing error or bad memory management. However, errors can become a significant issue if the unsafe…

Programming Languages · Computer Science 2019-08-29 Zeinab Nehai , François Bobot

Formal verification can provably guarantee the correctness of critical system software, but the high proof burden has long hindered its wide adoption. Recently, Large Language Models (LLMs) have shown success in code analysis and synthesis.…

Formal Languages and Automata Theory · Computer Science 2023-11-27 Jianan Yao , Ziqiao Zhou , Weiteng Chen , Weidong Cui

Large Language Models for Code (code LLMs) have demonstrated remarkable performance across various software engineering (SE) tasks, increasing the application of code LLMs in software development. Despite the success of code LLMs, there…

Software Engineering · Computer Science 2024-07-08 Thu-Trang Nguyen , Thanh Trong Vu , Hieu Dinh Vo , Son Nguyen

Smart contracts are the artifact of the blockchain that provide immutable and verifiable specifications of physical transactions. Solidity is a domain-specific programming language with the purpose of defining smart contracts. It aims at…

Software Engineering · Computer Science 2020-05-14 Jian Zhu , Kai Hu , Mamoun Filali , Jean-Paul Bodeveix , Jean-Pierre Talpin

We implement extraction of Coq programs to functional languages based on MetaCoq's certified erasure. We extend the MetaCoq erasure output language with typing information and use it as an intermediate representation, which we call…

Programming Languages · Computer Science 2021-08-21 Danil Annenkov , Mikkel Milo , Jakob Botsch Nielsen , Bas Spitters

Symbolic execution (SE) tools often rely on intermediate languages (ILs) to support multiple programming languages, promising reusability and efficiency. In practice, this approach introduces trade-offs between performance, accuracy, and…

Programming Languages · Computer Science 2026-04-21 Sacha-Élie Ayoun , Opale Sjöstedt , Azalea Raad

Ensuring the correctness of smart contracts is critical, as even subtle flaws can lead to severe financial losses. While bug detection tools able to spot common vulnerability patterns can serve as a first line of defense, most real-world…

Cryptography and Security · Computer Science 2026-01-12 Massimo Bartoletti , Enrico Lipparini , Livio Pompianu

Emin G\"un Sirer once said: It's clear that writing a robust, secure smart contract requires extreme amounts of diligence. It's more similar to writing code for a nuclear power reactor, than to writing loose web code [...] Yet the current…

Software Engineering · Computer Science 2019-08-05 Gustavo Betarte , Maximiliano Cristiá , Carlos Luna , Adrián Silveira , Dante Zanarini

The widespread lack of broad source code verification on blockchain explorers such as Etherscan, where despite 78,047,845 smart contracts deployed on Ethereum (as of May 26, 2025), a mere 767,520 (< 1%) are open source, presents a severe…

Cryptography and Security · Computer Science 2025-06-25 Isaac David , Liyi Zhou , Dawn Song , Arthur Gervais , Kaihua Qin

We present solc-verify, a source-level verification tool for Ethereum smart contracts. Solc-verify takes smart contracts written in Solidity and discharges verification conditions using modular program analysis and SMT solvers. Built on top…

Programming Languages · Computer Science 2020-03-17 Ákos Hajdu , Dejan Jovanović