Proceedings of the 2016 ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applicatio 2016
DOI: 10.1145/2983990.2983997
|View full text |Cite
|
Sign up to set email alerts
|

An operational semantics for C/C++11 concurrency

Abstract: The C/C++11 concurrency model balances two goals: it is relaxed enough to be efficiently implementable and (leaving aside the "thin-air" problem) it is strong enough to give useful guarantees to programmers. It is mathematically precise and has been used in verification research and compiler testing. However, the model is expressed in an axiomatic style, as predicates on complete candidate executions. This suffices for computing the set of allowed executions of a small litmus test, but it does not directly sup… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
33
0

Year Published

2018
2018
2023
2023

Publication Types

Select...
5
2

Relationship

1
6

Authors

Journals

citations
Cited by 37 publications
(33 citation statements)
references
References 22 publications
0
33
0
Order By: Relevance
“…There are several works aimed at providing operational semantics for a larger subset of C11, including models that aim to address the so-called thin-air problem (that we rule out by the N T A axiom), which invariably lead to more complex semantics. Nienhuis et al [20] provide a semantics that supports inductive reasoning, but they are forced to consider an order that does not include sb. This complicates a verification technique that follows program order.…”
Section: Conclusion and Related Workmentioning
confidence: 99%
See 3 more Smart Citations
“…There are several works aimed at providing operational semantics for a larger subset of C11, including models that aim to address the so-called thin-air problem (that we rule out by the N T A axiom), which invariably lead to more complex semantics. Nienhuis et al [20] provide a semantics that supports inductive reasoning, but they are forced to consider an order that does not include sb. This complicates a verification technique that follows program order.…”
Section: Conclusion and Related Workmentioning
confidence: 99%
“…(24) It is sufficient that P ′ .pc t 5. 20 Verifying C11 Programs Operationally Conference'17, July 2017, Washington, DC, USA (24') Again, the fact that turn σ ′ = t wrval(e) =t is enough. (25) It is sufficient that P ′ .pc t 2.…”
Section: Proof Of Peterson's Algorithmmentioning
confidence: 99%
See 2 more Smart Citations
“…The axiomatic definition, which is a set of axioms that every legal program behavior must satisfy, can be combined with satisfiability-modulo-theory solvers to check whether a specific program behavior is allowed or disallowed [23], [27], [28]. The operational definition, which is an abstract machine that executes programs, is a very natural representation of actual hardware behaviors, and can be used in formal proofs based on induction for both programs [29] and hardware [30].…”
Section: Introductionmentioning
confidence: 99%