Litcius/Paper detail

Concurrent incorrectness separation logic

Azalea Raad, Josh Berdine, Derek Dreyer, Peter W. O’Hearn

2022Proceedings of the ACM on Programming Languages25 citationsDOIOpen Access PDF

Abstract

Incorrectness separation logic (ISL) was recently introduced as a theory of under-approximate reasoning, with the goal of proving that compositional bug catchers find actual bugs. However, ISL only considers sequential programs. Here, we develop concurrent incorrectness separation logic (CISL), which extends ISL to account for bug catching in concurrent programs. Inspired by the work on Views, we design CISL as a parametric framework, which can be instantiated for a number of bug catching scenarios, including race detection, deadlock detection, and memory safety error detection. For each instance, the CISL meta-theory ensures the soundness of incorrectness reasoning for free, thereby guaranteeing that the bugs detected are true positives.

Topics & Concepts

Separation logicComputer scienceSoundnessFalse positive paradoxProgramming languageDeadlockArtificial intelligenceSecurity and Verification in ComputingSoftware Testing and Debugging TechniquesParallel Computing and Optimization Techniques
Concurrent incorrectness separation logic | Litcius