English
Related papers

Related papers: A Light-Weight Approach for Verifying Multi-Thread…

200 papers

Certifying verification algorithms not only return whether a given property holds or not, but also provide an accompanying independently checkable certificate and a corresponding witness. The certificate can be used to easily validate the…

Logic in Computer Science · Computer Science 2025-01-13 Christel Baier , Calvin Chau , Sascha Klüppelholz

Programmable Logic Controllers (PLCs) provide a prominent choice of implementation platform for safety-critical industrial control systems. Formal verification provides ways of establishing correctness guarantees, which can be quite…

Programming Languages · Computer Science 2019-02-15 Luis Garcia , Stefan Mitsch , Andre Platzer

In this paper we investigate the applicability of standard model checking approaches to verifying properties in probabilistic programming. As the operational model for a standard probabilistic program is a potentially infinite parametric…

Programming Languages · Computer Science 2016-07-28 Nils Jansen , Christian Dehnert , Benjamin Lucien Kaminski , Joost-Pieter Katoen , Lukas Westhofen

Efficient implementations of atomic objects such as concurrent stacks and queues are especially susceptible to programming errors, and necessitate automatic verification. Unfortunately their correctness criteria - linearizability with…

Logic in Computer Science · Computer Science 2015-05-26 Ahmed Bouajjani , Michael Emmi , Constantin Enea , Jad Hamza

In multi-agent IR pipelines for tasks such as search and ranking, LLM-based agents exchange intermediate reasoning in terms of Chain-of-Thought (CoT) with each other. Current CoT evaluation narrowly focuses on target task accuracy. However,…

Artificial Intelligence · Computer Science 2026-02-20 Shashank Aggarwal , Ram Vikas Mishra , Amit Awekar

Despite the vast body of research literature proposing algorithms with formal guarantees, the amount of verifiable code in today's systems remains minimal. This discrepancy stems from the inherent difficulty of verifying code, particularly…

Software Engineering · Computer Science 2025-01-10 Changjie Wang , Mariano Scazzariello , Marco Chiesa

High-performance computing often relies on parallel programming models such as MPI for distributed-memory systems. While powerful, these models are prone to subtle programming errors, leading to development of multiple correctness checking…

Distributed, Parallel, and Cluster Computing · Computer Science 2026-04-23 Yussur Mustafa Oraji , Christian Bischof

Refinement transforms an abstract system model into a concrete, executable program, such that properties established for the abstract model carry over to the concrete implementation. Refinement has been used successfully in the development…

Logic in Computer Science · Computer Science 2021-10-27 Aurel Bílý , Christoph Matheja , Peter Müller

We present a method for accelerating explicit-state backward search algorithms for systems of arbitrarily many finite-state threads. Our method statically analyzes the program executed by the threads for the existence of simple loops. We…

Software Engineering · Computer Science 2016-07-29 Peizun Liu , Thomas Wahl

Cache coherence protocols based on self-invalidation and self-downgrade have recently seen increased popularity due to their simplicity, potential performance efficiency, and low energy consumption. However, such protocols result in memory…

Logic in Computer Science · Computer Science 2023-06-22 Parosh Aziz Abdulla , Mohamed Faouzi Atig , Stefanos Kaxiras , Carl Leonardsson , Alberto Ros , Yunyun Zhu

This paper describes the development and verification of a competitive parachute system for Micro Air Vehicles, in particular focusing on verification of the embedded software. We first introduce the overall solution including a system…

Software Engineering · Computer Science 2017-06-12 Martin Becker , Markus Neumair , Alexander Söhn , Samarjit Chakraborty

We show how automatic tools for the verification of linear and branching time properties of procedural, multi-threaded, and functional programs as well as program synthesis can be naturally and uniformly seen as solvers of constraints in…

Logic in Computer Science · Computer Science 2014-06-02 Andrey Rybalchenko

A new approach to designing processor accelerators is presented. A new computing model and a special kind of accelerator with dynamic (end-user programmable) architecture is suggested. The new model considers a processor, in which a newly…

Distributed, Parallel, and Cluster Computing · Computer Science 2016-07-07 János Végh

In this dissertation we describe two contributions to the state of the art in reasoning about liveness and safety, respectively. Programs for multiprocessor machines commonly perform busy waiting for synchronization. We propose the first…

Logic in Computer Science · Computer Science 2024-03-15 Tobias Reinhard

As the cloud computing paradigm has gained prominence, the need for verifiable computation has grown increasingly urgent. The concept of verifiable computation enables a weak client to outsource difficult computations to a powerful, but…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-02-23 Justin Thaler , Mike Roberts , Michael Mitzenmacher , Hanspeter Pfister

Static verification provides strong correctness guarantees for code; however, fully specifying programs for static verification is a complex, burdensome process for users. Gradual verification was introduced to make this process easier by…

Programming Languages · Computer Science 2025-07-21 Priyam Gupta

Approximate computing (AC) is an emerging paradigm for energy-efficient computation. The basic idea of AC is to sacrifice high precision for low energy by allowing for hardware which only carries out "approximately correct" calculations.…

Software Engineering · Computer Science 2016-05-10 Tobias Isenberg , Marie-Christine Jakobs , Felix Pauck , Heike Wehrheim

Model checking undiscounted reachability and expected-reward properties on Markov decision processes (MDPs) is key for the verification of systems that act under uncertainty. Popular algorithms are policy iteration and variants of value…

Logic in Computer Science · Computer Science 2023-01-25 Arnd Hartmanns , Sebastian Junges , Tim Quatmann , Maximilian Weininger

We give the first algorithm for testing the feasibility of a system of sporadic real-time tasks on a set of identical processors, solving one major open problem in the area of multiprocessor real-time scheduling [S.K. Baruah and K. Pruhs,…

Data Structures and Algorithms · Computer Science 2012-09-28 Vincenzo Bonifaci , Alberto Marchetti-Spaccamela

We study safety verification for multithreaded programs with recursive parallelism (i.e. unbounded thread creation and recursion) as well as unbounded integer variables. Since the threads in each program configuration are structured in a…

Logic in Computer Science · Computer Science 2016-05-24 Matthew Hague , Anthony Widjaja Lin