Skip to content
Snippets Groups Projects
Commit 9b5255a5 authored by Pedro da Rocha Pinto's avatar Pedro da Rocha Pinto
Browse files

Updated publications to reflect ESOP 2017 details.

parent 5ae83d5e
No related branches found
No related tags found
No related merge requests found
......@@ -540,7 +540,10 @@ Building on separation logic with concurrent abstract predicates (CAP), we intro
Booktitle = {Proceedings of the 26\textsuperscript{th} European Symposium on Programming ({ESOP})},
Year = {2017},
Month = {April},
Pages = {420--447},
url = {http://dx.doi.org/10.1007/978-3-662-54434-1_16},
doi = {10.1007/978-3-662-54434-1_16},
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.},
Project = { concurrency }
......@@ -550,9 +553,13 @@ Building on separation logic with concurrent abstract predicates (CAP), we intro
author = {Shale Xiong and Pedro {da Rocha Pinto} and Gian Ntzik and Philippa Gardner},
title = {Abstract Specifications for Concurrent Maps},
booktitle = {Proceedings of the 26\textsuperscript{th} European Symposium on Programming ({ESOP})},
year = {2017},
month = {April},
abstract = {Despite recent advances in reasoning about concurrent data structure libraries, the largest implementations in java.util.concurrent have yet to be verified. The key issue lies in the development of modular specifications, which provide clear logical boundaries between clients and implementations. A solution is to use recent advances in fine-grained concurrency reasoning, in particular the introduction of abstract atomicity to concurrent separation logic reasoning. We present two specifications of concurrent maps, both providing the clear boundaries we seek. We show that these specifications are equivalent, in that they can be built from each other. We show how we can verify client programs, such as a concurrent set and a producer-consumer client. We also give a substantial first proof that the main operations of ConcurrentSkipListMap in java.util.concurrent satisfy the map specification. This work demonstrates that we now have the technology to verify the largest implementations in java.util.concurrent.},
Year = {2017},
Month = {April},
Pages = {964--990},
url = {http://dx.doi.org/10.1007/978-3-662-54434-1_36},
doi = {10.1007/978-3-662-54434-1_36},
Abstract = {Despite recent advances in reasoning about concurrent data structure libraries, the largest implementations in java.util.concurrent have yet to be verified. The key issue lies in the development of modular specifications, which provide clear logical boundaries between clients and implementations. A solution is to use recent advances in fine-grained concurrency reasoning, in particular the introduction of abstract atomicity to concurrent separation logic reasoning. We present two specifications of concurrent maps, both providing the clear boundaries we seek. We show that these specifications are equivalent, in that they can be built from each other. We show how we can verify client programs, such as a concurrent set and a producer-consumer client. We also give a substantial first proof that the main operations of ConcurrentSkipListMap in java.util.concurrent satisfy the map specification. This work demonstrates that we now have the technology to verify the largest implementations in java.util.concurrent.},
project = {concurrency, tada},
}
@Article{Fragoso2016Mashic,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment