Revisiting Abstraction Functions For Reasoning About Concurrency
暂无分享,去创建一个
Hoare introduced abstraction functions for reasoning about abstract data types in 1972 [1]. What happens in the presence of concurrency? Reasoning about objects in a concurrent system necessitates extending the notion of abstraction functions in order to model the system’s inherent nondeterminisitic behavior. My talk presented in detail the extensions required to reason about lock-free concurrent objects, used to build linearizable systems. It also discussed briefly a different extension required to reason about atomic objects, used to build fault-tolerant distributed systems.
[1] Maurice Herlihy,et al. Linearizability: a correctness condition for concurrent objects , 1990, TOPL.