Automated Verification of Linearization Policies

被引:6
作者
Abdulla, Parosh Aziz [1 ]
Jonsson, Bengt [1 ]
Cong Quy Trinh [1 ]
机构
[1] Uppsala Univ, Uppsala, Sweden
来源
STATIC ANALYSIS, (SAS 2016) | 2016年 / 9837卷
关键词
FORMAL VERIFICATION; MODEL CHECKING; ABSTRACTION; LINEARIZABILITY;
D O I
10.1007/978-3-662-53413-7_4
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We present a novel framework for automated verification of linearizability for concurrent data structures that implement sets, stacks, and queues. The framework requires the user to provide a linearization policy, which describes how linearization point placement in different concurrent threads affect each other; such linearization policies are often provided informally together with descriptions of new algorithms. We present a specification formalism for linearization policies which allows the user to specify, in a simple and concise manner, complex patterns including non-fixed linearization points. To automate verification, we extend thread-modular reasoning to bound the number of considered threads, and use a novel symbolic representation for unbounded heap structures that store data from an unbounded domain. We have implemented our framework in a tool and successfully used it to prove linearizability for a wide range of algorithms, including all implementations of concurrent sets, stacks, and queues based on singly-linked lists that are known to us from the literature.
引用
收藏
页码:61 / 83
页数:23
相关论文
共 36 条
  • [1] Abdulla PA, 2013, LECT NOTES COMPUT SC, V7795, P324, DOI 10.1007/978-3-642-36742-7_23
  • [2] Amit D, 2007, LECT NOTES COMPUT SC, V4590, P477
  • [3] [Anonymous], 2001, DISC
  • [4] [Anonymous], 2008, ART MULTIPROCESSOR P
  • [5] Berdine J, 2008, LECT NOTES COMPUT SC, V5123, P399
  • [6] Bouajjani A, 2013, LECT NOTES COMPUT SC, V7792, P290, DOI 10.1007/978-3-642-37036-6_17
  • [7] Cerny P, 2010, LECT NOTES COMPUT SC, V6174, P465, DOI 10.1007/978-3-642-14295-6_41
  • [8] Colvin R, 2006, LECT NOTES COMPUT SC, V4144, P475, DOI 10.1007/11817963_44
  • [9] Derrick J, 2014, LECT NOTES COMPUT SC, V8442, P200, DOI 10.1007/978-3-319-06410-9_15
  • [10] Doherty S, 2004, LECT NOTES COMPUT SC, V3235, P97