Trillium: Higher-Order Concurrent and Distributed Separation Logic for Intensional Refinement

被引:2
|
作者
Timany, Amin [1 ]
Gregersen, Simon Oddershede [1 ]
Stefanesco, Leo [2 ]
Hinrichsen, Jonas Kastberg [1 ]
Gondelman, Leon [1 ]
Nieto, Abel [1 ]
Birkedal, Lars [1 ]
机构
[1] Aarhus Univ, Aarhus, Denmark
[2] MPI SWS, Saarbrucken, Germany
基金
欧洲研究理事会;
关键词
Distributed systems; separation logic; refinement; higher-order logic; concurrency; formal verification;
D O I
10.1145/3632851
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Expressive state-of-the-art separation logics rely on step-indexing to model semantically complex features and to support modular reasoning about imperative higher-order concurrent and distributed programs. Step-indexing comes, however, with an inherent cost: it restricts the adequacy theorem of program logics to a fairly simple class of safety properties. In this paper, we explore if and how intensional refinement is a viable methodology for strengthening higher-order concurrent (and distributed) separation logic to prove non-trivial safety and liveness properties. Specifically, we introduce Trillium, a language-agnostic separation logic framework for showing intensional refinement relations between traces of a program and a model. We instantiate Trillium with a concurrent language and develop Fairis, a concurrent separation logic, that we use to show liveness properties of concurrent programs under fair scheduling assumptions through a fair liveness-preserving refinement of a model. We also instantiate Trillium with a distributed language and obtain an extension of Aneris, a distributed separation logic, which we use to show refinement relations between distributed systems and TLA(+) models.
引用
收藏
页数:32
相关论文
共 50 条
  • [21] Charge! A framework for higher-order separation logic in Coq
    IT University of Copenhagen, Denmark
    Lect. Notes Comput. Sci., (315-331):
  • [22] Asynchronous Probabilistic Couplings in Higher-Order Separation Logic
    Gregersen, Simon Oddershede
    Aguirre, Alejandro
    Haselwarter, Philipp G.
    Tassarotti, Joseph
    Birkedal, Lars
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2024, 8 (POPL):
  • [23] A simple model of separation logic for higher-order store
    Birkedal, Lars
    Reus, Bernhard
    Schwinghammer, Jan
    Yang, Hongseok
    AUTOMATA, LANGUAGES AND PROGRAMMING, PT 2, PROCEEDINGS, 2008, 5126 : 348 - +
  • [24] ON HIGHER-ORDER LOGIC
    KOGALOVS.SR
    DOKLADY AKADEMII NAUK SSSR, 1966, 171 (06): : 1272 - &
  • [25] BI-hyperdoctrines, higher-order separation logic, and abstraction
    Biering, Bodil
    Birkedal, Lars
    Torp-Smith, Noah
    ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2007, 29 (05):
  • [26] Tachis: Higher-Order Separation Logic with Credits for Expected Costs
    Haselwarter, Philipp G.
    Li, Kwing Hei
    de Medeiros, Markus
    Gregersen, Simon Oddershede
    Aguirre, Alejandro
    Tassarotti, Joseph
    Birkedal, Lars
    PROCEEDINGS OF THE ACM ON PROGRAMMING LANGUAGES-PACMPL, 2024, 8 (OOPSLA):
  • [27] Connecting Higher-Order Separation Logic to a First-Order Outside World
    Mansky, William
    Honore, Wolf
    Appel, Andrew W.
    PROGRAMMING LANGUAGES AND SYSTEMS ( ESOP 2020): 29TH EUROPEAN SYMPOSIUM ON PROGRAMMING, 2020, 12075 : 428 - 455
  • [28] Unifying Refinement and Hoare-Style Reasoning in a Logic for Higher-Order Concurrency
    Turon, Aaron
    Dreyer, Derek
    Birkedal, Lars
    ACM SIGPLAN NOTICES, 2013, 48 (09) : 377 - 390
  • [29] HIGHER-ORDER LOGIC PROGRAMMING
    MILLER, DA
    NADATHUR, G
    LECTURE NOTES IN COMPUTER SCIENCE, 1986, 225 : 448 - 462
  • [30] CERES in higher-order logic
    Hetzl, Stefan
    Leitsch, Alexander
    Weller, Daniel
    ANNALS OF PURE AND APPLIED LOGIC, 2011, 162 (12) : 1001 - 1034