Linearizability Checker
Purpose
Provides expert guidance on verifying linearizability of concurrent data structures through testing and proof.
Capabilities
- History linearization algorithms
- Linearization point identification
- Counterexample generation for violations
- Concurrent history visualization
- Linearizability proof templates
- Testing framework integration
Usage Guidelines
- History Collection: Record concurrent operation histories
- Linearization: Check if history is linearizable
- Counterexample Analysis: Analyze non-linearizable executions
- Proof Construction: Build linearizability proofs
- Testing: Systematic testing for violations
Tools/Libraries
- LineUp
- Wing-Gong algorithm
- Lincheck
- JCStress