Abstract 1 Introducion 2 Preliminaries 3 The model 4 Extraction of distributed strategies via special linearizations 5 Global safety and local parity CDM games 6 Finite-state distributed strategies 7 Discussion References

Distributed Games with a Central Decision Maker

Bharat Adsul ORCID Indian Institute of Technology Bombay, India Nehul Jain ORCID Indian Institute of Technology Bombay, India
Abstract

We study distributed games played on non-deterministic asynchronous automata which feature a central decision maker process that participates in all key decision making tasks. In these partial-information games, processes use their causal past to respond to scheduling choices made by the scheduler and cooperatively strategize as a team to achieve the winning objective. We show that the problem of deciding the existence of a distributed winning strategy is efficiently solvable for global safety and local parity objectives. We provide algorithmic solutions that match their computational hardness. We formulate the notion of a finite-state distributed strategy which allows to quantify its distributed memory requirements. For the aforementioned objectives, we establish that finite-state distributed winning strategies always exist. In fact, we provide novel constructions of such winning strategies which are shown to have almost optimal amount of distributed memory. We also show that a natural extension of the model with two decision making processes is undecidable.

Keywords and phrases:
Mazurkiewicz traces, models of concurrency, distributed synthesis, game-theoretic models, asynchronous automata, distributed decision-making
Copyright and License:
[Uncaptioned image] © Bharat Adsul and Nehul Jain; licensed under Creative Commons License CC-BY 4.0
2012 ACM Subject Classification:
Theory of computation
; Theory of computation Formal languages and automata theory
Editors:
C. Aiswarya, Ruta Mehta, and Subhajit Roy

1 Introducion

The design and analysis of concurrent programs and distributed protocols have always presented significant challenges. With the increasing pervasiveness of distributed applications, it is natural to investigate the automated synthesis of such protocols from their specifications. The foundational work on distributed synthesis [19] demonstrated the general undecidability of the problem when processes have access to only purely local information and limited communication capabilities. However, recent works [9, 14, 10, 18, 8, 11, 1] have introduced richer models where processes have access to their entire causal past, broadening the scope of problems that can be tackled. In particular, [9] introduced the notion of causal past and addressed the distributed controller synthesis problem in series-parallel systems and established that controlled reachability is decidable. The work [14] introduced systems with connectedly communicating processes and proved that the MSO theory in this setting is decidable which implies that the associated distributed synthesis problems are decidable.

Two more recent and relevant lines of work are Petri games and asynchronous games. Petri games [8] are distributed games played on Petri nets, where tokens represent players. The places in the underlying Petri net are divided into system and environment places, and tokens in system places make decisions based on their causal history. Several interesting classes of Petri games have been shown to be decidable [8, 7] but it was recently shown in [6] that Petri games with global winning conditions are undecidable, even with only two system players and one environment player.

Asynchronous games [10] are played on deterministic asynchronous automata and allow processes to control actions based on their causal past. These games are shown to be decidable in the interesting setting of acyclic architectures [10, 18] whose underlying process-communication graph is acyclic. More general formulations like decomposable games [11] have also been identified and proven to be decidable. However, the undecidability results for asynchronous games with simple objectives such as local reachability/termination/deadlock-freeness, even in systems with six processes, from [12] highlights the complexity of distributed synthesis problems.

Clearly it is desirable to identify different settings of the distributed synthesis problems which are interesting, practically well motivated and decidable. In this work, we consider the distributed setting in which there is a designated process called the central decision maker. We refer to such distributed systems as CDM systems in which all the key decisions are taken in the presence of this process. In many server-client architectures the server process is primarily responsible for maintaining overall integrity and ensuring that the demands of the client processes are met. These systems serve as prototypical examples of CDM systems. A distributed version control system such as SVN may also be viewed as a CDM system in which a single authoritative main copy is maintained at the central repository. Users make concurrent changes to local copies; in order to effect these changes to the main copy, they acquire an exclusive access to the central repository using a “lock”. One can model this locking mechanism by a central decision maker process which synchronizes with different user processes. Another illustrative example of a CDM system is the working of an institution/organization consisting of multiple agents with a designated head. Various committees are formed to address different aspects of the organization, expedite work and increase overall efficiency. An agent is typically a member of several such committees. These committees conduct procedural meetings from time to time to discuss, gather relevant information and propose solutions. However, all the key decisions are taken in only those committee meetings in which the head participates. The head’s presence in all decision making activities ensures consistency and alignment with the organizational goals. Note that concurrent meetings of different committees are allowed in this example.

In this paper, we formulate and study a distributed CDM game which is played on a non-deterministic asynchronous automaton A involving a team 𝒫 of processes and assume the presence of a central decision maker, a special process in 𝒫 which participates in every action which is not deterministic. In these games, the environment manifests itself as a scheduler of actions. Each scheduling decision gives rise to an event which is distributed across the participating processes. These scheduling events inherit a natural partial order in which, for every process, the events in which this process participates, are totally ordered. The processes participating in a scheduled event must respond to the corresponding scheduling choice, purely based on their collective causal past, by providing a matching local transition of A. It is important to keep in mind that the environment is simply an abstract scheduler of (possibly concurrent) actions/events and it does not reveal any information about concurrent scheduling choices. In particular, the causal past of the central decision maker contains information only about some scheduling events and gets updated with possibly unbounded information about concurrent scheduling events as the play proceeds. Further, the causal past of any other process may not contain complete information about the decisions taken by the central decision maker. It has access to only those decisions which it learns directly or indirectly through other processes and is oblivious to concurrent scheduling decisions made by the central decision maker.

We show that the key problem of solving a CDM game, that is, deciding the existence of a distributed winning strategy, is efficiently solvable for global safety and local parity winning objectives. We also provide hardness results for these problems which demonstrate that our algorithmic solutions are optimal. More precisely, we show that the problems of solving CDM games for the above objectives are EXPTIME-complete. Our EXPTIME-completeness result for global safety CDM games has some resemblance with a similar result for the Petri game model with one system token studied in [7]. It is important to note that [7] is only concerned with safety objectives. In contrast, we provide a uniform method to address both safety as well as parity objectives. Towards this, we build upon the theory of Mazurkiewicz traces and the theory of two-player games. More precisely, given a CDM game, we associate with it a natural two-player full-information game. Our key result allows to “extract” from a winning strategy in this two-player game, a distributed winning strategy in the CDM game. This is achieved by crucially relying on novel special linearizations of traces that we develop in this work. We believe that these special linearizations have much wider applicability.

This work also formulates a natural notion of a finite-state distributed memory strategy. Such a strategy is modelled as a deterministic asynchronous automaton in which each process keeps track of some additional key information in its local memory states and the responses to scheduling choices are computed with the help of the joint-memory states. The amount of additional local memory provides a measure of the distributed memory complexity of such a finite-state strategy. Recall that, in the standard full-information two-player graph games central to reactive synthesis (see [13]), safety and parity objectives can be achieved by positional/zero-memory winning strategies. In contrast, non-trivial distributed memory is required, in general, for winning global safety and local parity objectives in the CDM setting. For the safety and local parity objectives on CDM games, we establish that existence of distributed winning strategies implies existence of finite-state distributed winning strategies. In fact, we provide a novel construction of a finite-state winning strategy in which each process keeps in its local memory the latest global-state that is part of its causal past. We use the gossip automaton from [17] to maintain and update this information. It turns out that the distributed memory complexity of our construction is exponential in |𝒫| - the number of processes. We also show that this exponential dependence on |𝒫| is unavoidable.

