Minimal Translations from Synchronous Communication to Synchronizing Locks (Extended Version)
Manfred Schmidt-Schau{\ss}, David Sabel

TL;DR
This paper investigates the possibility of translating synchronous message-passing processes into shared memory locks, establishing the minimal number of locks needed for correct translation while preserving termination properties.
Contribution
It proves that no correct translation exists with one or two locks, but a correct translation is possible with three locks, advancing understanding of expressiveness in concurrent models.
Findings
No correct translation with one or two locks.
A correct translation exists with three locks.
Different lock variants affect translation correctness.
Abstract
In order to understand the relative expressive power of larger concurrent programming languages, we analyze translations of small process calculi which model the communication and synchronization of concurrent processes. The source language SYNCSIMPLE is a minimalistic model for message passing concurrency while the target language LOCKSIMPLE is a minimalistic model for shared memory concurrency. The former is a calculus with synchronous communication of processes, while the latter has synchronizing mutable locations -- called locks -- that behave similarly to binary semaphores. The criteria for correctness of translations is that they preserve and reflect may-termination and must-termination of the processes. We show that there is no correct compositional translation from SYNCSIMPLE to LOCKSIMPLE that uses one or two locks, independent from the initialisation of the locks. We also show…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Logic, programming, and type systems · Embedded Systems Design Techniques
