English
Related papers

Related papers: SolType: Refinement Types for Arithmetic Overflow …

200 papers

Smart contracts are autonomous and immutable pieces of code that are deployed on blockchain networks and run by miners. They were first introduced by Ethereum in 2014 and have since been used for various applications such as security…

Software Engineering · Computer Science 2024-07-08 Mahdi Fooladgar , Fathiyeh Faghih

Toman et al. have proposed a type system for automatic verification of low-level programs, which combines ownership types and refinement types to enable strong updates of refinement types in the presence of pointer aliases. We extend their…

Programming Languages · Computer Science 2023-12-12 Izumi Tanaka , Ken Sakayori , Naoki Kobayashi

Creating good type error messages for constraint-based type inference systems is difficult. Typical type error messages reflect implementation details of the underlying constraint-solving algorithms rather than the specific factors leading…

Programming Languages · Computer Science 2024-02-21 Ishan Bhanuka , Lionel Parreaux , David Binder , Jonathan Immanuel Brachthäuser

Testing has become an indispensable activity of software development, yet writing good and relevant tests remains a quite challenging task. One well-known problem is that it often is impossible or unrealistic to test for every outcome, as…

Programming Languages · Computer Science 2017-08-18 Dimitri Racordon , Didier Buchs

Reentrancy vulnerability as one of the most notorious vulnerabilities, has been a prominent topic in smart contract security research. Research shows that existing vulnerability detection presents a range of challenges, especially as smart…

Software Engineering · Computer Science 2024-03-19 Zexu Wang , Jiachi Chen , Yanlin Wang , Yu Zhang , Weizhe Zhang , Zibin Zheng

As smart contracts are growing in size and complexity, it becomes harder and harder to ensure their correctness and security. Due to the lack of isolation mechanisms a single mistake or vulnerability in the code can bring the whole system…

Software Engineering · Computer Science 2020-01-14 Mikhail Mandrykin , Jake O'Shannessy , Jacob Payne , Ilya Shchepetkov

The pattern-match safety problem is to verify that a given functional program will never crash due to non-exhaustive patterns in its function definitions. We present a refinement type system that can be used to solve this problem. The…

Programming Languages · Computer Science 2020-11-26 Eddie Jones , Steven Ramsay

Smart contracts deployed on blockchains such as Ethereum routinely manage large amounts of assets, making their security critical. Empirical studies show that real-world attacks often exploit flaws in the business logic of contracts that…

Cryptography and Security · Computer Science 2026-04-16 Massimo Bartoletti , Angelo Ferrando , Enrico Lipparini , Vadim Malvone

We present a new approach to automated reasoning about higher-order programs by endowing symbolic execution with a notion of higher-order, symbolic values. Our approach is sound and relatively complete with respect to a first-order solver…

Programming Languages · Computer Science 2016-03-22 Phuc C. Nguyen , Sam Tobin-Hochstadt , David Van Horn

We construct an empirically founded model of a repo trade intermediated by two broker-dealers and prove multiple equilibrium and the existence of equilibrium at the joint profit maximizing volume of trade. We then present a smart contract…

Theoretical Economics · Economics 2026-04-21 Daniel Aronoff , Robert M. Townsend

A key focus of the SODALITE project is to assure the quality and performance of the deployments of applications over heterogeneous Cloud and HPC environments. It offers a set of tools to detect and correct errors, smells, and bugs in the…

Software Engineering · Computer Science 2020-03-26 Indika Kumara , Giovanni Quattrocchi , Damian Tamburri , Willem-Jan Van Den Heuvel

With the rapid advancement of blockchain technology, smart contracts have enabled the implementation of increasingly complex functionalities. However, ensuring the security of smart contracts remains a persistent challenge across the stages…

Cryptography and Security · Computer Science 2025-05-01 Yuchen Ding , Hongli Peng , Xiaoqi Li

Vulnerability detection and safety of smart contracts are of paramount importance because of their immutable nature. Symbolic tools like OYENTE and MAIAN are typically used for vulnerability prediction in smart contracts. As these tools are…

Information Retrieval · Computer Science 2020-04-02 Ajay K. Gogineni , S. Swayamjyoti , Devadatta Sahoo , Kisor K. Sahu , Raj kishore

Compiler diagnostics for type inference failures are notoriously bad, and type classes only make the problem worse. By introducing a complex search process during inference, type classes can lead to wholly inscrutable or useless errors. We…

Programming Languages · Computer Science 2025-04-29 Gavin Gray , Will Crichton , Shriram Krishnamurthi

Integer overflow accounts for one of the major source of bugs in software. Verification systems typically assume a well defined underlying semantics for various integer operations and do not explicitly check for integer overflow in…

Programming Languages · Computer Science 2019-09-23 Asankhaya Sharma

Refinement type checkers are a powerful way to reason about functional programs. For example, one can prove properties of a slow, specification implementation, porting the proofs to an optimized implementation that behaves the same. Without…

Programming Languages · Computer Science 2022-07-20 Niki Vazou , Michael Greenberg

The Ethereum blockchain platform supports the execution of decentralised applications or smart contracts. These typically hold and transfer digital currency to other parties on the platform; however, they have been subject to numerous…

Programming Languages · Computer Science 2019-04-16 Franklin Schrans , Daniel Hails , Alexander Harkness , Sophia Drossopoulou , Susan Eisenbach

The security of smart contracts, which are an important part of blockchain technology, has attracted much attention. In particular, reentrancy vulnerability, which is hidden and complex, poses a great threat to smart contracts. In order to…

Cryptography and Security · Computer Science 2023-12-27 Chang Chu

We introduce SCooLS, our Smart Contract Learning (Semi-supervised) engine. SCooLS uses neural networks to analyze Ethereum contract bytecode and identifies specific vulnerable functions. SCooLS incorporates two key elements: semi-supervised…

Cryptography and Security · Computer Science 2023-10-19 Tamer Abdelaziz , Aquinas Hobor

Our aim is to statically verify that in a given reactive program, the length of collection variables does not grow beyond a given bound. We propose a scalable type-based technique that checks that each collection variable has a given…

Programming Languages · Computer Science 2019-01-29 Tianhan Lu , Pavol Cerny , Bor-Yuh Evan Chang , Ashutosh Trivedi