Let us mention that our analysis applies to the more general setting of distributed games in which the “decision” events are causally ordered. In this general setting, any pair of actions, which are not deterministic, must have some process participating in both of them. We thus rule out concurrent/independent actions which are not deterministic. Clearly, this setting includes CDM games as the central decision maker participates in all actions which are not deterministic. Throughout the paper, we mainly address the CDM setting for convenience. Our final result concerns an extension of the CDM model which permits two decision making processes. In this natural extension, in every action which is not deterministic, at least one of the two decision makers participates. We build on the technical machinery of [12] to show the surprizing result that safety games with two decision makers are undecidable.

2 Preliminaries

In this section, we set up basic notations about (Mazurkiewicz) traces (see [4, 3, 16]). A trace is a well-established model of a concurrent behaviour in which the causality and concurrency information between events is represented in the form of a labelled partial order.

Let 𝒫 be a finite non-empty set of processes, and let i,j range over 𝒫. We write {Xi} for a 𝒫-indexed family {Xi}i𝒫. A distributed alphabet over 𝒫 is a family Σ~={Σi} of finite sets. Let Σ=i𝒫Σi be the total alphabet, i.e., the set of all actions. For aΣ, we set loc(a)={i𝒫aΣi} to be the set of processes which participate in it. We let I={(a,b)Σ×Σ|loc(a)loc(b)=} and D=(Σ×Σ)\I be the induced independence and dependence binary relations on Σ respectively. For a poset (X,) and YX, we define Y={xXxy for some yY}; for xX, we set x={x} and x=x{x}.

Definition 1.

A trace over Σ~ is a Σ-labelled poset t=(E,,λ) where,

  • E is a (possibly infinite) set of events and λ:EΣ is a labelling function.

  • is a partial order on E such that

    1. 1.

      for each e,eE, (λ(e),λ(e))D implies ee or ee.

    2. 2.

      for each e,eE, ee implies (λ(e),λ(e))D, where ee if e<e and for each e′′ with ee′′e, either e′′=e or e′′=e.

    3. 3.

      for each eE,e is finite.

Let t=(E,,λ) be a trace over Σ~. The elements of E are referred to as events in t. For eE, loc(e) abbreviates loc(λ(e)). For i𝒫, the set of i-events in t is Ei={eEiloc(e)}, i.e., the events in which process i participates. Note that the first condition in the definition of a trace implies that Ei is totally ordered by . We write loc(t)={i𝒫Ei} to denote the set of processes which participate in some event in t. Note that loc(t)=eEloc(e).

Figure 1: A process line represents the sequence of actions in which the corresponding process participates. Each event is represented by a rectangle with its tied action inside.
Example 2.

A trace with 9 events over 4 processes with 𝒫={1,2,3,4} is shown in Figure 1 over a distributed alphabet Σ~={Σi}i𝒫 where, Σ1={a4,a5,a6} and Σ2={a1,a3,a6} and so on. Each process is indicated by a horizontal line and time flows rightward. Each event is represented by a vertical box and is labelled by a letter in Σ={a1,a2,a3,a4,a5,a6}. Some events such as e2 are purely local to a single process. Dots in synchronizing events indicate the participating processes. It is easy to infer causality relation () from the figure, for example, e1<e4<e5<e7. We can also infer which events are concurrent (unrelated by ): for example, event e6 is concurrent to events e5,e7; e8 and e9 are also concurrent. The pairs of events e4,e5 and e1,e4 are causally ordered by process 3 and process 2, respectively.

Let TR(Σ~) denote the set of all traces over Σ~. As the distribution of Σ across processes will be clear from the context, we use TR(Σ) (or simply TR) instead of TR(Σ~). Henceforth a trace means a trace over Σ~. A trace is finite if the underlying set of events is finite. We use TR(Σ) and TRω(Σ) (or simply TR and TRω) to denote the set of all finite and infinite traces. Now we describe the concatenation operation on traces. Let t=(E,,λ) and t=(E,,λ) be finite traces with disjoint event sets E and E. We define ttTR to be the trace (E′′,′′,λ′′) where

  • E′′=EE,

  • ′′ is the transitive closure of {(e,e)E×E(λ(e),λ(e))D},

  • λ′′:E′′Σ where λ′′(e)=λ(e) if eE; otherwise, λ′′(e)=λ(e).

Observe that, with a (resp. b) denoting the singleton trace whose only event is labelled a (resp. b), if (a,b)I then ab=ba in TR. The trace concatenation operation on finite traces can also be defined for infinite traces under certain conditions. We explain this now. The above mentioned definition of tt results in a valid trace if t is finite. That is, if tTR and tTR then ttTR. Moreover, if t,tTR are such that ωloc(t)loc(t)=, then ttTR where ωloc(t) is the set of of processes which participate in infinitely many events in t. It is easy to see that, in this case, ωloc(tt)=ωloc(t)ωloc(t). We say that a trace t is a prefix of a trace t if t=tt′′ for some trace t′′. It is important to observe that this definition permits a prefix to be infinite.

We now come to the very important notion of a configuration of a trace t=(E,,λ). A subset cE is a configuration of t if c is finite and c=c. For eE, e={e} is the causal past of e and e=e{e} is the strict causal past of e. Note that, if we restrict the trace t to a configuration c, we get another finite trace tc=(c,,λ) which turns out to be a prefix of t. Conversely, given a finite prefix t of t, we can identify a configuration c of t such that t=tc. In this sense, configurations of t are essentially finite prefixes of t. Examples of configurations (or, equivalently, finite prefixes) are the empty set, e or e, for every event eE. Note that E itself is a configuration of t iff t is finite. We let Ct denote the set of all configurations of t. The action based successor relation tCt×Σ×Ct is defined by c𝑎tc if and only if there exists eE such that ec, c{e}=c and λ(e)=a.

Example 3.

For the trace t in Figure 1, c={e1,e3,e4} and c={e1,e2,e3,e4} are configurations, and so is c′′=e5={e1,e3,e4,e5}. Observe that ca5tc and ca2tc′′. The set {e1,e2,e4} is not a configuration since {e1,e2,e4}={e1,e2,e3,e4}.

Asynchronous automata and the related transition systems are fundamental finite-state distributed devices due to Zielonka [20, 16] which operate/run on traces. In an asynchronous transition system, each process i𝒫 is equipped with a finite non-empty set Si of local i-states. We set S=i𝒫Si and call S the set of local states. Further, we set S𝒫=i𝒫Si and call it the set of global states. For a non-empty set P𝒫 of processes, SP=iPSi is the set of (joint) P-states. For a P-state sSP and iP, s(i)Si denotes the local i-state in the P-tuple s. More generally, for QP and sSP, we denote by sQ the projection of s on Q – that is, sQ is the unique Q-state such that sQ(i)=s(i) for all iQ. For aΣ, we use a to abbreviate loc(a) when talking about states. Thus Sa=Sloc(a) denotes the set of all a-states and if loc(a)P and s is a P-state, we write sa for sloc(a).

