Litcius/Paper detail

Deadlock-Free Separation Logic: Linearity Yields Progress for Dependent Higher-Order Message Passing

Jules Jacobs, Jonas Kastberg Hinrichsen, Robbert Krebbers

2024Proceedings of the ACM on Programming Languages11 citationsDOIOpen Access PDF

Abstract

We introduce a linear concurrent separation logic, called LinearActris , designed to guarantee deadlock and leak freedom for message-passing concurrency. LinearActris combines the strengths of session types and concurrent separation logic, allowing for the verification of challenging higher-order programs with mutable state through dependent protocols. The key challenge is to prove the adequacy theorem of LinearActris, which says that the logic indeed gives deadlock and leak freedom “for free” from linearity. We prove this theorem by defining a step-indexed model of separation logic, based on connectivity graphs . To demonstrate the expressive power of LinearActris, we prove soundness of a higher-order (GV-style) session type system using the technique of logical relations. All our results and examples have been mechanized in Coq.

Topics & Concepts

SoundnessSeparation logicConcurrencyDeadlockComputer scienceSession (web analytics)Key (lock)Deadlock prevention algorithmsTheoretical computer scienceProgramming languageComputer securityWorld Wide WebDistributed systems and fault toleranceLogic, programming, and type systemsSecurity and Verification in Computing
Deadlock-Free Separation Logic: Linearity Yields Progress for Dependent Higher-Order Message Passing | Litcius