Abstract
This paper describes the first results and on-going work in the VerCors project. The VerCors project is about Verification of Concurrent Data Structures. Its goal is to develop a specification language and program logic for concurrent programs, and in particular for concurrent data structures, as these are the essential building blocks of many different concurrent programs. The program logic is based on our earlier work on permission-based separation logic for Java. This is an extension of Hoare logic that is particularly convenient to reason about concurrent programs.
The paper first describes the tool set that is currently being built to support reasoning with this logic. It supports a specification language that combines features of separation logic with JML. For the verification, the program and its annotations are encoded into
Chalice, and then we reuse the Chalice translation to Boogie to generate the proof obligations.
Next, the paper describes our first results on data structure specifications. We use histories to keep track of the changes to the data structures, and we show how these histories allow us to derive other conclusions about the data structure implementations. We also discuss how we plan to reason about volatile variables, and how we will use this to verify lock-free data structures.
Throughout the paper, we discuss our plans for future work
within the VerCors project.
| Original language | English |
|---|---|
| Title of host publication | Sixth Workshop Programming Languages meets Program Verification (PLPV 2012) |
| Place of Publication | New York |
| Publisher | Association for Computing Machinery |
| Pages | 71-82 |
| Number of pages | 12 |
| ISBN (Print) | 978-1-4503-1125-0 |
| DOIs | |
| Publication status | Published - 24 Jan 2012 |
| Event | 6th Workshop Programming Languages meets Program Verification, PLPV 2012 - Philadelphia, United States Duration: 24 Jan 2012 → 24 Jan 2012 Conference number: 6 |
Workshop
| Workshop | 6th Workshop Programming Languages meets Program Verification, PLPV 2012 |
|---|---|
| Abbreviated title | PLPV |
| Country/Territory | United States |
| City | Philadelphia |
| Period | 24/01/12 → 24/01/12 |
Keywords
- n/a OA procedure
- Concurrency
- Separation Logic
- CR-F.3.1
- EC Grant Agreement nr.: FP7/258405
- CR-D.2.4
- Permissions
Fingerprint
Dive into the research topics of 'The VerCors Project: Setting Up Basecamp'. Together they form a unique fingerprint.Cite this
- APA
- Author
- BIBTEX
- Harvard
- Standard
- RIS
- Vancouver