The leaky semicolon: compositional semantic dependencies for relaxed-memory concurrency
Alan Jeffrey, James Riely, Mark Batty, Simon Cooksey, Ilya Kaysin, Anton Podkopaev
Abstract
Program logics and semantics tell a pleasant story about sequential composition: when executing (𝑆 1 ; 𝑆 2 ), we first execute 𝑆 1 then 𝑆 2 . To improve performance, however, processors execute instructions out of order, and compilers reorder programs even more dramatically. By design, single-threaded systems cannot observe these reorderings; however, multiple-threaded systems can, making the story considerably less pleasant. A formal attempt to understand the resulting mess is known as a "relaxed memory model. " Prior models either fail to address sequential composition directly, or overly restrict processors and compilers, or permit nonsense thin-air behaviors which are unobservable in practice.
To support sequential composition while targeting modern hardware, we enrich the standard event-based approach with preconditions and families of predicate transformers. When calculating the meaning of (𝑆 1 ; 𝑆 2 ), the predicate transformer applied to the precondition of an event 𝑒 from 𝑆 2 is chosen based on the set of events in 𝑆 1 upon which 𝑒 depends. We apply this approach to two existing memory models.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext f7d2ab05-394c-44e2-a781-d359fb77ede9Cited by top-tier papers5
- Putting Weak Memory in Order via a Promising Intermediate RepresentationSung-Hwan Lee, Minki Cho, Roy David Margalit, Chung-Kil Hur et al.PLDI 2023 · 5 citations
- Model checking for a multi-execution memory modelEvgenii Moiseenko, Michalis Kokologiannakis, Viktor VafeiadisOOPSLA 2022 · 4 citations
- Relaxed Memory Concurrency Re-executedEvgenii Moiseenko, Matteo Meluzzi, Innokentii Meleshchenko, Ivan Kabashnyi et al.POPL 2025 · 2 citations
- Symbolic MRD: Dynamic Memory, Undefined Behaviour, and Extrinsic ChoiceJay Richards, Daniel Wright, Simon Cooksey, Mark BattyOOPSLA 2025 · 1 citation
- Compositional Semantics for Shared-Variable ConcurrencyMikhail Svyatlovskiy, Shai Mermelstein, Ori LahavPLDI 2024 · 1 citation
Builds on4
- Promising 2.0: global optimizations in relaxed memory concurrencySung-Hwan Lee, Minki Cho, Anton Podkopaev, Soham Chakraborty et al.PLDI 2020 · 48 citations
- Pomsets with preconditions: a simple model of relaxed memoryRadha Jagadeesan, Alan Jeffrey, James RielyOOPSLA 2020 · 28 citations
- Repairing and mechanising the JavaScript relaxed memory modelConrad Watt, Christopher Pulte, Anton Podkopaev, Guillaume Barbier et al.PLDI 2020 · 20 citations
- Modular data-race-freedom guarantees in the promising semanticsMinki Cho, Sung-Hwan Lee, Chung-Kil Hur, Ori LahavPLDI 2021 · 14 citations
Related papers
- Rely/Guarantee Reasoning for Multicopy Atomic Weak Memory ModelsNicholas Coughlin, Kirsten Winter, Graeme SmithFM 2021 · 16 citations
- An Axiomatic Basis for Computer Programming on the Relaxed Arm-A Architecture: The AxSL LogicAngus Hammond, Zongyuan Liu, Thibaut Pérami, Peter Sewell et al.POPL 2024 · 8 citations
- Rely-Guarantee Reasoning for Causally Consistent Shared MemoryOri Lahav, Brijesh Dongol, Heike WehrheimCAV 2023 · 11 citations
- Verifying optimizations of concurrent programs in the promising semanticsJunpeng Zha, Hongjin Liang, Xinyu FengPLDI 2022 · 5 citations
- RGSep under Release/Acquire ConsistencyEllen Arlt, Viktor VafeiadisOOPSLA 2026 · 1 citation