Similar to the convention of writing a 𝒫-indexed family as {Xi}, we use the shorthand {Ya} to denote the Σ-indexed family {Ya}aΣ.

Definition 4.

An asynchronous transition system (ATS) over Σ~ is A=({Si},{𝑎}) where,

  • For each process i𝒫, Si is a finite non-empty set of local i-states.

  • For each action aΣ, 𝑎Sa×Sa is a non-deterministic transition relation on a-states.

Let A=({Si},{𝑎}) be an ATS. Note that a transition in A on an action a is local in the sense that it involves only processes in loc(a) and a-states. We extend these local transition relations naturally to global states. More precisely, for aΣ, we define 𝑎S𝒫×S𝒫 as follows: for s,sS𝒫, (s,s)𝑎 if (sa,sa)𝑎 and s𝒫loc(a)=s𝒫loc(a). An action a is said to be enabled at sS𝒫 if there exists sS𝒫 such that (s,s)𝑎. Due to the locality of transitions, if a is enabled at s, then it is also enabled at s with sa=sa.

Now we define the important notion of a run of A on a trace t over Σ~. Let us fix an initial global state s0S𝒫. A run of A on tTR, starting from s0, is a map ρ:CtS𝒫 such that ρ()=s0 and for every c,cCt, c𝑎tc implies that (ρ(c),ρ(c))𝑎. Note that, as A is non-deterministic, there can be multiple runs of A on the same trace. The following lemma follows directly from the locality of transitions of A.

Lemma 5.

Let t=(E,,λ) be a trace and ρ:CtS𝒫 be a run of A on t starting at s0. Then ρ is determined by ρ() and ρ(e) for each eE.

3 The model

Now we describe the model called asynchronous transition system games or simply ATS games. ATS games on two processes are studied in [1]. An ATS game is played on a non-deterministic asynchronous transition system between an environment and a distributed system that comprises of a team of cooperating processes. The environment is a singular entity and manifests itself in the form of a scheduler of actions. Importantly, the environment does not reveal any information about prior/concurrent scheduling events.

We continue with the notation from the previous section. In particular, we fix a distributed alphabet Σ~ over a fixed set 𝒫 of processes.

Definition 6.

An ATS game is of the form 𝒢=(A,s0,Win) where

  • A=({Si},{𝑎}) is an asynchronous transition system over Σ~.

  • s0S𝒫 is an initial global state of A.

  • Win is a specification of the winning condition.

A play of an ATS game is inherently distributed, capturing the ongoing, possibly non-terminating interaction between the distributed system and the environment. Let us now formalize this notion of a distributed play. To this end, fix an ATS game 𝒢=(A,s0,Win) with A=({Si},{𝑎}).

We begin with a description of the interleaved semantics of a distributed play. Such a play begins in the initial global state s0. Environment makes the first move by scheduling an action (say a) which is enabled at s0. The processes participating in a respond by selecting an available a-transition and thus advancing the “current” global state (say, to s). At this point, it is environment’s turn to schedule another action (say b) which is enabled at s. The processes participating in b respond by choosing a suitable b-transition at s. Let us assume that a and b are independent actions. Then the processes participating in b are oblivious to the “concurrent” scheduling of “prior” a-action. It is important to observe that, in this situation, thanks to the locality of transitions in A, b is also enabled at s0 and environment also had the option of scheduling b first and then a later. On the other hand, if a and b are dependent, then there is a process which participates in both a and b and every process participating in b comes to know about the prior a-action which is “causally” before the current b-action.

So, in this interleaved semantics of a distributed play, a play consists of an alternate sequence of moves of the environment (which schedules actions) and the distributed system (where the participating processes respond by matching transitions). Observe that each process in the distributed system has only partial information; among all the actions which are already scheduled, it only knows those which are in its causal past. The causal past of a process contains the information that a process comes to know directly or indirectly through its interactions with the other processes. Further when two or more processes interact (by participating in a shared/joint action), they exchange their complete causal pasts.

Definition 7.

A (partial and distributed) play of the game 𝒢 is a tuple (t,ρ) where

  • t=(E,,λ) is a trace over Σ~.

  • ρ:CtS𝒫 is a run of A on t starting at s0

The idea is that the (labelled) events in t represent enabled scheduler choices and the partial-order captures the causality between these events arising out of the distribution of these events across processes. The fact that an event e is labelled a (that is, λ(e)=a) means that the environment scheduled the shared action a which lead the processes participating in a to synchronize. Their collective causal past-information at e corresponds to events in e. Based on this common information, these processes respond to e by choosing a local transition on a which advances their prior joint a-state sa to sa where s=ρ(e) and s=ρ(e). Thus the run ρ correctly captures the decisions of the processes during the play. Note that by Lemma 5, ρ is completely determined by ρ()=s0 and ρ(e) for each eE. In summary, the event e models environment’s scheduling of action λ(e) at the global state ρ(e); and the λ(e)-transition from ρ(e) to ρ(e) models the collective response of the processes participating in e.

A (distributed) play (t,ρ) is said to be maximal if there is no play (t,ρ) such that t is a proper prefix of t and ρ=ρ|Ct, the restriction of ρ to the configurations of t. Note that if (t,ρ) is maximal then the processes which have moved only finitely often in t can not be further scheduled by the environment as no action involving only them is enabled. It is important to note that a maximal play could be either finite or infinite. If a maximal play (t=(E,,λ),ρ) is finite, then no action is enabled at the final global state ρ(E).

We next turn our attention to the winning condition Win which specifies the winner of a maximal play. At an abstract level, Win is simply the collection of all maximal plays in which the distributed system wins.

In this work we study ATS games from the viewpoint of decision making processes.

Definition 8.

Let 𝒢=(A,s0,Win) be an ATS game with A=({Si},{𝑎}). An action a of A is not deterministic if there exists sa,sa,sa′′Sa such that both (sa,sa) and (sa,sa′′) are a-transitions (that is, belong to 𝑎) and sasa′′.

A subset Q𝒫 of processes is said to be decision makers in 𝒢 if for every a which is not deterministic, Qloc(a). In other words, if no process in Q participates in an action b, then the transition relation 𝑏 of A is a (partial) deterministic function from Sb to Sb.

A central decision maker (CDM) game is an ATS game with decision makers {} for some process 𝒫. This central decision maker process participates in every action of A which is not deterministic.

Figure 2: A safety CDM game with unsafe set {(L1,B2,R3),(R1,B2,L3)} and its plays.
Example 9.

Consider a CDM game illustrated in Figure 2 with 𝒫={1,2,3} and process 1 as the central decision maker. Note that only action c is not deterministic and it is shared by 1 and 2. Process i has purely local action di and actions a and b are shared by 2 and 3.

All 3 processes start in top local states and want to avoid states where colors mismatch. This can be captured as a global safety winning condition where color-mismatch signifies occurrence of an unsafe global state. Observe that, initially, the scheduler can play exactly one of the deterministic actions a or b forcing the next joint state of process 2 and process 3 to be either (L2,L3) or (R2,R3). It can concurrently schedule any number of d1 actions. Afterwards, the scheduler can force process 2 to the bottom local state B2 by playing local action d2. At this point, actions c and d1 are enabled and the scheduler is allowed to play any of these actions. Note that, if process 3 is in local state L3 then the scheduler must also schedule d3 in a maximal play. Some plays of this CDM game are depicted in Figure 2.

