Verified Lock-Free Session Channels with Linking
Thomas Somers, Robbert Krebbers
摘要
Type systems and program logics based on session types provide powerful high-level reasoning principles for message-passing concurrency. Modern versions employ bidirectional session channels that (1) are asynchronous so that send operations do not block, (2) have buffers in both directions so that both parties can send messages in parallel, and (3) feature a link operation (also called forward ) to concisely write programs in process style . These features complicate a low-level lock-free implementation of channels and therefore increase the gap between the meta theory of prior work—which is verified w.r.t. a high-level semantics of channels ( e.g ., π -calculus)—and the code that runs on an actual computer. We address this problem by verifying a low-level lock-free implementation of session channels w.r.t. a high-level specification based on session types. We carry out our verification in a layered manner by employing the Iris framework for concurrent separation logic. We start with an abstract specification of (unidirectional) queues—of which we provide a linked-list and array-segment based implementation—and gradually build up to session channels with all of the aforementioned features. To make a layered verification possible we develop two logical abstractions— queues with ghost linking and pairing invariants —to reason about the atomicity and changing endpoints due to linking, respectively. All our results are mechanized in the Coq proof assistant.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper1
问问它们各自怎么用它它引用的顶会 Paper5
- Actris: session-type based reasoning in separation logicJonas Kastberg Hinrichsen, Jesper Bengtson, Robbert KrebbersPOPL 2020 · 被引用 44 次
- Compass: strong and compositional library specifications in relaxed memory separation logicHoang-Hai Dang, Jaehwang Jung, Jaemin Choi, Duc-Than Nguyen 等PLDI 2022 · 被引用 19 次
- Deadlock-Free Separation Logic: Linearity Yields Progress for Dependent Higher-Order Message PassingJules Jacobs, Jonas Kastberg Hinrichsen, Robbert KrebbersPOPL 2024 · 被引用 12 次
- Multris: Functional Verification of Multiparty Message Passing in Separation LogicJonas Kastberg Hinrichsen, Jules Jacobs, Robbert KrebbersOOPSLA 2024 · 被引用 6 次
- A Proof Recipe for Linearizability in Relaxed Memory Separation LogicSunho Park, Jaewoo Kim, Ike Mulder, Jaehwang Jung 等PLDI 2024 · 被引用 4 次
相关 Paper
- Mixtris: Mechanised Higher-Order Separation Logic for Mixed Choice Multiparty Message PassingJonas Kastberg Hinrichsen, Iwan Quémerais, Lars BirkedalOOPSLA 2026
- Beyond Backtracking: Connections in Fine-Grained Concurrent Separation LogicIke Mulder, Lukasz Czajka, Robbert KrebbersPLDI 2023 · 被引用 2 次
- Fair termination of binary sessionsLuca Ciccone, Luca PadovaniPOPL 2022 · 被引用 8 次
- A separation logic for effect handlersPaulo Emílio de Vilhena, François PottierPOPL 2021 · 被引用 24 次
- Mechanizing Session-Types using a Structural View: Enforcing Linearity without LinearityChuta Sano, Ryan Kavanagh, Brigitte PientkaOOPSLA 2023 · 被引用 10 次
