2019
DOI: 10.1145/3371074
|View full text |Cite
|
Sign up to set email alerts
|

Actris: session-type based reasoning in separation logic

Abstract: Message passing is a useful abstraction to implement concurrent programs. For real-world systems, however, it is often combined with other programming and concurrency paradigms, such as higher-order functions, mutable state, shared-memory concurrency, and locks. We present Actris: a logic for proving functional correctness of programs that use a combination of the aforementioned features. Actris combines the power of modern concurrent separation logics with a first-class protocol mechanismÐbased on session typ… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
14
0

Year Published

2020
2020
2024
2024

Publication Types

Select...
4
4

Relationship

0
8

Authors

Journals

citations
Cited by 32 publications
(15 citation statements)
references
References 57 publications
0
14
0
Order By: Relevance
“…Recently, several program logics, most notably those that are built on top of the Iris framework [Bizjak et al 2019;Hinrichsen et al 2020;Jung et al 2018Jung et al , 2020Jung et al , 2015, the SteelCore framework [Swamy et al 2020], VST [Appel et al 2014], and also FCSL [Ley-Wild and Nanevski 2013;Nanevski et al 2014;Sergey et al 2015aSergey et al ,b, 2016, have allowed PCMs to be declared at the user level, and sometimes even constructed by means of a predetermined set of combinators.…”
Section: Related Workmentioning
confidence: 99%
“…Recently, several program logics, most notably those that are built on top of the Iris framework [Bizjak et al 2019;Hinrichsen et al 2020;Jung et al 2018Jung et al , 2020Jung et al , 2015, the SteelCore framework [Swamy et al 2020], VST [Appel et al 2014], and also FCSL [Ley-Wild and Nanevski 2013;Nanevski et al 2014;Sergey et al 2015aSergey et al ,b, 2016, have allowed PCMs to be declared at the user level, and sometimes even constructed by means of a predetermined set of combinators.…”
Section: Related Workmentioning
confidence: 99%
“…Our socket protocol definitions are quite similar to the multi-party asynchronous session types with progress encoded by having suitable ghostassertions and using the magic wand. Actris [8] is a logic for session-type based reasoning about message-passing in actor-based languages.…”
Section: Related Workmentioning
confidence: 99%
“…Embedding session types in CSL has also been investigated beforeÐthe Actris system embedded in Iris explores this in depth (Hinrichsen et al 2019). Our channel types explore a similar direction, though we only scratch the surface, in that as a proof concept of the expressiveness of the underlying logic, we only give an encoding for synchronous simplex channels.…”
Section: Related Workmentioning
confidence: 99%
“…A notable case in point is the Iris framework (Jung et al 2018) embedded in Coq (The Coq development team), which provides an impredicative, higher-order, concurrent separation logic (CSL) (O'Hearn 2004;Reynolds 2002) within which to specify and prove programs. Iris has been used to model various languages and constructs, and to verify many interesting programs (Chajed et al 2019;Hinrichsen et al 2019;Krogh-Jespersen et al 2019). However, Iris is not in itself a programming language: it must instead be instantiated with a deeply embedded representation and semantics of one provided by the user.…”
Section: Introductionmentioning
confidence: 99%