If action c is never scheduled, the distributed system wins along such maximal plays. However, if action c is ever scheduled then the resulting response determines the winner. In order to win in such situations, the central decision maker process 1 needs to inspect its causal past to find out which of the actions a or b was played in the past. With this information, process 1 makes the correct decision and ensures a win for the team.

Now we are ready to define the important and crucial notion of a distributed strategy for an ATS game. Intuitively speaking, a distributed strategy is an advice function that the team of processes in the distributed system uses to respond to environment’s actions. More importantly, this response can only depend on the collective causal history of the processes participating in this action. Further, the advice function does not restrict the choices available to the environment in all situations.

Definition 10.

A distributed strategy in 𝒢 is a partial function σ:TRS𝒫 with the smallest domain such that

  • the domain of σ is prefix closed, that is, if tTR is such that σ(t) is defined and tTR is a prefix of t then σ(t) is also defined.

  • σ(ϵ)=s0 where ϵ denotes the empty trace.

  • for every tTR if σ(t) is defined and a is enabled at σ(t), then σ(ta) is also defined, and (σ(t),σ(ta))𝑎 (here ta denotes the concatenation of t with the singleton trace a).

It is easy to see that the first condition in the above definition, that the domain of σ is prefix-closed, is redundant. By requiring σ to have the smallest domain, the second and third conditions in the above definition ensure that σ becomes defined exactly on traces built by iteratively extending the empty trace along enabled actions, making the domain of σ prefix-closed.

A finite trace t=(E,,λ)TR is said to be prime if t has a unique maximum event. In other words, a prime trace t has an event eE such that E=e; we let last(t) denote this maximum event of t. The next lemma states that a distributed strategy is determined by its effect on the prime traces.

Lemma 11.

Let σ:TRS𝒫 be a distributed strategy in 𝒢. Then σ is completely determined by σ(t) for every prime trace t in the domain of σ. Moreover, if 𝒢 is a CDM game with as a central decision maker then σ is completely determined by σ(t) for every prime trace t in the domain of σ whose last action last(t) involves .

Definition 12.

Let σ:TRS𝒫 be a distributed strategy in 𝒢. A distributed play (t,ρ:CtS𝒫) of 𝒢 is said to conform σ if, for all cCt, ρ(c)=σ(c). Recall that, for a configuration c of t, c also denotes the induced finite trace tc=(c,,λ).

A distributed strategy σ:TRS𝒫 is winning in 𝒢 if all maximal plays conforming it belong to Win. In other words, all maximal plays where the distributed team employs σ are won by the distributed system.

The description at the end of Example 9, for the CDM game in Figure 2, can be readily converted into a winning distributed strategy as in the above definition.

Given an ATS game 𝒢=(A,s0,Win), the key algorithmic question is to decide if there exists a distributed winning strategy in 𝒢. We answer this for CDM games with global safety and local parity conditions. Note that a CDM game is a partial-information game and different processes have mutually incomparable partial informations about scheduler’s actions; a process is oblivious to concurrent scheduling decisions on other processes and there is no bound on the number of such concurrent scheduling decisions. Clearly the decisions taken by the central decision maker (based solely on its causal past) influence the future behaviour of other processes. Observe that ATS games with only one process (|𝒫|=1) are CDM games and are essentially full-information two-player games played on a finite graph [13].

4 Extraction of distributed strategies via special linearizations

We now develop a general construction which aids in the solution of CDM games. Let us fix a CDM game 𝒢=(A,s0,Win) with A=({Si},{𝑎}) and process 1𝒫 as the central decision maker. Towards solving 𝒢, we introduce a standard full-information two-player game Gseq played on a finite graph Aseq between two players called Sys and Env. See [13] for a study of these games and its relevance to reactive synthesis in the sequential setting.

Definition 13.

The game arena Aseq is a bipartite graph Aseq=(Venv,Vsys,Venv×VsysVsys×Venv) whose vertices and directed edges (that is, elements of ) are as follows:

  • Venv=S𝒫 and Vsys={(s,a)S𝒫×Σa is enabled at s}

  • For sVenv,(s,a)Vsys, we have an edge from s to (s,a) iff s=s

  • For (s,a)Vsys and sVenv, we have an edge from (s,a) to s iff s𝑎s in the ATS A. Recall that 𝑎 naturally extends the local transition relation 𝑎 of A to global-states.

We define Gseq=(Aseq,s0,Winseq) to be a standard two-player graph game of complete information whose winning condition Winseq is currently unspecified. Note that s0Venv. The game Gseq is played by players Sys and Env by alternately moving a “token” along the edges of the bipartite graph Aseq. Player Env makes moves from Venv and player Sys makes moves from Vsys. Initially the token is at vertex s0Venv. Thus a play of Gseq is a sequence (possibly infinite) of vertices visited by the token starting with vertex s0 and it is of the form: s0,(s0,a0),s1,(s1,a1),s2,. A maximal play is either infinite, or finite in which case it ends in sVenv such that no action is enabled at s and as a result, there is no outgoing-edge in Aseq from the vertex s. As mentioned above, we do not specify the winning condition Winseq in this section and it will be suitably instantiated in later sections.

It will be useful to view a play of Gseq as simply a sequence s0,a0,s1,a1,s2, starting at s0 such that, for each i, ai is enabled at si and (si,si+1)ai. In this viewpoint, ai corresponds to player Env moving the token from si to (si,ai) and, si+1 corresponds to player Sys moving the token subsequently from (si,ai) to si+1.

Figure 3: An ATS A and the derived sequential game arena Aseq.
Example 14.

Figure 3 shows an ATS A and a simplified view of the derived game arena Aseq. The simplified view represents the sequential automaton underlying Aseq. For instance, in the graph Aseq we have two edges from TBL (short for T1B2L3) to (TBL,c) and (TBL,d3) corresponding to two enabled actions, namely c and d3, at TBL. We also have two edges in Aseq from (TBL,c) to LBL and RBL corresponding to two global c-transitions (TBL,LBL),(TBL,RBL) of A. A play s0,a0,s1,a1,s2, starting at s0 in Gseq described above, can be simply viewed as a run of this sequential automaton on a0a1a2, from s0.

A (sequential full-information) strategy for player Sys in Gseq maps its history leading to current vertex to the next valid vertex. We formalize it as follows.

Definition 15.

A strategy for player Sys in Gseq is a partial function τ:ΣS𝒫 with the smallest domain such that

  • τ(ϵ)=s0 where ϵ denotes the empty word.

  • for every wΣ if τ(w) is defined and a is enabled at τ(w), then τ(wa) is also defined and furthermore (τ(w),τ(wa))𝑎. In other words, we have a directed edge in Aseq from (τ(w),a)VSys to τ(wa)VEnv.

It is easy to check that the domain of τ is a prefix-closed subset of Σ.

