Delay-Bounded Scheduling Without Delay! (Extended Technical Report)

05/15/2021
by   Andrew Johnson, et al.
0

We consider the broad problem of analyzing safety properties of asynchronous concurrent programs under arbitrary thread interleavings. Delay-bounded deterministic scheduling, introduced in prior work, is an efficient bug-finding technique to curb the large cost associated with full scheduling nondeterminism. In this paper we first present a technique to lift the delay bound for the case of finite-domain variable programs, thus adding to the efficiency of bug detection the ability to prove safety of programs under arbitrary thread interleavings. Second, we demonstrate how, combined with predicate abstraction, our technique can both refute and verify safety properties of programs with unbounded variable domains, even for unbounded thread counts. Previous work has established that, for non-trivial concurrency routines, predicate abstraction induces a highly complex abstract program semantics. Our technique, however, never statically constructs an abstract parametric program; it only requires some abstract-states set to be closed under certain actions, thus eliminating the dependence on the existence of verification algorithms for abstract programs. We demonstrate the efficiency of our technique on many examples used in prior work, and showcase its simplicity compared to earlier approaches on the unbounded-thread Ticket Lock protocol.

READ FULL TEXT

Authors

page 1

page 2

page 3

page 4

05/24/2019

Verifying Asynchronous Event-Driven Programs Using Partial Abstract Transformers (Extended Manuscript)

We address the problem of analyzing asynchronous event-driven programs, ...
04/13/2018

CUBA: Interprocedural Context-UnBounded Analysis of Concurrent Programs (Extended Manuscript)

A classical result by Ramalingam about synchronization-sensitive interpr...
07/06/2021

Thread-modular Analysis of Release-Acquire Concurrency

We present a thread-modular abstract interpretation(TMAI) technique to v...
10/27/2017

Intensional and Extensional Semantics of Bounded and Unbounded Nondeterminism

We give extensional and intensional characterizations of nondeterministi...
05/30/2021

A Rice's Theorem for Abstract Semantics

Classical results in computability theory, notably Rice's theorem, focus...
11/04/2019

Inferring Lower Runtime Bounds for Integer Programs

We present a technique to infer lower bounds on the worst-case runtime c...
02/23/2016

Unbounded Human Learning: Optimal Scheduling for Spaced Repetition

In the study of human learning, there is broad evidence that our ability...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.