Shape predicates allow unbounded verification of linearizability using canonical abstraction
Friggens, D. & Groves, L. (2014). Shape predicates allow unbounded verification of linearizability using canonical abstraction. In B. H. Thomas & D. Parry (Eds.), Proceedings of the Thirty-Seventh Australasian Computer Science Conference (ACSC 2014), CRPIT. 147. Auckland, New Zealand (pp. 49-56).
Permanent Research Commons link: https://hdl.handle.net/10289/8572
Canonical abstraction is a static analysis technique that represents states as 3-valued logical structures, and is able to construct finite representations of systems with infinite statespaces for verification. The granularity of the abstraction can be altered by the definition of instrumentation predicates, which derive their meaning from other predicates. We introduce shape predicates for preserving certain structures of the state during abstraction. We show that shape predicates allow linearizability to be verified for concurrent data structures using canonical abstraction alone, and use the approach to verify a stack and two queue algorithms. This contrasts with previous efforts to verify linearizability with canonical abstraction, which have had to employ other techniques as well.
Australian Computer Society Inc
Copyright © 2014, the authors. Reproduction for academic, not-for-profit purposes permitted provided this text is included.
- General Papers