Henceforth, by a strategy in Gseq we always mean a strategy for the player Sys in Gseq. It turns out that every distributed strategy in 𝒢 naturally gives rise to a sequential strategy in Gseq. We develop some more notation to explain this. Each finite word wΣ naturally induces a finite trace tTR. More precisely, if w=a1a2an, we associate with w the finite trace t=(E,,λ) which is defined as follows: E={e1,e2,,en} has n events corresponding to n positions in the word w; we set λ(ei)=ai and the partial order on E is the transitive-closure of the relation {(ei,ej)|ij and (ai,aj)D}. It is easy to check that t is indeed a trace over Σ~. Let us denote this association by the map η:ΣTR. It turns out [4, 3, 16] that for a trace tTR, the set η1(t)Σ is precisely all those words which correspond to different linearizations of t. In fact, η is a surjective monoid morphism and η(w)=η(w) iff w can be obtained from w by a sequence of operations where each operation is an exchange of two adjacent independent letters.

The next proposition states that, a distributed strategy σ in 𝒢 naturally induces a (sequential) strategy σseq in Gseq.

Proposition 16.

Let σ:TRS𝒫 be a distributed strategy in 𝒢. Consider the induced partial function σseq:ΣS𝒫 defined as follows: for wΣ, σseq(w)=σ(η(w)). So w belongs to the domain of σseq iff η(w) belongs to the domain of σ. Then σseq:ΣS𝒫 is in fact a strategy for player Sys in Gseq. Furthermore, σseq is diamond-closed; that is, for w,wΣ and (a,b)I, σseq(wabw)=σseq(wbaw).

So, the strategies in Gseq induced by distributed strategies in 𝒢 are diamond-closed. However, an arbitrary strategy in Gseq is not necessarily diamond-closed.

Example 17.

In Figure 3(b), we have used bold edges to depict the response of a positional strategy in Gseq on the action c which is not deterministic. This strategy responds to c at TBL by using the bold edge to LBL, at TBB by using the bold edge to RBB and at TBR by using the bold edge to RBR. As a result, at TBL the response to cd3 ends at LBB while that for d3c ends at RBB. As c and d3 are independent, this strategy is not diamond-closed.

Our main goal in this section is to extract a distributed strategy in 𝒢 from an arbitrary strategy crucially exploiting the presence of a central decision maker. Towards this, we now develop special linearizations of finite traces.

We first fix a total order Σ on Σ such that ΣΣ1ΣΣ1. Note that, in the total order Σ, if a,bΣ are such that 1loc(a) and 1loc(b) then aΣb. With our implicit assumption that process 1 is the central decision maker, every action in which it does not participate comes before every action in which it participates in the order Σ. We now outline an inductive procedure to compute a special linearization map Lin:TRΣ.

Definition 18.

Let t=(E,,λ)TR. If t=ϵ, then Lin(t)=ϵ. Otherwise, let M be the set of all maximal (wrt ) events of the trace t and e be the unique event in M whose label is Σ-least among the labels in {λ(f)fM}. Note that no two events in M can have the same label as events with the same label are ordered/comparable wrt .

It is easily verified that with t as the trace corresponding to the configuration E{e}, we have t=ta where a=λ(e). We now define Lin(t)=Lin(t)a.

In short, we compute Lin(t) starting from its last action/letter. Towards this, we peel off that maximal event of t which is Σ-least labelled and put its label as the last letter in Lin(t) and continue this process until all events are covered.

Now we exploit the key consequences of the Σ requirement that ΣΣ1ΣΣ1. It is very important to observe that, in general, t is a trace-prefix of t does not imply that Lin(t) is a word-prefix of Lin(t). The following lemma plays a crucial role later.

Lemma 19.

Let t=(E,,λ)TR and eE be such that process 1 participates in e, that is λ(e)Σ1. Then Lin(e) is prefix of Lin(t). Here we identify the configuration e with the corresponding trace-prefix (e,,λ) of t.

Example 20.

We revisit the trace t from Figure 1 with process 1 as the central decision maker and event set E={e1,e2,,e9}. Let the ordering Σ be given by aiΣaj iff ij. Note that ΣΣ1ΣΣ1. We now compute Lin(t) for the trace t. Maximal events of t are e8 and e9 and as λ(e9)=a1Σa4=λ(e8), Lin(t)=Lin(t).a1 where t is given by E=E{e9}. Successively the maximal event sets are {e8},{e6,e7},{e6,e5},{e6},{e2,e4},{e2,e3},{e2},{e1}. This results in Lin(t)=a6a5a2a3a6a2a2a4a1 with event-linearization e1e2e3e4e6e5e7e8e9.

As an illustration of Lemma 19, consider event e6E1. We have e6={e1,e2,e3,e4,e6} and Lin(e6)=a6a5a2a3a6 which is a prefix of Lin(t). However, e7E1 and one can verify that Lin(e7)=a6a5a2a3a2a2, which is not a prefix of Lin(t).

Now we use special linearizations to lift a strategy in Gseq to a distributed strategy in 𝒢. Intuitively, in the special linearization of a trace, all the events of process 1 appear the earliest. Thus the response of a sequential strategy along the special linearization is based on the least amount of information to the central decision maker. We lift these responses to construct a distributed strategy.

Definition 21.

Let τ:ΣS𝒫 be a strategy in Gseq. We define a partial function τdstr:TRS𝒫 as follows: for tTR, τdstr(t)=τ(Lin(t)). Note that, t belongs to the domain of τdstr iff Lin(t) belongs to the domain of τ.

Let us illustrate the above definition for the non-diamond-closed strategy τ from Example 17 with t being the trace induced by the word ad2d3c. As Lin(t)=ad2cd3, we set τdstr(t)=τ(ad2cd3)=LBB. Note that τ(ad2d3c)=RBB.

We now state the following main proposition which shows that partial function τdstr from Definition 21 is in fact a distributed strategy in 𝒢. The proof crucially uses Lemma 19 which implies that, restricted to central decision maker events, special linearization of a later event extends that of an earlier one.

Proposition 22.

Let τ:ΣS𝒫 be a strategy for player Sys in Gseq. Then τdstr:TRS𝒫 is a distributed strategy in 𝒢.

5 Global safety and local parity CDM games

We turn our attention to CDM games with global safety and local parity objectives. For an ATS A=({Si},{𝑎}), maxi|Si| denotes the maximum number of local states per process. For complexity analysis, we make the realistic assumption that every action involves at most a fixed constant number of participating processes. This is reasonable because in most distributed systems, each action involves only a few processes interacting at a time, e.g., reading/writing shared resources or coordinating with immediate “neighbors”. Thanks to this assumption and the local nature of transitions of A, it is easy to check that the size of A, denoted by A, is polynomial in maxi|Si|, |Σ| and |𝒫|. Besides A, the other component which contributes to the size of a CDM game 𝒢, denoted 𝒢, is the specification of the winning condition. Observe that the number of vertices in the game arena Aseq (see Definition 13) is atmost 2|Σ|(maxi|Si|)|𝒫|. Note that (maxi|Si|)|𝒫| is the maximum number of global-states of A. As a result, the size of Aseq, denoted by Aseq is polynomial in (maxi|Si|)|𝒫| and |Σ|.

5.1 Global safety objective

