REVIEW 18 references
A Formal Semantics of C with OpenMP Parallelism (Extended Version)
T0 review · reviewed 2026-06-29 · grok-4.3
Pith's one-line read A formal semantics extending CompCert to OpenMP directives guarantees that any successful execution of the resulting C program is free of data races.
desk verdict They extend CompCert with OpenMP rules to get a semantics where successful executions are race-free, but the abstract leaves the actual definitions and proofs out of view. read the letter →
The pith
A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.
The reading
What carries the argument
The extension of CompCert's concurrency semantics to OpenMP directives, which augments the memory and thread-state model to enforce race-freedom on accepted executions.
What would settle it
An execution trace that the semantics accepts yet contains a data race on a shared variable would falsify the race-freedom guarantee.
Extended reading notes
Core claim
We present a formal semantics for C code with OpenMP directives, building on the C semantics of the CompCert verified compiler and its extension to concurrency. Our semantics captures subtle interactions between OpenMP directives and variable state that have been obscured by previous OpenMP semantics, and provides a basis for detecting undesired behaviors introduced by incorrect annotations: in particular, any successful execution is guaranteed to be free of data races.
Load-bearing premise
The extension of CompCert's concurrency semantics to OpenMP directives accurately captures all subtle interactions with variable state as specified in the OpenMP standard.
Editorial extensions
If this is right
- Any execution permitted by the semantics contains no data races.
- Incorrect OpenMP annotations that would create races can be detected because they lead to no successful executions.
- The semantics supplies a foundation for building verification or analysis tools that check OpenMP-parallelized C programs.
- Subtle state interactions introduced by OpenMP constructs are made explicit in the model.
Reading between the lines
- The same semantic extension approach could be applied to other directive-based parallel frameworks to obtain similar race-freedom guarantees.
- Compiler passes that insert OpenMP annotations could be proved correct with respect to this semantics.
- The model might serve as a reference when comparing the behavior of different OpenMP implementations.
Signed reviews
Editorial analysis
A structured set of objections, weighed in public.
Referee Report
Summary. The manuscript develops a formal operational semantics for C programs with OpenMP directives by extending CompCert's C semantics and its concurrency model. It claims to capture subtle interactions between OpenMP directives and variable state that prior semantics obscured, and asserts that any successful execution is guaranteed to be free of data races.
Significance. If the central claim holds, the work supplies a rigorous, model-internal foundation for reasoning about OpenMP-annotated C code and for detecting annotation-induced errors. Extending a verified artifact such as CompCert strengthens the soundness of the resulting semantics and provides a basis for future verification tools.
Simulated Author's Rebuttal
We thank the referee for their positive assessment of the manuscript and their recommendation to accept. No major comments appear in the report, so we have no specific points requiring response or revision.
Circularity Check
No significant circularity identified
full rationale
The paper defines a formal semantics for C+OpenMP by extending the external CompCert concurrency model. The central claim (race freedom for successful executions) is a direct consequence of the operational transition rules that the authors introduce; it does not reduce to any fitted parameter, self-definition, or load-bearing self-citation. The derivation is therefore self-contained within the constructed model and independent of the inputs it is built from.
Assumptions & free parameters
assumptions (1)
- domain assumption CompCert C semantics and its concurrency extension provide a correct foundation for modeling C programs with OpenMP.
Cite this review
Pith. "Pith review of A Formal Semantics of C with OpenMP Parallelism (Extended Version)." pith.science (2026). https://pith.science/paper/GTFVNJMP
@misc{pith2026260526527,
author = {Pith},
title = {Pith review of: A Formal Semantics of C with OpenMP Parallelism (Extended Version)},
year = {2026},
howpublished = {\url{https://pith.science/paper/GTFVNJMP}},
note = {Machine review of arXiv:2605.26527}
}
read the original abstract
OpenMP is a popular parallelization framework that lets users transform sequential code into parallel code with a few simple annotations. Unfortunately, it is also easy to inadvertently introduce errors by adding OpenMP pragmas into otherwise correct programs, including both logic errors and race conditions. We present a formal semantics for C code with OpenMP directives, building on the C semantics of the CompCert verified compiler and its extension to concurrency. Our semantics captures subtle interactions between OpenMP directives and variable state that have been obscured by previous OpenMP semantics, and provides a basis for detecting undesired behaviors introduced by incorrect annotations: in particular, any successful execution is guaranteed to be free of data races.
Figures
Figures from the paper (11 more)
Reference graph
Works this paper leans on
-
[1]
In: Proceedings of the 9th International Workshop on Software Correctness for HPC Applications
Ahmmed, J., Mahmud, Q.I., Shim, J., Li, L., Jannesari, A., Cohen, M.B.: Differ- ential testing for sequential to parallel transformations. In: Proceedings of the 9th International Workshop on Software Correctness for HPC Applications. Correct- ness ’25 (2025)
2025
-
[2]
Appel, A.W., Dockins, R., Hobor, A., Beringer, L., Dodds, J., Stewart, G., Blazy, S., Leroy, X.: Program Logics for Certified Compilers. Cam- bridge University Press (2014),http://www.cambridge.org/de/academic/ subjects/computer-science/programming-languages-and-applied-logic/ program-logics-certified-compilers?format=HB
2014
-
[3]
In: 2018 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW)
Atzeni, S., Gopalakrishnan, G.: An operational semantic basis for building an OpenMP data race checker. In: 2018 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW). pp. 395–404 (2018).https://doi. org/10.1109/IPDPSW.2018.00074
-
[4]
In: Inter- national Conference on Interactive Theorem Proving
Besson, F., Blazy, S., Wilke, P.: A concrete memory model for compcert. In: Inter- national Conference on Interactive Theorem Proving. pp. 67–83. Springer (2015)
2015
-
[5]
openmp.org/wp-content/uploads/OpenMP-API-Specification-6-0.pdf(2024)
Board, O.A.R.: OpenMP Application Programming Interface.https://www. openmp.org/wp-content/uploads/OpenMP-API-Specification-6-0.pdf(2024)
2024
-
[6]
Cuellar, S., Giannarakis, N., Madiot, J.M., Mansky, W., Beringer, L., Cao, Q., Appel, A.: Compiler correctness for concurrency: from concurrent separation logic to shared-memory assembly language. Tech. rep., Princeton University (2020)
2020
-
[7]
Ellison, C., Rosu, G.: An Executable Formal Semantics of C with Applications. In: Proceedings of the 39th Annual ACM SIGPLAN-SIGACT Symposium on Princi- ples of Programming Languages. pp. 533–544. POPL ’12, ACM, New York, NY, USA(2012).https://doi.org/10.1145/2103656.2103719,http://doi.acm.org/ 10.1145/2103656.2103719
-
[8]
Navas, Noam Rinetzky, Leonid Ryzhyk, and Mooly Sagiv
Jiang, H., Liang, H., Xiao, S., Zha, J., Feng, X.: Towards certified separate compilation for concurrent programs. In: Proceedings of the 40th ACM SIG- PLAN Conference on Programming Language Design and Implementation. p. 111–125. PLDI 2019, Association for Computing Machinery, New York, NY, USA(2019).https://doi.org/10.1145/3314221.3314595,https://doi.or...
Show all 18 references
-
[9]
Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM21(7), 558–565 (Jul 1978).https://doi.org/10.1145/359545. 359563,https://doi.org/10.1145/359545.359563
1978 doi
-
[10]
Communications of the ACM 52(7), 107–115 (Jul 2009).https://doi.org/10/c9sb7q,http://doi.acm.org/ 10.1145/1538788.1538814
Leroy, X.: Formal verification of a realistic compiler. Communications of the ACM 52(7), 107–115 (Jul 2009).https://doi.org/10/c9sb7q,http://doi.acm.org/ 10.1145/1538788.1538814
2009 doi
-
[11]
In: Proceedings of the 39th ACM International Conference on Supercomputing
Mahmud, Q.I., TehraniJamsaz, A., Ahmed, N.K., Willke, T.L., Jannesari, A.: Con- traph: Contrastive learning for parallelization and performance optimization. In: Proceedings of the 39th ACM International Conference on Supercomputing. pp. 596–610 (2025)
2025
-
[12]
In: Proceedings of the 2025 Conference of the Nations of the Americas Chapter of the Association for Computational Linguistics: Human Language Technologies (Volume 1: Long Papers)
Mahmud,Q.I.,TehraniJamsaz,A.,Phan,H.D.,Chen,L.,Capotă,M.,Willke,T.L., Ahmed, N.K., Jannesari, A.: Autoparllm: Gnn-guided context generation for zero- shot code parallelization using llms. In: Proceedings of the 2025 Conference of the Nations of the Americas Chapter of the Asso...
2025
-
[13]
hands-on
Mattson, T.: A “hands-on” introduction to openMP*.https://www.openmp. org/wp-content/uploads/Intro_To_OpenMP_Mattson.pdf(2013), located at https://www.openmp.org/resources/tutorials-articles/ A Formal Semantics of C with OpenMP Parallelism 29
2013
-
[14]
Memarian, K., Gomes, V.B.F., Davis, B., Kell, S., Richardson, A., Watson, R.N.M., Sewell, P.: Exploring C Semantics and Pointer Provenance. Proc. ACM Program. Lang.3(POPL), 67:1–67:32 (Jan 2019).https://doi.org/10.1145/ 3290380,http://doi.acm.org/10.1145/3290380
2019 doi
-
[15]
SIG- PLANNot.51(6),1–15(Jun2016).https://doi.org/10.1145/2980983.2908081, https://doi.org/10.1145/2980983.2908081
Memarian, K., Matthiesen, J., Lingard, J., Nienhuis, K., Chisnall, D., Watson, R.N.M., Sewell, P.: Into the Depths of C: Elaborating the de Facto Standards. SIG- PLANNot.51(6),1–15(Jun2016).https://doi.org/10.1145/2980983.2908081, https://doi.org/10.1145/2980983.2908081
-
[16]
In: SC ’15: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis
Siegel, S.F., Zheng, M., Luo, Z., Zirkel, T.K., Marianiello, A.V., Edenhofner, J.G., Dwyer, M.B., Rogers, M.S.: Civl: the concurrency intermediate verifica- tion language. In: SC ’15: Proceedings of the International Conference for High Performance Computing, Networking, Stora...
2015 doi
-
[17]
Advances in Neural Information Processing Systems37, 100965–100999 (2024)
Tehrani, A., Bhattacharjee, A., Chen, L., Ahmed, N.K., Yazdanbakhsh, A., Jan- nesari, A.: Coderosetta: Pushing the boundaries of unsupervised code translation for parallel programming. Advances in Neural Information Processing Systems37, 100965–100999 (2024)
2024
-
[18]
Ševčík, J., Vafeiadis, V., Zappa Nardelli, F., Jagannathan, S., Sewell, P.: Com- pCertTSO: A Verified Compiler for Relaxed-Memory Concurrency. J. ACM60(3), 22:1–22:50 (Jun 2013).https://doi.org/10.1145/2487241.2487248,http:// doi.acm.org/10.1145/2487241.2487248
2013 doi
Reviewed June 29, 2026 · model on record in the stance chip above.
Discussion (0). Continue with ORCID to comment.