English
Related papers

Related papers: Proving Liveness of Parameterized Programs

200 papers

To prove liveness properties of concurrent systems, it is often necessary to postulate progress, fairness and justness properties. This paper investigates how the necessary progress, fairness and justness assumptions can be added to or…

Logic in Computer Science · Computer Science 2015-01-15 Rob van Glabbeek , Peter Höfner

We characterize the complexity of liveness verification for parameterized systems consisting of a leader process and arbitrarily many anonymous and identical contributor processes. Processes communicate through a shared, bounded-value…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-05-26 Antoine Durand-Gasselin , Javier Esparza , Pierre Ganty , Rupak Majumdar

Proving the linearizability of highly concurrent data structures, such as those using optimistic concurrency control, is a challenging task. The main difficulty is in reasoning about the view of the memory obtained by the threads, because…

Distributed, Parallel, and Cluster Computing · Computer Science 2018-08-07 Yotam M. Y. Feldman , Constantin Enea , Adam Morrison , Noam Rinetzky , Sharon Shoham

We explore the following question: Is a decision-making program fair, for some useful definition of fairness? First, we describe how several algorithmic fairness questions can be phrased as program verification problems. Second, we discuss…

Programming Languages · Computer Science 2016-10-20 Aws Albarghouthi , Loris D'Antoni , Samuel Drews , Aditya Nori

The world is rarely static -- many problems need not only be solved once but repeatedly, under changing conditions. This setting is addressed by the "multistage" view on computational problems. We study the "diverse multistage" variant,…

Data Structures and Algorithms · Computer Science 2021-05-12 Leon Kellerhals , Malte Renken , Philipp Zschoche

This article aims to describe and explain the theoretical foundations of concurrent and set concurrent algorithms, considering an asynchronous shared memory system where any number of processes can crash. Verification of concurrent…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-07-27 Jose Damian Lopez Diaz

Many complex systems demand manifold resources to be supplied from distinct channels to function properly, i.e, water, gas, and electricity for a city. Here, we study a model for viability of such systems demanding more than one type of…

Physics and Society · Physics 2014-05-02 Byungjoon Min , K. -I. Goh

When validating formal models, sizable effort goes into ensuring two types of properties: safety properties (nothing bad happens) and liveness properties (something good occurs eventually. Event-B supports checking safety properties all…

Logic in Computer Science · Computer Science 2025-05-27 Sebastian Stock , Michael Leuschel , Atif Mashkoor

One of my recent papers transforms an NP-Complete problem into the question of whether or not a feasible real solution exists to some Linear Program. The unique feature of this Linear Program is that though there is no explicit bound on the…

Computational Complexity · Computer Science 2010-03-08 Deepak Ponvel Chermakani

To derive a program for a given specification R means to find an artifact P that satisfies two conditions: P is executable in some programming language; and P is correct with respect to R. Refinement-based program derivation achieves this…

Software Engineering · Computer Science 2018-10-24 Marwa Benabdelali , Lamia Labed Jilani , Wided Ghardallou , Ali Mili

Complex systems typically have many different parts and facets, with different characteristics. In a multi-paradigm approach to modeling, formalisms with different natures are used in combination to describe complementary parts and aspects…

Logic in Computer Science · Computer Science 2013-08-14 Marcello M. Bersani , Carlo A. Furia , Matteo Pradella , Matteo Rossi

Avoiding access conflicts is a major challenge in the design of multi-threaded programs. In the context of real-time systems, the absence of conflicts can be guaranteed by ensuring that no two potentially conflicting accesses are ever…

Programming Languages · Computer Science 2014-12-03 Jingshu Chen , Marie Duflot , Stephan Merz

Higher-order recursion schemes are a higher-order analogue of Boolean Programs; they form a natural class of abstractions for functional programs. We present a new, efficient algorithm for checking CTL properties of the trees generated by…

Programming Languages · Computer Science 2020-12-25 M. M. Lester , R. P. Neatherway , C. -H. L. Ong , S. J. Ramsay

Program logics typically reason about an over-approximation of program behaviour to prove the absence of bugs. Recently, program logics have been proposed that instead prove the presence of bugs by means of under-approximate reasoning,…

Logic in Computer Science · Computer Science 2022-03-15 Christopher M. Poskitt

This paper considers the problem of maximizing multiple linear functions over the probability simplex. A classification of feasible points is indicated. A necessary and sufficient condition for a member of each class to be an efficient…

Optimization and Control · Mathematics 2024-12-30 Anas Mifrani

We present the SER modeling language for automatically verifying serializability of concurrent programs, i.e., whether every concurrent execution of the program is equivalent to some serial execution. SER programs are suitably restricted to…

Formal Languages and Automata Theory · Computer Science 2026-01-21 Guy Amir , Mark Barbone , Nicolas Amat , Jules Jacobs

This paper presents a {theoretical study} of the problem of verifying linearizability at runtime, where one seeks for a concurrent algorithm for verifying that the current execution of a given concurrent shared object implementation is…

Distributed, Parallel, and Cluster Computing · Computer Science 2025-11-14 Armando Castañeda , Gilde Valeria Rodríguez

Causal consistency is one of the most adopted consistency criteria for distributed implementations of data structures. It ensures that operations are executed at all sites according to their causal precedence. We address the issue of…

Logic in Computer Science · Computer Science 2016-11-16 Ahmed Bouajjani , Constantin Enea , Rachid Guerraoui , Jad Hamza

Various programming tools, languages, and environments give programmers the impression of changing a program while it is running. This experience of liveness has been discussed for over two decades and a broad spectrum of research on this…

Programming Languages · Computer Science 2018-08-01 Patrick Rein , Stefan Ramson , Jens Lincke , Robert Hirschfeld , Tobias Pape

Reasoning about hyperproperties of concurrent implementations, such as the guarantees these implementations provide to randomized client programs, has been a long-standing challenge. Standard linearizability enables the use of atomic…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-08-21 Yoav Ben Shimon , Ori Lahav , Sharon Shoham