Compositionality and Observational Refinement for Linearizability with Crashes

被引:0
|
作者
Vale, Arthur Oliveira [1 ]
Wang, Zhongye [1 ]
Chen, Yixuan [1 ]
You, Peixin [1 ]
Shao, Zhong [1 ]
机构
[1] Yale Univ, New Haven, CT 06520 USA
来源
关键词
Crash-Aware Linearizability; Strict Linearizability; Durable Linearibility; Compositional Linearizability;
D O I
10.1145/3689792
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Crash-safety is an important property of real systems, as the main functionality of some systems is resilience to crashes. Toward a compositional verification approach for crash-safety under full-system crashes, one observes that crashes propagate instantaneously to all components across all levels of abstraction, even to unspecified components, hindering compositionality. Furthermore, in the presence of concurrency, a correctness criterion that addresses both crashes and concurrency proves necessary. For this, several adaptations of linearizability have been suggested, each featuring different trade-offs between complexity and expressiveness. The recently proposed compositional linearizability framework shows that to achieve compositionality with linearizability, both a locality and observational refinement property are necessary. Despite that, no linearizability criterion with crashes has been proven to support an observational refinement property. In this paper, we define a compositional model of concurrent computation with full-system crashes. We use this model to develop a compositional theory of linearizability with crashes, which reveals a criterion, crash-aware linearizability, as its inherent notion of linearizability and supports both locality and observational refinement. We then show that strict linearizability and durable linearizability factor through crash-aware linearizability as two different ways of translating between concurrent computation with and without crashes, enabling simple proofs of locality and observational refinement for a generalization of these two criteria. Then, we show how the theory can be connected with a program logic for durable and crash-aware linearizability, which gives the first program logic that verifies a form of linearizability with crashes. We showcase the advantages of compositionality by verifying a library facilitating programming persistent data structures and a fragment of a transactional interface for a file system.
引用
收藏
页数:29
相关论文
共 35 条
  • [1] Faster Linearizability Checking via P-Compositionality
    Horn, Alex
    Kroening, Daniel
    FORMAL TECHNIQUES FOR DISTRIBUTED OBJECTS, COMPONENTS, AND SYSTEMS, FORTE 2015, 2015, 9039 : 50 - 65
  • [2] Relating trace refinement and linearizability
    Smith, Graeme
    Winter, Kirsten
    FORMAL ASPECTS OF COMPUTING, 2017, 29 (06) : 935 - 950
  • [3] Model Checking Linearizability via Refinement
    Liu, Yang
    Chen, Wei
    Liu, Yanhong A.
    Sun, Jun
    FM 2009: FORMAL METHODS, PROCEEDINGS, 2009, 5850 : 321 - +
  • [4] Verifying a quantitative relaxation of linearizability via refinement
    Adhikari, Kiran
    Street, James
    Wang, Chao
    Liu, Yang
    Zhang, Shaojie
    INTERNATIONAL JOURNAL ON SOFTWARE TOOLS FOR TECHNOLOGY TRANSFER, 2016, 18 (04) : 393 - 407
  • [5] Verifying Linearizability via Optimized Refinement Checking
    Liu, Yang
    Chen, Wei
    Liu, Yanhong A.
    Sun, Jun
    Zhang, Shao Jie
    Dong, Jin Song
    IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, 2013, 39 (07) : 1018 - 1039
  • [6] Using refinement calculus techniques to prove linearizability
    Jonsson, Bengt
    FORMAL ASPECTS OF COMPUTING, 2012, 24 (4-6) : 537 - 554
  • [7] Verifying a quantitative relaxation of linearizability via refinement
    Kiran Adhikari
    James Street
    Chao Wang
    Yang Liu
    Shaojie Zhang
    International Journal on Software Tools for Technology Transfer, 2016, 18 : 393 - 407
  • [8] Proving linearizability via non-atomic refinement
    Derrick, John
    Schellhorn, Gerhard
    Wehrheim, Heike
    INTEGRATED FORMAL METHODS, PROCEEDINGS, 2007, 4591 : 195 - 214
  • [9] Compositionality, Decompositionality and Refinement in Input/Output Conformance Testing
    Luthmann, Lars
    Mennicke, Stephan
    Lochau, Malte
    FORMAL ASPECTS OF COMPONENT SOFTWARE (FACS 2016), 2017, 10231 : 54 - 72
  • [10] Sums and Lovers: Case Studies in Security, Compositionality and Refinement
    McIver, Annabelle K.
    Morgan, Carroll C.
    FM 2009: FORMAL METHODS, PROCEEDINGS, 2009, 5850 : 289 - +