Caper: Automatic Verification for Fine-grained Concurrency
Venue
Proceedings of the 26th European Symposium on Programming (ESOP’17), pp. 420–447
Publication Year
2017
Identifiers
Authors
- Thomas Dinsdale-Young
- Pedro da Rocha Pinto
- Kristoffer Just Andersen
- Lars Birkedal
Abstract
Recent program logics based on separation logic emphasise a modular approach to proving functional correctness for fine-grained concurrent programs. However, these logics have no automation support. In this paper, we present Caper, a prototype tool for automated reasoning in such a logic. Caper is based on symbolic execution, integrating reasoning about interference on shared data and about ghost resources that are used to mediate this interference. This enables Caper to verify the functional correctness of fine-grained concurrent algorithms.