Repository logo
Log in(current)
Repository logoMIT Open ScholarshipDSpace@MIT
  1. Home
  2. MIT Open Access Articles
  3. MIT Open Access Articles
  4. Lilo: A Higher-Order, Relational Concurrent Separation Logic for Liveness

Lilo: A Higher-Order, Relational Concurrent Separation Logic for Liveness

Thumbnail Image
Download
Name

3720525.pdf

Size

942.88 KB

Format

Adobe PDF

Checksum (MD5)

80867dfd81a1295f44b5d35eb4db6575

Download all files submitted through automated deposit
3720525.zip (815.65 KB)
Author(s)
Lee, Dongjae
•
Lee, Janggun
•
Yoon, Taeyoung
•
Cho, Minki
•
Kang, Jeehoon
•
Hur, Chung-Kil
Date Issued
April 9, 2025
Journal
Proceedings of the ACM on Programming Languages
Publisher
ACM
Citation
Dongjae Lee, Janggun Lee, Taeyoung Yoon, Minki Cho, Jeehoon Kang, and Chung-Kil Hur. 2025. Lilo: A Higher-Order, Relational Concurrent Separation Logic for Liveness. Proc. ACM Program. Lang. 9, OOPSLA1, Article 125 (April 2025), 28 pages.
Version
Final published version
Abstract
Concurrent separation logic (CSL) has excelled in verifying safety properties across various applications, yet its application to liveness properties remains limited. While existing approaches like TaDA Live and Fair Operational Semantics (FOS) have made significant strides, they still face limitations. TaDA Live struggles to verify certain classes of programs, particularly concurrent objects with non-local linearization points, and lacks support for general liveness properties such as "good things happen infinitely often". On the other hand, FOS’s scalability is hindered by the absence of thread modular reasoning principles and modular specifications. This paper introduces Lilo, a higher-order, relational CSL designed to overcome these limitations. Our core observation is that FOS helps us to maintain simple primitives for our logic, which enable us to explore design space with fewer restrictions. As a result, Lilo adapts various successful techniques from literature. It supports reasoning about non-terminating programs by supporting refinement proofs, and also provides Iris-style invariants and modular specifications to facilitate modular verification. To support higher-order reasoning without relying on step-indexing, we develop a technique called stratified propositions inspired by Nola. In particular, we develop novel abstractions for liveness reasoning that bring these techniques together in a uniform way. We show Lilo’s scalability through case studies, including the first termination-guaranteeing modular verification of the elimination stack. Lilo and examples in this paper are mechanized in Coq.
MIT Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Terms of Use
Creative Commons Attribution
https://creativecommons.org/licenses/by/4.0/
Persistent DSpace Link
https://hdl.handle.net/1721.1/164738
DOI of Published Version
https://doi.org/10.1145/3720525
Repository logo
PrivacyPermissionsAccessibilityContact us
Repository logo
Notify us about copyright concerns.