Minimal Translations from Synchronous Communication to Synchronizing Locks

08/24/2021
by   Manfred Schmidt-Schauß, et al.
0

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 that there is a correct translation that uses three locks. Also variants of the locks are taken into account with different blocking behavior.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
07/30/2021

Minimal Translations from Synchronous Communication to Synchronizing Locks (Extended Version)

In order to understand the relative expressive power of larger concurren...
research
08/31/2020

Correctly Implementing Synchronous Message Passing in the Pi-Calculus By Concurrent Haskell's MVars

Comparison of concurrent programming languages and correctness of progra...
research
02/11/2020

Back to Futures

We briefly introduce the semi-axiomatic sequent calculus for linear logi...
research
11/11/2020

Synchronous Concurrent Broadcasts for Intermittent Channels with Bounded Capacities

In this work we extend the recently proposed synchronous broadcast algor...
research
06/29/2021

Linearizable Implementations Suffice for Termination of Randomized Concurrent Programs

Strong adversaries obtain additional power when a linearizable object is...
research
10/28/2020

On Linearizability and the Termination of Randomized Algorithms

We study the question of whether the "termination with probability 1" pr...
research
05/02/2022

Functions as Processes: The Case of Collapsing Non-determinism

This paper studies typed translations of λ-calculi into π-calculi, both ...

Please sign up or login with your details

Forgot password? Click here to reset