General Decidability Results for Asynchronous Shared-Memory Programs: Higher-Order and Beyond
Not on the map. Why?
Abstract (arXiv)
The model of asynchronous programming arises in many contexts, from low-level systems software to high-level web programming. We take a language-theoretic perspective and show general decidability and undecidability results for asynchronous programs that capture all known results as well as show decidability of new and important classes. As a main consequence, we show decidability of safety, termination and boundedness verification for higher-order asynchronous programs -- such as OCaml programs using Lwt -- and undecidability of liveness verification already for order-2 asynchronous programs. We show that under mild assumptions, surprisingly, safety and termination verification of asynchronous programs with handlers from a language class are decidable iff emptiness is decidable for the underlying language class. Moreover, we show that configuration reachability and liveness (fair termination) verification are equivalent, and decidability of these problems implies decidability of the well-known "equal-letters" problem on languages. Our results close the decidability frontier for asynchronous programs.
Key facts. Cited by 1 paper in the map (data through 14 Oct 2026). First posted on arXiv 21 Jan 2021.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2024: 1.
1 paper.
- 2024Directed Regular and Context-Free Languagescited by 0
- 2024Directed Regular and Context-Free Languages13 Jan 2024