2018
DOI: 10.1017/s0956796818000151
|View full text |Cite
|
Sign up to set email alerts
|

Iris from the ground up: A modular foundation for higher-order concurrent separation logic

Abstract: Iris is a framework for higher-order concurrent separation logic, which has been implemented in the Coq proof assistant and deployed very effectively in a wide variety of verification projects. Iris was designed with the express goal of simplifying and consolidating the foundations of modern separation logics, but it has evolved over time, and the design and semantic foundations of Iris itself have yet to be fully written down and explained together properly in one place. Here, we attempt to fill this gap, pre… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
277
0

Year Published

2019
2019
2020
2020

Publication Types

Select...
7
1

Relationship

2
6

Authors

Journals

citations
Cited by 237 publications
(277 citation statements)
references
References 68 publications
(123 reference statements)
0
277
0
Order By: Relevance
“…This has the important technical advantage that our proof technique can be naturally integrated with existing separation logics and verification tools supporting SL-style reasoning. We consider a standard sequential SL in this section, but our technique can also be directly integrated with a concurrent SL such as RGSep (as we show in §4.5) or frameworks such as Iris [21] supporting (ghost) resources ranging over user-defined separation algebras.…”
Section: Proof Techniquementioning
confidence: 99%
“…This has the important technical advantage that our proof technique can be naturally integrated with existing separation logics and verification tools supporting SL-style reasoning. We consider a standard sequential SL in this section, but our technique can also be directly integrated with a concurrent SL such as RGSep (as we show in §4.5) or frameworks such as Iris [21] supporting (ghost) resources ranging over user-defined separation algebras.…”
Section: Proof Techniquementioning
confidence: 99%
“…RustBelt [32] aims to formally prove high-level safety properties for Rust libraries with unsafe internal implementation, using manual reasoning on the higher-order concurrent separation logic Iris [35,33] on the Coq Proof Assistant [15]. Although their framework is flexible, the automation of the reasoning on 29 For example, inc-some/2 takes two mutable references in a list and increments on them; inc-all-t destructively increments all elements in a tree.…”
Section: Related Workmentioning
confidence: 99%
“…-If there exists a variable x that occurs only once in the pre-resolutive configurationK, then replace it with any value of the suitable sort. 33 We have carefully designed SLDC resolution to match it with abstract operational semantics, which assists the proof of Theorem 2.…”
Section: C3 Sldc Resolutionmentioning
confidence: 99%
“…A Hoare spec is also immediately useful in proofs, whereas with linearizability, one also has to verify the sequential program itself. Second, in linearizability it has traditionally been difficult to address ownership transfer of heaps between data structures [Cerone et al 2014;Gotsman and Yang 2012], whereas for us (and other extensions of CSL [da Rocha Pinto et al 2014;Dinsdale-Young et al 2010;Jung et al 2018Jung et al , 2015Liang and Feng 2013]), ownership transfer is directly inherited from separation logic. We also inherit from separation logic a way to dynamically nest parallel compositions of threads, whereas linearizability is typically considered on programs with a fixed, though arbitrary, number of threads.…”
Section: Related Workmentioning
confidence: 99%