Let us fix a CDM game 𝒢=(A,s0,Win) with A=({Si},{𝑎}) and a global-safety winning condition. A global-safety winning condition is given by a subset FS𝒫 of safe global-states. A maximal play (t,ρ) is won by the distributed system if, for all cCt, ρ(c)F. By abuse of notation, we also write 𝒢=(A,s0,F) and refer to it as a safety CDM game.

Our solution for the safety CDM game uses the full information two-player token game Gseq=(Aseq,s0,Winseq) from the previous section. We instantiate the winning condition Winseq and the resulting Gseq as follows:

Definition 23.

Let Gseq=(Aseq,s0,Fseq) be the full-information two-player safety graph game where the safety objective for player Sys is given by

Fseq={sVsyssF}{(s,a)VenvsF}

In order to win Gseq, player Sys must have a strategy to ensure that the token never leaves the safe-set Fseq of vertices of Aseq.

Recall that a strategy in Gseq (winning or not) always means a strategy for player Sys.

Definition 24.

Let τ:ΣS𝒫 be a strategy in Gseq. A play α=s0,a0,s1,a1,s2, of Gseq conforms τ if, for all i, τ((a0a1ai))=si+1. The fact that τ is a strategy ensures that we have a directed edge in Aseq from (si,ai) to si+1. The strategy τ is winning if all maximal plays α=s0,a0,s1,a1,s2, conforming it have the property that, for all i, siFseq.

Theorem 25.

There is a distributed winning strategy in the safety CDM game 𝒢 iff there is a winning strategy in Gseq. Moreover, it can be decided in time polynomial (more accurately, quadratic) in the size of Aseq whether player Sys has a winning strategy in Gseq. The running time complexity of the resulting decision procedure for 𝒢 is polynomial in (maxi|Si|)|𝒫|,|Σ|,|F|.

We consider the decision problem of determining whether a CDM game with global safety objectives admits a distributed winning strategy; the procedure above is EXPTIME due to the exponential dependence on |𝒫|. These games are also EXPTIME-hard. The proof is similar to the corresponding result for the Petri game model with one system token studied in [7]. Together these results imply the following theorem.

Theorem 26.

Global safety CDM games are EXPTIME-complete.

5.2 Local parity objective

Now we analyze CDM games with local parity objectives. Parity winning conditions are central to the theory of two-player graph games and are studied extensively in literature [13]. A standard parity game on a graph of size n and m colors can be solved in time nm+O(1) [15]. A recent advance from [2] brings it down to nlog(m)+6 - a quasi-polynomial bound.

A local-parity winning condition is given by a color function χ:S1{0,1,,k} that assigns each CDM local state a color from the finite color set C={0,1,,k}. Given a maximal play (t,ρ) with t=(E,,λ) , we define inf(t,ρ)={sS1eE1,ρ(e)(1)=s}. Note that if E1 - the set of events in which process 1 participates, is finite then inf(t,ρ)=. The system wins if inf(t,ρ) is empty or max{χ(s)sinf(ρ)} is even. We also denote such a game by 𝒢=(A,s0,χ) and refer to it as a (local) parity CDM game. Towards solving 𝒢, we instantiate Gseq by an appropriate sequential parity condition.

Definition 27.

Let Gseq=(Aseq,s0,χseq) be the standard two-player parity game where χseq:VsysVenv{0,1,,k} is defined as: χseq(s)=0 and

χseq((s,a)) =χ(s(1)) if aΣ1
=0 if aΣ1

We now describe the winning condition Winseq of Gseq using χseq. As discussed in Section 4, a maximal play of Gseq may be viewed as a sequence α=s0,a0,s1,a1,s2, and it corresponds to the maximal movement α of the token along the path s0,(s0,a0),s1,(s1,a1),s2, in Aseq. On this maximal sequence α, player Sys wins if it is finite or the highest color occurring infinitely often in χseqα=χseq(s0),χseq((s0,a0)),χseq(s1),χseq((s1,a1)),χseq(s2), is even. The following lemma brings out the connection between χseq and χ.

Lemma 28.

If α is finite then player Sys wins in α. We now assume that α is infinite. If actions from Σ1 occur finitely often in α then only color 0 occurs infinitely often in χseqα and player Sys wins in α. If actions from Σ1 occur infinitely often in α, consider the infinite subsequence β obtained from α by restricting it to vertices in Vsys(S𝒫×Σ1). Suppose β=(si1,ai1),(si2,ai2),. Then the highest color occurring infinitely often in χseqβ=χseq((si1,ai1)),χseq((si2,ai2)), is same as that of χseqα. Furthermore it is equal to the highest color occurring infinitely often in the sequence χ(si1(1)),χ(si2(1)),.

Now we state our main result for local parity CDM games.

Theorem 29.

There is a distributed winning strategy in the local parity CDM game 𝒢 iff the player Sys has a winning strategy in Gseq.

Given a local parity CDM game 𝒢, the decision problem is to determine whether the distributed system has a winning strategy. Thanks to the assumption that each action involves at most a fixed constant number of processes, the size 𝒢 is polynomial in maxi|Si|, |Σ|, |𝒫|, and |C|, where C is the color set. The derived standard parity game Gseq has arena size polynomial in (maxi|Si|)|𝒫| and |Σ| and it uses only |C| colors. Known algorithms for parity games on arenas of size n with m colors run in time nm+O(1) [15] or nlog(m)+6 [2], and applying them to Gseq gives an EXPTIME procedure for 𝒢. Moreover, we can also show that local parity CDM games are EXPTIME-hard even with two colors, yielding the following theorem.

Theorem 30.

Local parity CDM games are EXPTIME-complete.

6 Finite-state distributed strategies

In this section we investigate distributed strategies in CDM games which admit a finite-state implementation. Let 𝒢=(A,s0,Win) be an ATS game with A=({Si},{𝑎}).

Definition 31.

A memory automaton for 𝒢 is a deterministic asynchronous automaton 𝒜=({Si×Mi},{δa:Sa×MaSa×Ma},(s0,m0)) over Σ~ such that

  • For aΣ, (sa,ma)Sa×Ma=Πiloc(a)(Si×Mi), if a is enabled at sa in A then a is also enabled at (sa,ma) in 𝒜. Further, with δa((sa,ma))=(sa,ma), (sa,sa)𝑎; that is, there is an a-transition from sa to sa in A.

  • (s0,m0)S𝒫×M𝒫 is a global state of 𝒜 where s0 is the initial global state of A.

In the memory automaton 𝒜, process i has access to local memory states Mi. The memory automaton is a distributed automaton which starts in the initial global state (s0,m0) and provides a deterministic response to every enabled scheduler action using the current joint memory-state. Further, it also updates the joint memory-state deterministically.

A memory automation is zero-memory if for each i, Mi is a singleton set. A zero-memory automaton may be viewed as a deterministic asynchronous sub-automaton of A.

Definition 32.

Let 𝒜 be a memory automaton for 𝒢 and σ:TRS𝒫 be a distributed strategy in 𝒢. We say that σ is realized by 𝒜 if, for every trace t in the domain of σ, σ(t)=s where 𝒜(t)=(s,m) – here 𝒜(t) is the final global state attained on the unique run of 𝒜 on t.

