Owicki-Gries Reasoning for C11 Programs with Relaxed Dependencies
نویسندگان
چکیده
Deductive verification techniques for C11 programs have advanced significantly in recent years with the development of operational semantics and associated logics increasingly large fragments C11. However, these been developed a restricted setting to avoid thin-air-read problem. In this paper, we propose an that leverages intra-thread partial order (called semantic dependencies) induced by recently denotational event-structure-based semantics. We prove our is sound complete respect present logic generalises Owicki-Gries framework RC11 (repaired C11), demonstrate use over several example proofs.
منابع مشابه
Owicki-Gries Reasoning for Weak Memory Models
We show that even in the absence of auxiliary variables, the wellknown Owicki-Gries method for verifying concurrent programs is unsound for weak memory models. By strengthening its non-interference check, however, we obtain OGRA, a program logic that is sound for reasoning about programs in the release-acquire fragment of the C11 memory model. We demonstrate the usefulness of this logic by appl...
متن کاملVerification of parallel programs with the Owicki-Gries and Rely-Guarantee methods in Isabelle, HOL
This thesis presents the first formalization of the Owicki-Gries method and its compositional version, the rely-guarantee method, in a theorem prover. These methods are widely used for correctness proofs of parallel imperative programs with shared variables. We define syntax, semantics and proof rules in Isabelle/HOL, which is the instantiation of higher-order logic in the theorem prover Isabel...
متن کاملReasoning about Relaxed Programs
Approximate program transformations such as task skipping [27, 28], loop perforation [20, 21, 32], multiple selectable implementations [3, 4, 15], approximate function memoization [10], and approximate data types [31] produce programs that can execute at a variety of points in an underlying performance versus accuracy tradeoff space. Namely, these transformed programs trade accuracy of their re...
متن کاملIncremental Verification of Owicki/Gries Proof Outlines Using PVS
Verifications of parallel programs are frequently based on automated state-space exploration techniques known as model checking. To avoid state-space explosion problems, theorem proving techniques can be used, for example by manually annotating programs with suitable assertions and using these assertions to prove their correctness (e.g. using the Owicki/Gries theory). We propose a method to sup...
متن کاملOn the Strength of Owicki-Gries for Resources
In multithreaded programs data are often separated into lock-protected resources. Properties of those resources are typically verified by modular, OwickiGries-like methods. The modularity of the Owicki-Gries method has its price: proving some properties may require manual introduction of auxiliary variables. What properties can be proven without the burden of introducing auxiliary variables? We...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Lecture Notes in Computer Science
سال: 2021
ISSN: ['1611-3349', '0302-9743']
DOI: https://doi.org/10.1007/978-3-030-90870-6_13