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.

برای دانلود باید عضویت طلایی داشته باشید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

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