A distributed strategy σ in 𝒢 is said to be finite-state if there exists 𝒜 which realizes it. Thus the responses of σ are determined by the finite-state device 𝒜. A distributed strategy σ realized by a zero-memory automaton is called a zero-memory distributed strategy.

It is well-known (see [13]) that for standard two-player full-information sequential games with safety and parity objectives, existence of a winning strategy implies existence of a positional/“zero-memory” winning strategy. Unfortunately, this is not so for CDM games. It is easy to verify that the safety CDM game from Figure 2 does not admit a zero-memory distributed winning strategy. However, we have already exhibited a valid distributed winning strategy for this game in Example 9.

Let us fix a safety/parity CDM game 𝒢=(A,s0,Win) with A=({Si},{𝑎}). Recall that in Sections 5.1 and 5.2, we have shown that we can extract a distributed winning strategy τdstr in 𝒢 from a sequential winning strategy τ in Gseq. The key property shared by Gseq in both instantiations is that: if player Sys has a winning strategy in Gseq then it also has a positional winning strategy. Our main goal now is to obtain a memory automaton realizing the distributed strategy τdstr in 𝒢 which is extracted from a positional strategy τ in Gseq.

Definition 33.

Let τ:ΣS𝒫 be a strategy in Gseq. We call τ positional if there exists a function fτ:VsysVenv such that, for every w in the domain of τ and for every a which is enabled at τ(w), τ(wa)=fτ((τ(w),a)). We refer to fτ as the witness function of τ.

Proposition 34.

Let τ:ΣS𝒫 be a positional strategy in Gseq with fτ:VsysVenv as the witness function of τ. Further, let τdstr:TRS𝒫 be the “extracted” distributed strategy in 𝒢 defined as: for tTR, τdstr(t)=τ(Lin(t)). Then, for a prime trace t of the form t=ta, τdstr(t)=fτ((τdstr(t),a)).

The above proposition shows that the response of τdstr at the last a-event e of a prime trace t=ta can be determined (using fτ) by the processes participating in e provided they can compute τdstr(t). Note that t=e is their collective causal past at e. Hence τdstr(e) represents the last/latest global-state about the entire system that they are aware of at e. This suggests that, in order to realize a finite-state implementation of τdstr, each process should keep track of the latest global-state that it is aware of, in its local memory. When a subset of processes synchronize on a shared action, they need a finite-state mechanism to compute the best global-state that they are collectively aware of. It turns out that this can be achieved with the help of the gossip automaton from [17].

We first develop some more notation. Let t=(E,,λ) be a finite trace, i𝒫 and P𝒫. Recall that Ei is the set of events in which process i participates. We define i(t) to be the trace induced by Ei – the events in the causal past of process i. Similarly, P(t) is the trace induced by jPEj and it represents the collective causal past of processes in P. We define function 𝗅𝖺𝗍𝖾𝗌𝗍Q:TR(Σ)×𝒫2Q that gives which processes in the set Q have the latest information about a given process k in a given trace t. For Q={i1,i2,,il}, j𝗅𝖺𝗍𝖾𝗌𝗍Q(t,k) iff k(Q(t))=k(j(t)). We now state the key result from [17].

Theorem 35.

There exists an effectively constructible deterministic complete asynchronous automaton Agossip=({Vi},{a},v0) over Σ~, called the gossip automaton, and, for each Q={i1,i2,,il}𝒫 there exists an effectively computable function gossipQ:Vi1××Vil×𝒫2Q such that, for every trace t and every process k, 𝗅𝖺𝗍𝖾𝗌𝗍Q(t,k)=gossipQ(vQ,k), where v is the global state of Agossip reached on the unique run of Agossip on t.

We now describe the memory automaton 𝒜 which realizes τdstr from Proposition 34. We set 𝒜=({Si×Mi},{δa},(s0,m0)) where for each i, Mi=S𝒫×Vi. So, a local memory i-state mi=(qi,vi)Mi of process i contains a local gossip i-state vi and a global state qiS𝒫 in A. Intuitively, qi is the best global state that process i is aware of. The initial global memory state m0M𝒫 is defined as: for each i𝒫, m0(i)=(s0,v0(i)). Note that s0 (resp. v0) is the initial global state of A (resp. Agossip).

We now turn our attention to the definition of the transition function δa of 𝒜. Let us suppose that loc(a)=Q={i1,i2,,il}. Fix (sa,ma)Sa×Ma such that a is enabled at sa in A. For each iloc(a), ma(i)=(qi,vi)S𝒫×Vi. Recall that a is the a-transition function of Agossip and let vaVa be such that, for each iloc(a), va(i)=vi and va=a(va). We now define δa((sa,ma)) as follows. We first compute the best global state s^S𝒫 that processes in Q=loc(a) are aware of. For each k𝒫, we set

s^(k)=qj(k) where jQ is such that jgossipQ((vi1,vi2,,vil),k)

We next compute s^=fτ((s^,a)) and define δa((sa,ma)) to be (s^a,ma) where, for each iloc(a), ma(i)=(s^,va(i)).

Theorem 36.

The distributed strategy τdstr extracted from the positional sequential strategy τ is finite-state. In fact, it is realized by the memory automaton 𝒜 defined above.

Proof idea.

We prove by induction on the size of the trace t that if 𝒜(t)=(s,m) with m=(q,v), then qi=τdstr(i(t)) and s=τdstr(t). The base case is immediate.

For the induction step, let t get extended by a. By induction, qi correctly tracks τdstr on the views of each process. Since τ is memoryless, τdstr(ta)a=fτ(τdstr(a(t)),a)a. Using the gossip construction, let j=gossipa(va,k). Then, by Theorem 35, j=𝗅𝖺𝗍𝖾𝗌𝗍a(t,k) and k(a(t))=k(j(t)). Thus, the intermediate state s^ satisfies s^(k)=τdstr(k(a(t)))k for each k, hence s^=τdstr(a(t)). Updating 𝒜 along a then correctly sets qi=τdstr(i(ta)) and s=τdstr(ta) for all i, completing the induction.

When applied to safety/parity CDM games, the above theorem provides a memory automaton realizing a distributed winning strategy. Note that Agossip does not depend on the specification of the game 𝒢 at all. Distributed memory complexity maxi|Mi| of this memory automaton is bounded by (maxi|Si|)|𝒫|.(maxi|Vi|). This exponential dependence on 𝒫 is due to the fact that each process stores in its local memory state a global-state of A. Our next result shows that this exponential dependence on 𝒫 is necessary. Its proof is based on an adaptation of the memory lower bound argument for generalized reachability in sequential games from [5].

Theorem 37.

For every n, there exists a global safety CDM game 𝒢=(A,s0,Win) with A=({Si},{𝑎}) with |𝒫|=n+1 such that the central decision maker process has O(n) local states and every other process has O(1) local states. Further, there exists a distributed winning strategy in 𝒢. However, any memory automaton realizing a winning distributed strategy in 𝒢 must have at least 2n local memory states for the central decision maker.

7 Discussion

For CDM games – where a single decision maker process participates in all non-deterministic choices – we have established two main results: (i) the problems of deciding the existence of winning strategies for global safety and local parity objectives are EXPTIME-complete, and (ii) constructions of distributed finite-state implementations of these strategies (when they exist) with optimal memory structures.

