English
Related papers

Related papers: Formal verification in Solidity and Move: insights…

200 papers

Artificial intelligence assisted mathematical proof has become a highly focused area nowadays. One key problem in this field is to generate formal mathematical proofs from natural language proofs. Due to historical reasons, the formal proof…

Programming Languages · Computer Science 2024-05-14 Lihan Xie , Zhicheng Hui , Qinxiang Cao

The validation of requirements is a fundamental step in the development process of safety-critical systems. In safety critical applications such as aerospace, avionics and railways, the use of formal methods is of paramount importance both…

Software Engineering · Computer Science 2012-06-28 Alessandro Cimatti , Marco Roveri , Angelo Susi , Stefano Tonetta

Autonomous systems -- such as self-driving cars, autonomous drones, and automated trains -- must come with strong safety guarantees. Over the past decade, techniques based on formal methods have enjoyed some success in providing strong…

Software Engineering · Computer Science 2020-06-17 Nathan Fulton , Nathan Hunt , Nghia Hoang , Subhro Das

Hybrid systems with both discrete and continuous dynamics are an important model for real-world cyber-physical systems. The key challenge is to ensure their correct functioning w.r.t. safety requirements. Promising techniques to ensure…

Logic in Computer Science · Computer Science 2015-05-27 Stefan Mitsch , Grant Olney Passmore , Andre Platzer

This article presents a verification and validation activity performed in an industrial context, to validate configuration data of a metro CBTC system by creating a formal B model of these configuration data and of their properties. A…

Software Engineering · Computer Science 2012-10-29 Frédéric Badeau , Marielle Doche-Petit

We describe the verification of an existing smart contract for a simple casino application, using the Whiley specification and programming language, with a fully automated verification engine based on Boogie and Z3. After finding and fixing…

Logic in Computer Science · Computer Science 2021-06-29 Mark Utting , Liam Kent

We propose and develop a framework for validating smart contracts derived from e-contracts. The goal is to ensure the generated smart contracts fulfil all the conditions outlined in their corresponding e-contracts. By confirming alignment…

Software Engineering · Computer Science 2025-04-29 Sangharatna Godboley , P. Radha Krishna , Sunkara Sri Harika , Pooja Varnam

When blockchain systems are said to be trustless, what this really means is that all the trust is put into software. Thus, there are strong incentives to ensure blockchain software is correct -- vulnerabilities here cost millions and break…

Software Engineering · Computer Science 2025-10-20 Jan Corazza , Ivan Gavran , Gabriela Moreira , Daniel Neider

Formal software verification uses mathematical techniques to establish that software has certain properties. For example, that the behaviour of a software system satisfies certain logically-specified properties. Formal methods have a long…

Software Engineering · Computer Science 2019-03-12 Michael Winikoff

The complexity of digital embedded systems has been increasing in different safety-critical applications such as industrial automation, process control, transportation, and medical digital devices. The correct operation of these systems…

Software Engineering · Computer Science 2022-04-28 Fayhaa Hameedi Khlaif , Shawkat Sabah Khairullah

Smart contracts are frequently vulnerable to control-flow attacks based on confused deputies, reentrancy, and incorrect error handling. These attacks exploit the complexity of interactions among multiple possibly unknown contracts. Existing…

Cryptography and Security · Computer Science 2025-04-24 Siqiu Yao , Haobin Ni , Stephanie Ma , Noah Schiff , Andrew C. Myers , Ethan Cecchetti

Formal methods provide remarkable tools allowing for high levels of confidence in the correctness of developments. Their use is therefore encouraged, when not required, for the development of systems in which safety or security is…

Logic in Computer Science · Computer Science 2009-02-24 Eric Jaeger , Thérèse Hardin

Proponents of software verification have argued that simpler code is easier to verify: that is, that verification tools issue fewer false positives and require less human intervention when analyzing simpler code. We empirically validate…

Software Engineering · Computer Science 2023-11-01 Kobi Feldman , Martin Kellogg , Oscar Chaparro

Software verification witnesses are a common exchange format for software verification tools. They were developed to provide arguments supporting the verification result, allowing other tools to reproduce the verification results.…

Programming Languages · Computer Science 2025-01-22 Matthias Heizmann , Dominik Klumpp , Marian Lingsch-Rosenfeld , Frank Schüssele

The safety of automated driving systems must be justified by convincing arguments and supported by compelling evidence to persuade certification agencies, regulatory entities, and the general public to allow the systems on public roads.…

Software Engineering · Computer Science 2024-10-28 Jonas Krook , Yuvaraj Selvaraj , Wolfgang Ahrendt , Martin Fabian

In this paper, we investigate the strategies adopted by Solidity developers to fix security vulnerabilities in smart contracts. Vulnerabilities are categorized using the DASP TOP 10 taxonomy, and fixing strategies are extracted from GitHub…

Rust aims to be a safe programming language applicable to systems programming applications. In particular, its type system has strong guardrails to prevent a variety of issues, such as memory safety bugs and data races. However, these…

Programming Languages · Computer Science 2024-10-04 Alex Le Blanc , Patrick Lam

The increasing use of deep neural networks for safety-critical applications, such as autonomous driving and flight control, raises concerns about their safety and reliability. Formal verification can address these concerns by guaranteeing…

Artificial Intelligence · Computer Science 2018-02-06 Lindsey Kuper , Guy Katz , Justin Gottschlich , Kyle Julian , Clark Barrett , Mykel Kochenderfer

Our lives become increasingly dependent on safety- and security-critical systems, so formal techniques are advocated for engineering such systems. One of such techniques is validation obligations that enable formalizing requirements early…

Logic in Computer Science · Computer Science 2022-07-08 Sebastian Stock , Atif Mashkoor , Alexander Egyed

The usage of error handling in Solidity smart contracts is vital because smart contracts perform transactions that should be verified. Transactions that are not carefully handled, may lead to program crashes and vulnerabilities, implying…

‹ Prev 1 4 5 6 7 8 10 Next ›