English
Related papers

Related papers: Soft Contract Verification

200 papers

Experience with lightweight formal methods suggests that programmers are willing to write specification if it brings tangible benefits to their usual development activities. This paper considers stronger specifications and studies whether…

Software Engineering · Computer Science 2013-08-14 Nadia Polikarpova , Carlo A. Furia , Yu Pei , Yi Wei , Bertrand Meyer

Existing techniques of Design by Contract do not allow software developers to specify complete contracts in many cases. Incomplete contracts leave room for malicious implementations. This article complements Design by Contract with a simple…

Software Engineering · Computer Science 2016-02-15 Alexandr Naumchev , Bertrand Meyer

In the field of Business Process Management formal models for the control flow of business processes have been designed since more than 15 years. Which methods are best suited to verify the bulk of these models? The first step is to select…

Logic in Computer Science · Computer Science 2011-05-04 Christoph Schneider , Joachim Wehler

Reusable software components need expressive specifications. This paper outlines a rigorous foundation to model-based contracts, a method to equip classes with strong contracts that support accurate design, implementation, and formal…

Software Engineering · Computer Science 2013-08-14 Nadia Polikarpova , Carlo A. Furia , Bertrand Meyer

With the increasing adoption of smart contracts, ensuring their security has become a critical concern. Numerous vulnerabilities and attacks have been identified and exploited, resulting in significant financial losses. In response,…

Cryptography and Security · Computer Science 2024-08-13 Zhiyuan Wei , Jing Sun , Zijian Zhang , Xianhao Zhang , Xiaoxuan Yang , Liehuang Zhu

Methods for proving that concurrent software does not leak its secrets has remained an active topic of research for at least the past four decades. Despite an impressive array of work, the present situation remains highly unsatisfactory.…

Logic in Computer Science · Computer Science 2020-01-31 Daniel Schoepe , Toby Murray , Andrei Sabelfeld

Context: Smart contract vulnerabilities pose significant security risks for the Ethereum ecosystem, driving the development of automated tools for detection and mitigation. Smart contracts are written in Solidity, a programming language…

Software Engineering · Computer Science 2025-04-09 Gerardo Iuliano , Davide Corradini , Michele Pasqua , Mariano Ceccato , Dario Di Nucci

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…

Quantum protocols such as the BB84 Quantum Key Distribution protocol exchange qubits to achieve information-theoretic security guarantees. Many variants thereof were proposed, some of them being already deployed. Existing security proofs in…

Cryptography and Security · Computer Science 2019-04-11 Lucca Hirschi

Design-by-contract is an important technique for model-based design in which a composite system is specified by a collection of contracts that specify the behavioural assumptions and guarantees of each component. In this paper, we describe…

Logic in Computer Science · Computer Science 2020-07-30 Simon Foster , Ana Cavalcanti , Samuel Canham , Jim Woodcock , Frank Zeyda

Bounded model checking (BMC) is vital for finding program property violations. For unsafe programs, BMC can quickly find an execution path from an initial state to the violated state that refutes a given safety property. However, BMC…

Software Engineering · Computer Science 2022-09-22 Mohannad Aldughaim , Kaled Alshmrany , Rafael Menezes , Lucas Cordeiro , Alexandru Stancu

Stipula is a domain-specific programming language designed to model legal contracts with enforceable properties, especially those involving asset transfers and obligations. This paper presents a methodology to formally verify the…

Software Engineering · Computer Science 2025-09-29 Reiner Hähnle , Cosimo Laneve , Adele Veschetti

The last decade has sparked several valiant efforts in deductive verification of distributed agreement protocols such as consensus and leader election. Oddly, there have been far fewer verification efforts that go beyond the core protocols…

Programming Languages · Computer Science 2021-09-14 Nouraldin Jaber , Christopher Wagner , Swen Jacobs , Milind Kulkarni , Roopsha Samanta

Ensuring correctness of smart contracts is paramount to ensuring trust in blockchain-based systems. This paper studies the safety and security of smart contracts in the \emph{Azure Blockchain Workbench}, an enterprise…

Programming Languages · Computer Science 2019-04-30 Yuepeng Wang , Shuvendu K. Lahiri , Shuo Chen , Rong Pan , Isil Dillig , Cody Born , Immad Naseer

In this paper we address the issue of change after deployment in safety-critical embedded system applications. Our goal is to substitute lab-based verification with in-field formal analysis to determine whether an update may be safely…

Software Engineering · Computer Science 2016-06-03 Sönke Holthusen , Sophie Quinton , Ina Schaefer , Johannes Schlatow , Martin Wegner

Static verification techniques leverage Boolean formula satisfiability solvers such as SAT and SMT solvers that operate on conjunctive normal form and first order logic formulae, respectively, to validate programs. They force bounds on…

Software Engineering · Computer Science 2014-09-25 Fadi A. Zaraket , Mohamad Noureddine

We present a toolchain for developing and verifying smart contracts that can be executed on Bitcoin. The toolchain is based on BitML, a recent domain-specific language for smart contracts with a computationally sound embedding into Bitcoin.…

Programming Languages · Computer Science 2019-08-06 Nicola Atzei , Massimo Bartoletti , Stefano Lande , Nobuko Yoshida , Roberto Zunino

Large language models (LLMs) have changed the reality of how software is produced. Within the wider software engineering community, among many other purposes, they are explored for code generation use cases from different types of input. In…

Software Engineering · Computer Science 2025-08-01 Fabian Stiehle , Hans Weytjens , Ingo Weber

Smart contracts are programs that implement potentially sophisticated transactions on modern blockchain platforms. In the rapidly evolving blockchain environment, smart contract programming languages must allow users to write expressive…

Programming Languages · Computer Science 2020-07-24 Sam Blackshear , David L. Dill , Shaz Qadeer , Clark W. Barrett , John C. Mitchell , Oded Padon , Yoni Zohar

We present a novel and well automatable approach to formal verification of programs with underspecified semantics, i.e., a language semantics that leaves open the order of certain evaluations. First, we reduce this problem to…

Programming Languages · Computer Science 2022-02-14 Eduard Kamburjan , Nathan Wasser
‹ Prev 1 8 9 10 Next ›