It is natural to ask about the decidability status of ATS games in the presence of multiple decision making processes. Towards this, we establish the following theorem.

Theorem 38.

ATS games with two decision makers are undecidable.

Our proof of the above theorem uses the key ideas from [12] which showed that six-process asynchronous control games are undecidable. More precisely, we use the intermediate problem infinite bipartite coloring introduced in [12] for our reduction. We then revisit the ideas in the proof of the undecidability of six-process asynchronous control games and adapt them to the setting of fourteen-process safety ATS games with only two decision making processes. The undecidability proof relies crucially on the ability of the two decision makers to take truly concurrent decisions.

Interestingly, if decision events are causally ordered, even across disjoint sets of processes, the arguments presented in this work can be adapted to recover decidability; we presented them in the CDM setting for convenience. It would be interesting to generalize the results in the CDM setting to arbitrary ω-regular objectives. Identifying natural decidable extensions of the CDM games is also a potential future direction.

References

  • [1] Bharat Adsul and Nehul Jain. Asynchronous transition system games for two processes and their analysis. In 11th Indian Conference on Logic and Its Applications (ICLA 2025), volume 15402 of Lecture Notes in Computer Science, pages 69–83. Springer, 2025. doi:10.1007/978-3-031-89610-1_5.
  • [2] Cristian S. Calude, Sanjay Jain, Bakhadyr Khoussainov, Wei Li, and Frank Stephan. Deciding parity games in quasi-polynomial time. SIAM Journal on Computing, 51(2):STOC17–152–STOC17–188, 2022.
  • [3] Volker Diekert and Yves Métivier. Partial commutation and traces. In Grzegorz Rozenberg and Arto Salomaa, editors, Handbook of Formal Languages: Volume 3 Beyond Words, pages 457–533. Springer, 1997. doi:10.1007/978-3-642-59126-6_8.
  • [4] Volker Diekert and Grzegorz Rozenberg. The Book of Traces. World Scientific Publishing Co., Inc., USA, 1995.
  • [5] Nathanaël Fijalkow and Florian Horn. The surprizing complexity of generalized reachability games, 2012. arXiv:1010.2420.
  • [6] Bernd Finkbeiner, Manuel Gieseking, Jesko Hecking-Harbusch, and Ernst-Rüdiger Olderog. Global Winning Conditions in Synthesis of Distributed Systems with Causal Memory. In 30th EACSL Annual Conference on Computer Science Logic (CSL 2022), volume 216 of Leibniz International Proceedings in Informatics (LIPIcs), pages 20:1–20:19, 2022. doi:10.4230/LIPICS.CSL.2022.20.
  • [7] Bernd Finkbeiner and Paul Gölz. Synthesis in Distributed Environments. In 37th IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science (FSTTCS 2017), volume 93 of Leibniz International Proceedings in Informatics (LIPIcs), pages 28:1–28:14, 2018. doi:10.4230/LIPICS.FSTTCS.2017.28.
  • [8] Bernd Finkbeiner and Ernst-Rüdiger Olderog. Petri games: Synthesis of distributed systems with causal memory. Information and Computation, 253:181–203, 2017. doi:10.1016/J.IC.2016.07.006.
  • [9] Paul Gastin, Benjamin Lerman, and Marc Zeitoun. Distributed games with causal memory are decidable for series-parallel systems. In Kamal Lodaya and Meena Mahajan, editors, FSTTCS 2004: Foundations of Software Technology and Theoretical Computer Science, 24th International Conference, Chennai, India, December 16-18, 2004, Proceedings, volume 3328 of Lecture Notes in Computer Science, pages 275–286. Springer, 2004. doi:10.1007/978-3-540-30538-5_23.
  • [10] Blaise Genest, Hugo Gimbert, Anca Muscholl, and Igor Walukiewicz. Asynchronous games over tree architectures. In Fedor V. Fomin, Rusins Freivalds, Marta Z. Kwiatkowska, and David Peleg, editors, Automata, Languages, and Programming - 40th International Colloquium, ICALP 2013, Riga, Latvia, July 8-12, 2013, Proceedings, Part II, volume 7966 of Lecture Notes in Computer Science, pages 275–286. Springer, 2013. doi:10.1007/978-3-642-39212-2_26.
  • [11] Hugo Gimbert. On the Control of Asynchronous Automata. In 37th IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science (FSTTCS 2017), volume 93 of Leibniz International Proceedings in Informatics (LIPIcs), pages 30:1–30:15, 2018. doi:10.4230/LIPICS.FSTTCS.2017.30.
  • [12] Hugo Gimbert. Distributed asynchronous games with causal memory are undecidable. Logical Methods in Computer Science, Volume 18, Issue 3, September 2022. doi:10.46298/lmcs-18(3:30)2022.
  • [13] Erich Grädel, Wolfgang Thomas, and Thomas Wilke, editors. Automata, Logics, and Infinite Games: A Guide to Current Research [outcome of a Dagstuhl seminar, February 2001], volume 2500 of Lecture Notes in Computer Science. Springer, 2002. doi:10.1007/3-540-36387-4.
  • [14] P. Madhusudan, P. S. Thiagarajan, and Shaofa Yang. The MSO theory of connectedly communicating processes. In Ramaswamy Ramanujam and Sandeep Sen, editors, FSTTCS 2005: Foundations of Software Technology and Theoretical Computer Science, 25th International Conference, Hyderabad, India, December 15-18, 2005, Proceedings, volume 3821 of Lecture Notes in Computer Science, pages 201–212. Springer, 2005. doi:10.1007/11590156_16.
  • [15] Robert McNaughton. Infinite games played on finite graphs. Annals of Pure and Applied Logic, 65(2):149–184, 1993. doi:10.1016/0168-0072(93)90036-D.
  • [16] Madhavan Mukund. Automata on distributed alphabets. In Modern Applications of Automata Theory, IISc Research Monographs Series 2, pages 257–288. World Scientific, 2012. doi:10.1142/9789814271059_0009.
  • [17] Madhavan Mukund and Milind A. Sohoni. Keeping track of the latest gossip in a distributed system. Distributed Computing, 10(3):137–148, 1997. doi:10.1007/s004460050031.
  • [18] Anca Muscholl and Igor Walukiewicz. Distributed Synthesis for Acyclic Architectures. In 34th International Conference on Foundation of Software Technology and Theoretical Computer Science (FSTTCS 2014), volume 29 of Leibniz International Proceedings in Informatics (LIPIcs), pages 639–651, 2014. doi:10.4230/LIPICS.FSTTCS.2014.639.
  • [19] Amir Pnueli and Roni Rosner. Distributed reactive systems are hard to synthesize. In 31st Annual Symposium on Foundations of Computer Science, St. Louis, Missouri, USA, October 22-24, 1990, Volume II, pages 746–757. IEEE Computer Society, 1990. doi:10.1109/FSCS.1990.89597.
  • [20] Wieslaw Zielonka. Notes on finite asynchronous automata. RAIRO-Theoretical Informatics and Applications, 21(2):99–135, 1987. doi:10.1051/ITA/1987210200991.