TY - JOUR
T1 - Formal verification of scalable nonzero indicators
AU - SUN, Jun
AU - LIU, Yang
AU - SUN, Jun
AU - DONG, Jin Song
AU - CHEN, Wei
AU - LIU, Yanhong A.
AU - Liu, Alan Z
PY - 2009/7/3
Y1 - 2009/7/3
N2 - Concurrent algorithms are notoriously difficult to design correctly, and high performance algorithms that make little or no use of locks even more so. In this paper, we describe a formal verification of a recent concurrent data structure Scalable NonZero Indicators. The algorithm supports incrementing, decrementing, and querying the shared counter in an efficient and linearizable way without blocking. The algorithm is highly non-trivial and it is challenging to prove the correctness. We have proved that the algorithm satisfies linearizability, by showing a trace refinement relation from the concrete implementation to its abstract specification. These models are specified in CSP and verified automatically using the model checking toolkit PAT.
AB - Concurrent algorithms are notoriously difficult to design correctly, and high performance algorithms that make little or no use of locks even more so. In this paper, we describe a formal verification of a recent concurrent data structure Scalable NonZero Indicators. The algorithm supports incrementing, decrementing, and querying the shared counter in an efficient and linearizable way without blocking. The algorithm is highly non-trivial and it is challenging to prove the correctness. We have proved that the algorithm satisfies linearizability, by showing a trace refinement relation from the concrete implementation to its abstract specification. These models are specified in CSP and verified automatically using the model checking toolkit PAT.
UR - https://ink.library.smu.edu.sg/sis_research/4962
M3 - Article
JO - Proceedings of the 21st International Conference on Software Engineering Knowledge Engineering (SEKE'2009), Boston, July 1-3
JF - Proceedings of the 21st International Conference on Software Engineering Knowledge Engineering (SEKE'2009), Boston, July 1-3
ER -