Publication | Closed Access
Verifying C11 programs operationally
34
Citations
24
References
2019
Year
Unknown Venue
Software MaintenanceC11 ProgramsC11 Memory ModelEngineeringProgram CheckingVerificationComputer-aided VerificationMemory Model (Programming)Software AnalysisFormal VerificationOperational SemanticsProof CalculusProgramming Language TheoryConcurrent ProgrammingAbstract InterpretationComputer ScienceSoftware VerificationProgram AnalysisAutomated ReasoningSoftware TestingConcurrency TheoryFormal MethodsSystem Software
This paper develops an operational semantics for a release-acquire fragment of the C11 memory model with relaxed accesses. We show that the semantics is both sound and complete with respect to the axiomatic model of Batty et al. The semantics relies on a per-thread notion of observability, which allows one to reason about a weak memory C11 program in program order. On top of this, we develop a proof calculus for invariant-based reasoning, which we use to verify the release-acquire version of Peterson's mutual exclusion algorithm.
| Year | Citations | |
|---|---|---|
Page 1
Page 1