English
Related papers

Related papers: Verification of Building Blocks for Asynchronous C…

200 papers

Blockchain systems and smart contracts provide ways to securely implement multi-party transactions without the use of trusted intermediaries, which currently underpin many commercial transactions. However, they do so by transferring trust…

Logic in Computer Science · Computer Science 2018-11-16 Ron van der Meyden

We present the formal verification of a low-power x86 floating-point multiplier. The multiplier operates iteratively and feeds back intermediate results in redundant representation. It supports x87 and SSE instructions in various precisions…

Logic in Computer Science · Computer Science 2011-10-24 Peter-Michael Seidel

OpenACC is a high-level directive-based parallel programming model that can manage the sophistication of heterogeneity in architectures and abstract it from the users. The portability of the model across CPUs and accelerators has gained the…

Software Engineering · Computer Science 2022-08-30 A. M. Jarmusch , A. Liu , C. Munley , D. Horta , V. Ravichandran , J. Denny , S. Chandrasekaran

We consider concurrent systems consisting of a finite but unknown number of components, that are replicated instances of a given set of finite state automata. The components communicate by executing interactions which are simultaneous…

Formal Languages and Automata Theory · Computer Science 2019-02-08 Marius Bozga , Radu Iosif , Joseph Sifakis

The ubiquity of stabilizer circuits in the design and operation of quantum computers makes techniques to verify their correctness essential. The simulation of stabilizer circuits, which aims to replicate their behavior using a classical…

Quantum Physics · Physics 2023-09-19 Vadym Kliuchnikov , Michael Beverland , Adam Paetznick

ACL2 provides a systems programming capability that allows one to write code that uses and extends ACL2 inside of ACL2. However, for soundness reasons, ACL2 bars the unrestricted use of certain kinds of programming constructs, like…

Logic in Computer Science · Computer Science 2022-05-25 Andrew T. Walter , Panagiotis Manolios

We tackle the challenge of ensuring the deadlock-freedom property for message-passing processes that communicate asynchronously in cyclic process networks. Our contributions are twofold. First, we present Asynchronous Priority-based…

Logic in Computer Science · Computer Science 2024-11-20 Bas van den Heuvel , Jorge A. Pérez

An engineering design process may involve software modules that can executed concurrently. Concurrent modules can be very easily subject to some synchronization errors. This paper discusses verification process for such engineering…

Software Engineering · Computer Science 2017-04-24 Jerzy Mieścicki , Mikołaj Baszun , Wiktor B. Daszczuk , Bogdan D. Czejdo

We propose an automated method for computing inductive invariants applied to check deadlock-freedom for parametric component-based systems. The method generalizes the approach for computing structural trap invariants from bounded to…

Logic in Computer Science · Computer Science 2019-02-18 Marius Bozga , Radu Iosif , Joseph Sifakis

We present a static deadlock analysis approach for C/pthreads. The design of our method has been guided by the requirement to analyse real-world code. Our approach is sound (i.e., misses no deadlocks) for programs that have defined…

Programming Languages · Computer Science 2016-07-26 Daniel Kroening , Daniel Poetzl , Peter Schrammel , Björn Wachter

Neural certificates have emerged as a powerful tool in cyber-physical systems control, providing witnesses of correctness. These certificates, such as barrier functions, often learned alongside control policies, once verified, serve as…

Symbolic Computation · Computer Science 2025-07-17 Thomas A. Henzinger , Konstantin Kueffner , Emily Yu

The current verification flow of complex systems uses different engines synergistically: virtual prototyping, formal verification, simulation, emulation and FPGA prototyping. However, none is able to verify a complete architecture.…

Logic in Computer Science · Computer Science 2018-02-12 Tomas Grimm , Djones Lettnin , Michael Hübner

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ć

We present an executable formally verified SAT encoding of classical AI planning. We use the theorem prover Isabelle/HOL to perform the verification. We experimentally test the verified encoding and show that it can be used for reasonably…

Artificial Intelligence · Computer Science 2023-03-09 Mohammad Abdulaziz , Friedrich Kurz

Mechanistic interpretability often identifies circuits inside Transformer models, but explanations of those circuits are usually validated through examples, ablations, and manual reasoning. This leaves a gap between finding a plausible…

Machine Learning · Computer Science 2026-05-26 Neel Somani

Satisfiability-based verification techniques, leveraging modern Boolean satisfiability (SAT) and Satisfiability Modulo Theories (SMT) solvers, have demonstrated efficacy in addressing practical problem instances within program analysis.…

Logic in Computer Science · Computer Science 2025-09-23 Markus Krahl , Matthias Güdemann , Stefan Wallentowitz

There is an increasing necessity to deploy autonomous systems in highly heterogeneous, dynamic environments, e.g. service robots in hospitals or autonomous cars on highways. Due to the uncertainty in these environments, the verification…

Software Engineering · Computer Science 2016-12-16 Adina Aniculaesei , Daniel Arnsberger , Falk Howar , Andreas Rausch

Vector clock algorithms are basic wait-free building blocks that facilitate causal ordering of events. As wait-free algorithms, they are guaranteed to complete their operations within a finite number of steps. Stabilizing algorithms allow…

Distributed, Parallel, and Cluster Computing · Computer Science 2017-12-25 Iosif Salem , Elad Michael Schiller

We present a novel scalable deadlock analyser L2D2 capable of handling C code with low-level unstructured lock manipulation. L2D2 runs along the call tree of a program, starting from its leaves, and analyses each function just once, without…

Software Engineering · Computer Science 2022-07-06 Dominik Harmim , Vladimír Marcin , Lucie Svobodová , Tomáš Vojnar

Component-based systems evolve as a new component is added or an existing one is replaced by a newer version. Hence, it is appealing to assure the new system still preserves its safety properties. However, instead of inspecting the new…

Formal Languages and Automata Theory · Computer Science 2017-09-14 Rosa Abbasi , Fatemeh Ghassemi , Ramtin Khosravi