Global Winning Conditions in Synthesis of Distributed Systems with Causal Memory

07/20/2021
by   Bernd Finkbeiner, et al.
0

In the synthesis of distributed systems, we automate the development of distributed programs and hardware by automatically deriving correct implementations from formal specifications. For synchronous distributed systems, the synthesis problem is well known to be undecidable. For asynchronous systems, the boundary between decidable and undecidable synthesis problems is a long-standing open question. We study the problem in the setting of Petri games, a framework for distributed systems where asynchronous processes are equipped with causal memory. Petri games extend Petri nets with a distinction between system places and environment places. The components of a distributed system are the players of the game, represented as tokens that exchange information during each synchronization. Previous decidability results for this model are limited to local winning conditions, i.e., conditions that only refer to individual components. In this paper, we consider global winning conditions such as mutual exclusion, i.e., conditions that refer to the state of all components. We provide decidability and undecidability results for global winning conditions. First, we prove for winning conditions given as bad markings that it is decidable whether a winning strategy for the system players exists in Petri games with a bounded number of system players and one environment player. Second, we prove for winning conditions that refer to both good and bad markings that it is undecidable whether a winning strategy for the system players exists in Petri games with at least two system players and one environment player. Our results thus show that, on the one hand, it is indeed possible to use global safety specifications like mutual exclusion in the synthesis of distributed systems. However, on the other hand, adding global liveness specifications results in an undecidable synthesis problem for almost all Petri games.

READ FULL TEXT

page 12

page 20

page 21

page 25

page 27

page 31

page 37

page 39

research
07/01/2019

Translating Asynchronous Games for Distributed Synthesis (Full Version)

In distributed synthesis, we generate a set of process implementations t...
research
10/15/2017

Synthesis in Distributed Environments

Most approaches to the synthesis of reactive systems study the problem i...
research
03/29/2021

A Web Interface for Petri Nets with Transits and Petri Games

Developing algorithms for distributed systems is an error-prone task. Fo...
research
04/22/2020

Efficient Trace Encodings of Bounded Synthesis for Asynchronous Distributed Systems

The manual implementation of distributed systems is an error-prone task ...
research
10/27/2021

Distributed Asynchronous Games With Causal Memory are Undecidable

We show the undecidability of the controller synthesis problem when both...
research
04/11/2019

High-Level Representation of Benchmark Families for Petri Games

Petri games have been introduced as a multi-player game model representi...
research
07/12/2023

Contract-Based Distributed Synthesis in Two-Objective Parity Games

We present a novel method to compute assume-guarantee contracts in non-z...

Please sign up or login with your details

Forgot password? Click here to reset