Parameterized Verification of Timed Networks
with Clock Invariants
Abstract
We consider parameterized verification problems for networks of timed automata (TAs) based on different communication primitives. To this end, we first consider disjunctive timed networks (DTNs), i.e., networks of TAs that communicate via location guards that enable a transition only if there is another process in a certain location. We solve for the first time the case with unrestricted clock invariants, and establish that the parameterized model checking problem (PMCP) over finite local traces can be reduced to the corresponding model checking problem on a single TA. Moreover, we prove that the PMCP for networks that communicate via lossy broadcast can be reduced to the PMCP for DTNs. Finally, we show that for networks with -wise synchronization, and therefore also for timed Petri nets, location reachability can be reduced to location reachability in DTNs. As a consequence we can answer positively the open problem from Abdulla et al. (2018) whether the universal safety problem for timed Petri nets with multiple clocks is decidable.
Keywords and phrases:
Networks of Timed Automata, Parameterized Verification, Timed Petri NetsFunding:
Étienne André: Partially supported by ANR BisoUS (ANR-22-CE48-0012).Copyright and License:
2012 ACM Subject Classification:
Theory of computation ConcurrencyEditors:
C. Aiswarya, Ruta Mehta, and Subhajit RoySeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
Formally reasoning about concurrent systems is difficult, in particular if correctness guarantees should hold regardless of the number of interacting processes – a problem also known as parameterized verification [3, 7], since the number of processes is considered a parameter of the system. Parameterized verification is undecidable in general [14] and even in very restricted settings, e.g., for safety properties of finite-state processes with rather weak communication primitives, such as token-passing or transition guards [32, 23]. A long line of research has identified classes of systems and properties for which parameterized verification is decidable [23, 28, 24, 25, 22, 18, 9, 26], usually with finite-state processes.
Timed automata (TAs) [8] provide a computational model that combines real-time constraints with concurrency, and are therefore an expressive and widely used formalism to model real-time systems. However, TAs are usually used to model a constant and fixed number of system components. When the number of components is very large or unknown, considering their static combination becomes highly impractical, or even impossible if is unbounded. However, there are several lines of research studying networks with a parametric number of timed components (see e.g., [6, 17, 4, 11, 1, 10]).
One of these lines considers different variants of timed Petri nets (we here consider the version defined in [2]), and networks of timed automata with -wise synchronization [6, 5], a closely related model. Due to the expressiveness of the synchronization primitive, results for these models are often negative or limited to severely restricted cases. For example, in networks of timed automata with a controller process and multiple clocks per process, location reachability is undecidable (even in the absence of clock invariants that could force a process to leave a location) [5]. The problem is decidable with a single clock per process and without clock invariants [6]. Decidability remains open for location reachability in networks without a controller process and with multiple clocks (with or without clock invariants), which is equivalent to the universal safety problem for timed Petri nets that is mentioned as an open problem in [2].
Another model that has received attention recently and is very important for the work we present is that of Disjunctive Timed Networks (DTNs) [31, 12]. It combines the expressive formalism of TAs with the relatively weak communication primitive of disjunctive guards [23]: transitions can be guarded with a location (called “guard location”), and such a transition can only be taken by a TA in the network if another process is in that location upon firing. Consider the example in Figure 1 which illustrates a process’s behavior within an asynchronous communication system, where tasks can be dynamically posted and data is read through shared input channels. The transition from to is guarded by location : for a process to take this transition, at least one other process must be in .
Parameterized model checking of DTNs was first studied in [31], who considered local trace properties in the temporal logic MITL, and showed that the problem can be solved with a cutoff, i.e., a number of processes that is sufficient to determine satisfaction in networks of any size. However, their result is restricted to the case when guard locations do not have clock invariants. This restriction is crucial to their proof, and they furthermore showed that statically computable cutoffs do not exist for the case when TAs can have clock invariants on all locations.
However, the non-existence of cutoffs does not imply that the problem is undecidable. In [12], the authors improved the aforementioned results by avoiding the construction of a cutoff system and instead using a modified zone graph algorithm. Moreover, they gave sufficient conditions on the TAs to make the problem decidable even in the presence of clock invariants on guard locations. However, these conditions are semantic, and it is not obvious how to build models that satisfy them; for instance, our motivating example in Figure 1 does not satisfy them. The decidability of the case without restrictions on clock invariants thus remained open.
In this paper, we show that properties of finite local traces (and therefore also location reachability) are decidable for DTNs without restrictions on clock invariants. Moreover, we show that checking local trace properties of systems with lossy broadcast communication [22, 11] or with -wise synchronization can be reduced to checking local trace properties of DTNs. Note that our simulation of these systems by DTNs crucially relies on the power of clock invariants, and would not be possible in the previous restricted variants of DTNs.
To see why checking local trace properties of DTNs with invariants is technically difficult, consider first the easy case from [31], where guard locations cannot have invariants. In this case, it is enough to determine for every guard location the minimal time at which it can be reached: since a process cannot be forced to leave, can be occupied at any time in , and transitions guarded by can be assumed to be enabled at any time later than . This is already the underlying insight of [31], and in [12] it is embedded into a technique that replaces location guards with clock guards , where is a clock denoting the time elapsed since the beginning. In contrast, if guard locations can have invariants, a process in can be forced to leave after some time. Therefore, the set of global times where can be occupied is an arbitrary set of timepoints, and it is not obvious how it can be finitely represented.
Detailed Example.
We introduce an example that motivates the importance of clock invariants in modeling concurrent timed systems, and will be used as a running example. It is inspired by the verification of asynchronous programs [27]. In this setting, processes can be “posted” at runtime to solve a task, and will terminate upon completing the task. Our example in Figure 1 features one clock per process; symbols and are transition labels. An unbounded number of processes start in the initial location . In the inner loop, a process can move to location in order to see whether an input channel carries data. Once it determines that this is the case, it moves to , thereby giving the command to post a process that reads the data, and then can return to . In the outer loop, if another process gives the command to read data, i.e., is in , then another process can accept that command and move to . After some time, the process will either determine that all the data has been read and move to , or it will timeout and move to to ask another process to carry on reading. However, this scheme may run into an error if there are processes in and at the same time, modeled by a transition from to that can only be taken if is occupied.
While this example is relatively simple, checking reachability of location (in a network with arbitrarily many processes) is not supported by any existing technique. This is because clock invariants on guard locations are not supported at all by [31], and are supported only in special cases (that do not include this example) by [12]. Also other results that could simulate DTNs do not support clock invariants at all [6, 4].
Moreover, note that clock invariants may be essential for correctness of such systems: in a system , consisting of three copies of the automaton in Figure 1, location is reachable; a computation that reaches is given in Figure 2. However, if we add a clock invariant to location (forcing processes that enter to immediately leave it again), it becomes unreachable111To see this, consider the intervals of global time in which the different locations can be occupied: first observe that in the inner loop can now only be occupied in intervals (for ), and therefore processes can only move into at these times. From there, they might move into after two time units, so overall can be occupied in intervals for , and in any interval . Since clock is always reset upon entering , can only be occupied in intervals for , whereas for a process in the clock constraint on the transition to can only be satisfied in intervals . Therefore, is not reachable with the additional clock invariant on ..
Contributions.
We present new decidability results for parameterized verification problems with respect to three different system models as outlined below.
-
DTNs (Section 3). For DTNs, we show that, surprisingly, and despite the absence of cutoffs [31], the parameterized model checking problem for finite local traces is decidable in the general case, without any restriction on clock invariants. Our technique circumvents the non-existence of cutoffs by constructing a modified region automaton, a well-known data structure in timed automata literature, such that communication via disjunctive guards is directly taken into account. In particular, we focus on analyzing the traces of a single (or a finite number of) process(es) in a network of arbitrary size.
While our algorithm uses some techniques from [12], there are fundamental differences: in particular, we introduce a novel abstraction of global time into a finite number of “slots”, which are elementary intervals with integer bounds, designed to capture the information necessary for disjunctive guard communication. When a transition with a location guard is to be taken at a given slot, we check whether the given guard location appears in the same slot. It turns out that such an abstract treatment of the global time is sound: we prove that in this case, one can find a computation that enables the location guard at any real time instant inside the given slot. Thus, the infinite set of points at which a location guard is enabled is a computable union of intervals; and we rely on this property to build a finite-state abstraction to solve our problem.
-
Lossy Broadcast Timed Networks (Section 4). We investigate the relation between communication with disjunctive guards and with lossy broadcast [22, 11]. For finite-state processes, it is known that lossy broadcast can simulate disjunctive guards wrt. reachability [15], but the other direction is unknown.222[15] considers IO nets which are equivalent to systems with disjunctive guards. It gives a negative result for a specific simulation relation, but does not prove that simulation is impossible in general. As our second contribution, we establish the decidability of the parameterized model checking problem for local trace properties in timed lossy broadcast networks. This result is obtained by proving that communication by lossy broadcast is equivalent to communication by disjunctive guards for networks of timed automata with clock invariants for local trace properties.
-
Synchronizing Timed Networks and Timed Petri Nets (Section 5). Finally, we show that the location reachability problem for controllerless multi-clock timed networks with -wise synchronization can be reduced to the location reachability problem for DTNs with clock invariants.
As a consequence, it follows that the universal safety problem for timed Petri nets with multiple clocks, stated as an open problem in [2], is also decidable.
The proofs of the last two points above involve constructions that require clock invariants on guard locations. This is why clock invariants are crucial in our formalism, which is a nontrivial extension of [12]. Note that in both cases we get decidability even for variants of the respective system models with clock invariants, not considered in [2, 11].
For all of the above systems, location reachability can be decided in EXPSPACE.
Due to space constraints, some details of the definitions and full proofs of some of our results are deferred to the appendix of the extended version [13].
2 Preliminaries
Let be a set of clock variables, also called clocks. A clock valuation is a mapping . For a valuation and a clock , we denote the fractional and integral parts of by and respectively. We denote by the clock valuation that assigns to every clock, and by for the valuation s.t. for all . Given a subset of clocks and a valuation , denotes the valuation such that if and otherwise. We call clock constraints the terms of the following grammar: with , and
A clock valuation satisfies a clock constraint , denoted by , if evaluates to after replacing every with its value .
Definition 1.
A timed automaton (TA) is a tuple where is a finite set of locations with initial location , is a finite set of clocks, is a finite alphabet that contains a subset of special symbols, including a distinguished symbol , is a transition relation, and assigns to every location a clock invariant .
TAs were introduced in [8] and clock invariants, also simply called invariants, in [29]. We assume w.l.o.g. that invariants only contain upper bounds on clocks (as lower bounds can be moved into the guards of incoming transitions). will be used to label silent transitions and unless explicitly specified otherwise (in Sections 4 and 5), we assume that .
Example 2.
If we ignore the location guards (from to ) and (from to ), then the automaton in Figure 1 is a classical TA with one clock . For example, the invariant of is and the transition from to resets clock .
A configuration of a TA is a pair , where and is a clock valuation. A delay transition is of the form for some delay such that . A discrete transition is of the form , where , , and . A transition is called an -transition. We write if there is a delay transition followed by a discrete transition .
A timed path of is a finite sequence of transitions . For a timed path , let be the total time delay of . The length of is . A configuration has a timelock if there is s.t. for every timed path starting in . We write if there is a timed path ; is a computation if and .
The trace of the timed path is the sequence of pairs of delays and labels obtained by removing transitions with a label from and adding the delays of these to the following transition. The language of , denoted , is the set of traces of all of its computations.
We now recall guarded timed automata as an extension of timed automata with location guards, that will allow, in a network, to test whether some other process is in a given location in order to pass the guard.
Definition 3 (Guarded Timed Automaton (GTA)).
A GTA is a tuple , where is a finite set of locations with initial location , is a finite set of clocks, is a finite alphabet that contains a subset of special symbols, including a distinguished symbol , is a transition relation, and assigns to every location an invariant .
Intuitively, a transition takes the automaton from location to ; can only be taken if clock guard and location guard are both satisfied, and it resets all clocks in . Note that satisfaction of location guards is only meaningful in a network of TAs (defined below). Intuitively, a location guard is satisfied if it is or if another automaton in the network currently occupies location . We say that is trivial if . We say location has no invariant if .
Example 4.
In the GTA in Figure 1, the transition from to is guarded by location guard . The transition from to has a trivial location guard (trivial location guards are not depicted in our figures). Location has no invariant.
Definition 5 (Unguarded Timed Automaton).
Given a GTA , we denote by the unguarded version of , which is the TA obtained from by removing location guards, and adding a fresh clock , called the global clock, that does not appear in the guards or resets. Formally, with .
For a GTA , let denote a network of guarded timed automata (NGTA), consisting of copies of . Each copy of in is called a process.
A configuration of an NGTA is a tuple , where every is a configuration of . The semantics of can be defined as a timed transition system , where denotes the set of all configurations of , is the unique initial configuration , and the transition relation is the union of the following delay and discrete transitions:
- delay transition
-
if , i.e., we can delay units of time if all clock invariants are satisfied at the end of the delay.
- discrete transition
-
for some if
-
1)
is a discrete transition of with ,
-
2)
or for some , and
-
3)
and for all .
That is, location guards are interpreted as disjunctive guards: unless , at least one other process needs to occupy location in order for process to pass this guard.
-
1)
We write for a delay transition followed by a discrete transition . Then, a timed path of is a finite sequence .
For a timed path , let be the total time delay of . The definition of timelocks extends naturally to configurations of NGTAs. A timed path of is a computation if . Its length is equal to .
We write if and for some , and similarly . We say that a location is reachable in if there exists a reachable configuration s.t. .
Example 6.
The trace of the timed path is a sequence obtained by removing all discrete transitions of with , and adding all delays of these transitions to the following discrete transition, yielding the . The language of , denoted , is the set of traces of all of its computations.
Example 7.
For the computation in Example 6, .
We will also use projections of these global objects onto subsets of the processes. That is, if and , then is the tuple , and we extend this notation to computations by keeping only the discrete transitions of and by adding the delays of the removed discrete transitions to the delay of the following discrete transition of .
We introduce a special notation for projecting to a single process and define, for any natural number , a computation of , obtained from by discarding the index from all transitions; that is, has the form . We also extend this to traces; that is, , which is a trace of . For a set of traces , and set of processes, we write .
Note that the projection of a computation is not necessarily a computation itself, since location guards may not be satisfied.
Example 8.
For the computation in Example 6, and .
A prefix of a computation , is a sequence with . If is a timed path and , then denotes the maximal prefix of with , and similarly for timed paths of a single GTA. For timed paths of and of with , we denote by their composition into a timed path of whose projection to the first processes is , and whose projection to the last processes is .
Definition 9 (Disjunctive Timed Network).
A given GTA induces a disjunctive timed network (DTN) , defined as the following family of NGTAs: (we follow the terminology and use abbreviations of [31]). We define and consider .
2.1 The Parameterized Model Checking Problem
We formalize properties of DTNs as sets of traces that describe the intended behavior of a fixed number of processes running in a system with arbitrarily many processes. That is, a local property of processes, also called a -indexed property, is a subset of . For , for simplicity, we consider it as a subset of . We say that satisfies a -indexed local property , denoted , if . Note that, due to the symmetry of the system, it does not matter which processes we project onto, so we always project onto the first .
Parameterized model checking problem (PMCP):
Input: a GTA and a -indexed local property
Problem: Decide whether holds .
Local trace properties allow to specify for instance any local safety property of a single process (with ), as well as mutual exclusion properties (with ) and variants of such properties for larger .
PMCP can be solved by checking whether . Our solution consists in building a TA that recognizes . Note that language inclusion is undecidable on TAs [8], but many interesting problems are decidable. These include MITL model checking [21] and simpler problems such as reachability: given symbol , the reachability PMCP is the PMCP where is the set of traces that contain an occurrence of . Reachability of a location of can be solved by PMCP by choosing appropriate transition labels.
Example 10.
In the example of Figure 1, a natural local property we are interested in is the reachability of the label . Formally, the local property for process 1 can be written as a 1-indexed property: .
3 Model Checking DTNs
3.1 Definitions
We recall here the standard notions of regions and region automata, and introduce the slots of regions which refer to the intervals of possible valuations of a global clock.
Regions.
Given , for all , let denote the maximal bound that is compared to: “”, “”, “” appears in a guard or invariant of (we set if this set is empty). is called the maximal bound function for . Define . We say that two valuations and are equivalent w.r.t. , denoted by , if the following conditions hold for any clocks [19, 20]:
-
1.
either or and ;
-
2.
if then ;
-
3.
if then ;
-
4.
for any interval among , we have .
An -region is an equivalence class of valuations induced by . We denote by the region to which belongs. We omit when it is clear from context.
For an -region , if a valuation satisfies a clock guard , then every valuation in satisfies . We write to mean that every valuation in satisfies .
Given an -region and a clock , let denote the projection of the valuations of to , i.e., . Given a valuation and a clock , let denote the projection of to the clocks other than , i.e., is defined by for all . By extension, given a region and a clock , let .
Region Automaton.
The region automaton of a TA is a finite automaton with alphabet , denoted by , defined as follows.
The region states are pairs where and is an -region. The initial region state is where is the initial location of and is the singleton region containing .
There is a transition in iff there is a transition in for some and . We say that is a time successor of . Note that we can have . Furthermore, is the immediate time successor of if , , and whenever , we have .
There is a transition in iff there is a transition with label in for some and . We write if either or for some .
A path in is a finite sequence of transitions for some where . A path of is a computation if it starts from the initial region state.
It is known that captures the untimed traces of , i.e., the projection of the traces of to [8].
Slots.
Now, we can introduce slots. We will show later that slots are a sufficiently precise abstraction of time for DTNs. In this paragraph, we assume that TAs have a distinguished global clock which is never reset and does not appear in clock guards. We will thus consider a clock set (making appear explicitly for clarity).
Let denote the number of pairs where and is an -region (thus a region on the clock set without ). Recall that is exponential in [8, 20]. Let us consider a bound function for such that for , , and . Throughout the paper, the bound functions will be denoted by whenever the clock set contains the distinguished global clock , and otherwise. The former will be referred to as -regions, and the latter as -regions.
We define the slot of an -region as . It is known that for any region (with any bound function) and clock , is an interval [30]. Moreover, if for every is below the maximal constant , then is either a singleton interval of the form , or an open interval of the form for some .
For a slot , let us define as follows.
-
1.
if for some , then ;
-
2.
if and , then ;
-
3.
if , then .
-
4.
if then .
We define the slot of a valuation on as where is the (unique) -region s.t. . Slots, seen as intervals, can be bounded or unbounded.
Example 11.
Consider the clock set and the region defined by , , (with for all clocks). Then, .
As a second example, assume , and is, say, . Consider the region defined by . Then, . In addition, .
We now introduce the shifting operation which consists of increasing the global clock value, without changing the values of other clocks.
Lemma 12.
Given any -region and such that , and , there exists a -region which satisfies and , and can be computed in polynomial time in the number of clocks.
The region in Lemma 12 will be denoted by . We say that it is obtained by shifting the slot by in . We extend this notation to sets of regions and sets of region states, that is, where is a set of region states. For a set of region states , we define .
Example 13.
Consider the clock set and the region defined in Example 11 satisfying , , (with ). Then, , and is defined by the same constraints as above except that , and .
Remark 14.
Recall that given a bound function, the number of regions is since regions determine an order of the fractional values of clocks, the subsets of clocks that have integer values, and an integral value for each clock [19]. The number of -regions is , which is doubly exponential in since is.
Crucial to our paper, however, is that the set of projections of the set of -regions has size exponential only. This can be seen as follows: our definition of regions from [19] uses a distinct maximum bound function for each clock. Thus, when constraints on are eliminated, there only remain constraints on clocks , with maximal constants as in the original GTA . We thus fall back to the set of regions of of size .
3.2 Layer-based Algorithm for the DTN Region Automaton
We describe here an algorithm to compute a TA that recognizes the language . We explain at the end of the section how to generalize the algorithm to compute for an interval for .
Assumption 1.
We assume that the given GTA is timelock-free, regardless of location guards. Formally, let be obtained from by removing all transitions with non-trivial location guards. We require that no configuration of has a timelock.
Note that this assumption guarantees that will be timelock-free for all . Assuming timelock-freeness is not restrictive since a protocol cannot possibly block the physical time: time will elapse regardless of the restrictions of the design. A network with a timelock is thus a design artifact, and just means the model is incomplete. An incomplete model can be completed by adding a sink location to which processes that would cause a timelock can move, and regarding reachability the resulting model is equivalent to the original one.
Example 15.
The GTA in Figure 3 does not satisfy Assumption 1, since (where we remove transitions with non-trivial location guards) has a timelock at .
The following assumption simplifies the proofs:
Assumption 2.
Each transition of GTA is labeled by a unique label different from .
Consider a GTA . Our algorithm builds a TA capturing the language . The construction is based on -region states of ; however, not all transitions of the region automaton of are to be added since location guards mean that some transitions are not enabled at a given region. Unless otherwise stated, by region states we mean -region states. The steps of the construction are illustrated in Figure 4. From , we first obtain , and build the region automaton for , denoted by . Then Algorithm 1 builds the so-called DTN region automaton which is a finite automaton. Finally we construct which we refer to as the summary timed automaton, a timed automaton derived from by adding clocks and clock guards to . Our main result is that recognizes the language .
Intuitively, Algorithm 1 computes region states reachable by a single process within the context of a network of arbitrary size. These region states are partitioned according to their slots. More precisely, Algorithm 1 computes (lines 3-4) the sequence , where is a set of -region states of having the same slot (written ), and is a set of transitions from region states of to either or . These transitions include -transitions which correspond to delay transitions: if the slot does not change during the delay transition, then the transition goes to a region-state which is also in ; otherwise, it leaves to the next slot and the successor is in . During discrete transitions from , the slot does not change, so the successor region-states are always inside . In order to check if a discrete transition with location guard must be considered, the algorithm checks if some region-state was previously added to the same layer . This means that some (other) process can be at somewhere at a global time that belongs to . This is the nontrivial part of the algorithm: the proof will establish that if a process can be at location at some time in a given slot , then it can also be at at any time within .
For two sets of region states of , let us define iff can be obtained from by shifting the slot, that is, if there exists such that . Recall that means that both sets contain the same regions when projected to the local clocks . This definition is of course symmetric.
Algorithm 1 stops (line 5) when for some with both layers having singleton slots (this requirement could be relaxed but this simplifies the proofs and only increases the number of iterations by a factor of 2).
The algorithm returns the DTN region automaton , where is the set of explored region states, and is the set of transitions that were added; except that transitions leaving are redirected back to (lines 7–9). Redirecting such transitions means that whenever has a delay transition from to with and , then we actually add a transition from to , where is obtained from by shifting the slot to that of ; this means that , so these define the same clock valuations except with a shifted slot. The property ensures that .
We write iff . Paths and computations are defined for the DTN region automaton analogously to region automata.
We now show how to construct the summary timed automaton (the step from to in Figure 4). We define by extending with the clocks of . Moreover, each transition has the guard and no reset; and each transition with has the guard , and resets the clocks that are equal to 0 in . The intuition is that ensures by construction that any valuation that is to take a discrete transition () at location belongs to . Notice that we omit invariants here. Because transitions are derived from those of , the only additional behavior we can have in due to the absence of invariants is a computation delaying in a location and reaching outside of (without taking an -transition), while no discrete transitions can be taken afterwards. Because traces end with a discrete transition, this does not add any trace not possible in .
3.2.1 Properties of Algorithm 1
We explain the overview of the correctness argument for Algorithm 1 and some of its consequences.
Let us first prove the termination of the algorithm, which also yields a bound on the number of iterations of the main loop (thus on and ). Recall that for a given , denotes the number of pairs where and is an -region (see Section 3.1).
Lemma 16.
Let be a DTN region automaton returned by Algorithm 1. Then the slots of all region states in are bounded. Consequently, the number of iterations of Algorithm 1 is bounded by .
The region automaton is of exponential size. Each iteration of Algorithm 1 takes exponential time since one might have to go through all region states in the worst case. By Lemma 16, the number of iterations is bounded by , which is doubly exponential in . Theorem 21 will show how to decide the reachability PMCP in exponential space.
We now prove the correctness of the algorithm in the following sense.
Theorem 17.
Let be a GTA, its DTN region automaton, be the summary timed automaton. Then we have .
To prove this, we need the following lemma that states a nontrivial property on which we rely: if a process can reach a given location at global time , then it can also reach at any global time within the slot of . It follows that the set of global times at which a location can be occupied by at least one process is a union of intervals. Intuitively, this is why partitioning the region states by slots is a good enough abstraction in our setting.
Lemma 18.
Consider a GTA with bound function . Let such that be a computation in such that is bounded. For all , there exists a timed computation in such that for , and .
The following lemma proves one direction of Theorem 17.
Lemma 19.
Consider a trace . Let be the unique interval of the form or with that contains .
-
1.
For all , there exists , and a computation of such that for some , and .
-
2.
.
The following lemma establishes the inclusion in the other direction. Given a computation in , we build a timed computation in on the same trace. Because the total time delay of can be larger than the bound , we need to carefully calculate the slot in which they will end when projected to .
Lemma 20.
For any computation of with , .
Deciding the Reachability PMCP.
It follows from Algorithm 1 that the reachability case can be decided in exponential space. This basically consists of running the main loop of Algorithm 1 without storing the whole list of all , but only the last one. The loop needs to be repeated up to times (or until the target label is found).
Theorem 21.
The reachability PMCP for DTNs is decidable in EXPSPACE.
Local Properties Involving Several Processes.
The algorithm described above can be extended to compute . We define the product of timed automata , written , as the standard product of timed automata (see e.g., [16]) applied to after replacing each label appearing in by .
Lemma 22.
Given GTA , and interval , let be the summary automaton computed as above. Then .
Limitations.
Liveness properties (e.g., checking whether a transition can be taken an infinite number of times) are not preserved by our abstraction; since an infinite loop in the DTN region automaton may not correspond to a concrete computation in any . In fact, consider the GTA in Figure 5. While there is an infinite loop on in the DTN region automaton, no concrete execution takes the loop on indefinitely, as each firing of this loop needs one more process to visit , and then to leave it forever, due to the invariant .
4 Timed Lossy Broadcast Networks
Systems with lossy broadcast (a.k.a. “reconfigurable broadcast networks”, where the underlying network topology might change arbitrarily at runtime) have received attention in the parameterized verification literature [22]. In the setting with finite-state processes, lossy broadcast is known to be at least as powerful as disjunctive guards, but it is unknown if it is strictly more powerful [15, Section 6]. We show that in our timed setting the two models are equally powerful, i.e., they simulate each other.
Lossy Broadcast Networks.
Let be a set of labels. A lossy broadcast timed automaton (LBTA) is a tuple where are as for TAs, and a transition is of the form , where . The synchronization label is used for defining global transitions. A transition with is called a sending transition, and a transition with is called a receiving transition.
We also make Assumption 1 and Assumption 2 for LTBAs. The former means that the LBTA is timelock-free when all receiving transitions are removed. The semantics of a network of LBTAs is a timed transition system defined similarly as for NGTAs, except for discrete transitions which now induce a sequence of local transitions separated by 0 delays, as follows. Given , configurations of are defined as for DTNs. Let be a configuration of . Consider indices and , and labels for , such that
-
i)
is a sending transition of , and
-
ii)
for all : is a receiving transition of .
Then the timed transition system of contains the transition sequence for all possible sequences where . Non-zero delays only occur outside of these chains of 0-delay transitions. For a given LBTA , the family of systems is called a lossy broadcast timed network (LBTN).
Simulating LBTN by DTN (and vice versa).
The following theorem states that LBTAs and GTAs are inter-reducible.
Theorem 23.
For all GTA , there exists an LBTA s.t. , . For all LBTA , there exists a GTA s.t. .
Sketch.
Simulation of disjunctive guards by lossy broadcast is simple: a transition from to with location guard is simulated in lossy broadcast by the sender taking a self-loop transition on , and the receiver having a synchronizing transition from to .
The other direction is where we need the power of clock invariants: to simulate a lossy broadcast where the sender moves from to and a receiver moves from to , in the DTN we first let the sender move to an auxiliary location (from which it can later move on to ), and have a transition from to that is guarded with . To ensure that no time passes between the steps of sender and receiver, we add an auxiliary clock that is reset when moving into , and has clock invariant .
In both directions, auxiliary transitions that are only needed for the simulation are labeled with fresh symbols in such that they do not appear in the language of the system.
Because the reduction to DTNs is in linear-time, we get the following.
Corollary 24.
The reachability PMCP for LBTN is decidable in EXPSPACE.
5 Synchronizing Timed Networks and Timed Petri Nets
We first introduce synchronizing timed networks. Our definitions follow [6, 5], except that their model considers systems with a controller process, whereas we assume (like in our previous models) that all processes execute the same automaton.
Synchronizing Timed Network.
A synchronizing timed automaton (STA) is a tuple where , , , are as for TAs, and is a finite set of rules, where each rule is of the form for some and with for .
The semantics of a network of STAs (NSTA) is defined as for NGTAs, except for discrete transitions, which now synchronize a subset of all processes in the following way: Let be a rule (of the form described above) and a configuration of . Assume
-
i)
there exists an injection such that for each , , is an element of , and , and
-
ii)
, and .
Then the timed transition system of contains the transition sequence . That is, distinct processes take individual transitions according to the rule without delay, and the configurations of the non-participating processes remain unchanged.
Again, we also make Assumptions 1 and 2 for STAs. The former means here that is timelock-free when all transitions of rules with are removed. All other notions follow in the natural way. Given an STA , the family of systems is called a synchronizing timed network (STN).
Theorem 25.
For all GTA with set of locations , there exists an STA with set of locations such that for every : is reachable in iff is reachable in . For all STA with set of locations , there exists a GTA with set of locations such that for every : is reachable in iff is reachable in .
Sketch.
Simulation of disjunctive guards by STAs is simple: a transition from to with location guard is simulated by a pairwise synchronization, where one process takes a self-loop on , and the other moves from to .
Conversely, to simulate a rule of the STA with participating processes, we add auxiliary locations , for , each with a clock invariant (on an additional clock only used for the simulation) that ensures that no time passes during simulation. For each element of , we have a transition from to , and from there to . A transition to is guarded with (except when ), and with the clock constraint , and all transitions to are guarded with . This ensures that any is reachable through this construction if and only if the global configuration at the beginning would allow the STA to execute rule . To avoid introducing timelocks, each of the has an additional transition with a trivial location guard and no clock guard to a new sink location that does not have an invariant. I.e., if simulation of a rule is started but cannot be completed (because there are processes in some but not all of the locations ), then processes can (and have to) move to .
Corollary 26.
The reachability PMCP for STN is decidable in EXPSPACE.
Note that the construction in our proof is in general not suitable for language equivalence, i.e., might contain traces that are not in .
Abdulla et al. [2] considered the universal safety problem of timed Petri nets – that is, whether a given transition can eventually be fired for any number of tokens in the initial place – and solved it for the case where each token has a single clock. The question whether the problem is decidable for tokens with multiple clocks remained open. This problem, in the multi-clock setting, can be reduced to the PCMP of STNs. The reduction is conceptually straightforward and computable in polynomial time in the size of the input.
Corollary 27.
The universal safety problem for timed Petri nets with an arbitrary number of clocks is decidable in EXPSPACE.
6 Conclusion
In this paper, we solved positively the parameterized model checking problem (PMCP) for finite local trace properties of disjunctive timed networks (DTNs) with invariants. We also proved that the PMCP for networks that communicate via lossy broadcast can be reduced to the PMCP for DTNs, and is therefore decidable. Additional results also allowed us to solve positively the open problem from [2] whether the universal safety problem for timed Petri nets with multiple clocks is decidable. Table 1 gives an overview of our results, compared to existing results for the classes of systems we consider.
In addition to the results presented here, we believe that our proof techniques can be extended to support timed networks with more powerful communication primitives, and in some cases to networks with controllers.
Future work will include tightening the complexity bounds for the problems considered here, as well as the development of zone-based algorithms that can be more efficient in practice than a direct implementation of the algorithms presented here.
References
- [1] Parosh Aziz Abdulla, Mohamed Faouzi Atig, and Jonathan Cederberg. Timed lossy channel systems. In Deepak D’Souza, Telikepalli Kavitha, and Jaikumar Radhakrishnan, editors, FSTTCS, volume 18 of LIPIcs, pages 374–386. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2012. doi:10.4230/LIPICS.FSTTCS.2012.374.
- [2] Parosh Aziz Abdulla, Mohamed Faouzi Atig, Radu Ciobanu, Richard Mayr, and Patrick Totzke. Universal safety for timed Petri nets is PSPACE-complete. In Sven Schewe and Lijun Zhang, editors, CONCUR, volume 118 of LIPIcs, pages 6:1–6:15. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2018. doi:10.4230/LIPICS.CONCUR.2018.6.
- [3] Parosh Aziz Abdulla and Giorgio Delzanno. Parameterized verification. International Journal on Software Tools for Technology Transfer, 18(5):469–473, 2016. doi:10.1007/s10009-016-0424-3.
- [4] Parosh Aziz Abdulla, Giorgio Delzanno, Othmane Rezine, Arnaud Sangnier, and Riccardo Traverso. Parameterized verification of time-sensitive models of ad hoc network protocols. Theoretical Computer Science, 612:1–22, 2016. doi:10.1016/j.tcs.2015.07.048.
- [5] Parosh Aziz Abdulla, Johann Deneux, and Pritha Mahata. Multi-clock timed networks. In LiCS, pages 345–354. IEEE Computer Society, 2004. doi:10.1109/LICS.2004.1319629.
- [6] Parosh Aziz Abdulla and Bengt Jonsson. Model checking of systems with many identical timed processes. Theoretical Computer Science, 290(1):241–264, 2003. doi:10.1016/S0304-3975(01)00330-9.
- [7] Parosh Aziz Abdulla, A. Prasad Sistla, and Muralidhar Talupur. Model checking parameterized systems. In Edmund M Clarke, Thomas A. Henzinger, Helmut Veith, and Roderick Bloem, editors, Handbook of Model Checking, pages 685–725. Springer, 2018. doi:10.1007/978-3-319-10575-8_21.
- [8] Rajeev Alur and David L. Dill. A theory of timed automata. Theoretical Computer Science, 126(2):183–235, April 1994. doi:10.1016/0304-3975(94)90010-8.
- [9] Benjamin Aminof, Tomer Kotek, Sasha Rubin, Francesco Spegni, and Helmut Veith. Parameterized model checking of rendezvous systems. Distributed Computing, 31(3):187–222, 2018. doi:10.1007/s00446-017-0302-6.
- [10] Benjamin Aminof, Sasha Rubin, Florian Zuleger, and Francesco Spegni. Liveness of parameterized timed networks. In Magnús M. Halldórsson, Kazuo Iwama, Naoki Kobayashi, and Bettina Speckmann, editors, ICALP, Part II, volume 9135 of Lecture Notes in Computer Science, pages 375–387. Springer, 2015. doi:10.1007/978-3-662-47666-6_30.
- [11] Étienne André, BenoÎt Delahaye, Paulin Fournier, and Didier Lime. Parametric timed broadcast protocols. In Constantin Enea and Ruzica Piskac, editors, VMCAI, volume 11388 of Lecture Notes in Computer Science, pages 491–512. Springer, 2019. doi:10.1007/978-3-030-11245-5_23.
- [12] Étienne André, Paul Eichler, Swen Jacobs, and Shyam Lal Karra. Parameterized verification of disjunctive timed networks. In Rayna Dimitrova and Ori Lahav, editors, VMCAI, volume 14499 of Lecture Notes in Computer Science, pages 124–146. Springer, 2024. doi:10.1007/978-3-031-50524-9_6.
- [13] E. André, S. Jacobs, S.L. Karra, and O. Sankur. Parameterized verification of timed networks with clock invariants (extended version), 2024. arXiv:2408.05190. URL: https://arxiv.org/abs/2408.05190.
- [14] Krzysztof R. Apt and Dexter Kozen. Limits for automatic verification of finite-state concurrent systems. Information Processing Letters, 22(6):307–309, 1986. doi:10.1016/0020-0190(86)90071-2.
- [15] A. R. Balasubramanian and Chana Weil-Kennedy. Reconfigurable broadcast networks and asynchronous shared-memory systems are equivalent. In Pierre Ganty and Davide Bresolin, editors, GandALF, volume 346 of EPTCS, pages 18–34, 2021. doi:10.4204/EPTCS.346.2.
- [16] Johan Bengtsson and Wang Yi. Timed automata: Semantics, algorithms and tools. In Jörg Desel, Wolfgang Reisig, and Grzegorz Rozenberg, editors, Lectures on Concurrency and Petri Nets, Advances in Petri Nets, volume 3098 of Lecture Notes in Computer Science, pages 87–124. Springer, 2003. doi:10.1007/978-3-540-27755-2_3.
- [17] Nathalie Bertrand and Paulin Fournier. Parameterized verification of many identical probabilistic timed processes. In Anil Seth and Nisheeth K. Vishnoi, editors, FSTTCS, volume 24 of LIPIcs, pages 501–513. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2013. doi:10.4230/LIPIcs.FSTTCS.2013.501.
- [18] Roderick Bloem, Swen Jacobs, Ayrat Khalimov, Igor Konnov, Sasha Rubin, Helmut Veith, and Josef Widder. Decidability of Parameterized Verification. Synthesis Lectures on Distributed Computing Theory. Morgan & Claypool Publishers, 2015. doi:10.2200/S00658ED1V01Y201508DCT013.
- [19] Patricia Bouyer, Catherine Dufourd, Emmanuel Fleury, and Antoine Petit. Are timed automata updatable? In E. Allen Emerson and A. Prasad Sistla, editors, CAV, volume 1855 of Lecture Notes in Computer Science, pages 464–479. Springer, 2000. doi:10.1007/10722167_35.
- [20] Patricia Bouyer, Catherine Dufourd, Emmanuel Fleury, and Antoine Petit. Updatable timed automata. Theoretical Computer Science, 321(2-3):291–345, August 2004. doi:10.1016/j.tcs.2004.04.003.
- [21] Patricia Bouyer, Uli Fahrenberg, Kim Guldstrand Larsen, Nicolas Markey, Joël Ouaknine, and James Worrell. Model checking real-time systems. In Edmund M. Clarke, Thomas A. Henzinger, Helmut Veith, and Roderick Bloem, editors, Handbook of Model Checking, pages 1001–1046. Springer, 2018. doi:10.1007/978-3-319-10575-8_29.
- [22] Giorgio Delzanno, Arnaud Sangnier, and Gianluigi Zavattaro. Parameterized verification of ad hoc networks. In Paul Gastin and François Laroussinie, editors, CONCUR, volume 6269 of Lecture Notes in Computer Science, pages 313–327. Springer, 2010. doi:10.1007/978-3-642-15375-4_22.
- [23] E. Allen Emerson and Vineet Kahlon. Reducing model checking of the many to the few. In David A. McAllester, editor, CADE, volume 1831 of Lecture Notes in Computer Science, pages 236–254. Springer, 2000. doi:10.1007/10721959_19.
- [24] E. Allen Emerson and Kedar S. Namjoshi. On reasoning about rings. International Journal of Foundations of Computer Science, 14(4):527–550, 2003. doi:10.1142/S0129054103001881.
- [25] Javier Esparza, Alain Finkel, and Richard Mayr. On the verification of broadcast protocols. In LiCS, pages 352–359. IEEE Computer Society, 1999. doi:10.1109/LICS.1999.782630.
- [26] Javier Esparza, Stefan Jaax, Mikhail A. Raskin, and Chana Weil-Kennedy. The complexity of verifying population protocols. Distributed Computing, 34(2):133–177, 2021. doi:10.1007/s00446-021-00390-x.
- [27] Pierre Ganty and Rupak Majumdar. Algorithmic verification of asynchronous programs. ACM Transactions on Programming Languages and Systems, 34(1):6:1–6:48, 2012. doi:10.1145/2160910.2160915.
- [28] Steven M. German and A. Prasad Sistla. Reasoning about systems with many processes. Journal of the ACM, 39(3):675–735, 1992. doi:10.1145/146637.146681.
- [29] Thomas A. Henzinger, Xavier Nicollin, Joseph Sifakis, and Sergio Yovine. Symbolic model checking for real-time systems. Information and Computation, 111(2):193–244, 1994. doi:10.1006/inco.1994.1045.
- [30] Frédéric Herbreteau, Dileep Kini, B. Srivathsan, and Igor Walukiewicz. Using non-convex approximations for efficient analysis of timed automata. In Supratik Chakraborty and Amit Kumar, editors, FSTTCS, volume 13 of LIPIcs, pages 78–89. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2011. doi:10.4230/LIPIcs.FSTTCS.2011.78.
- [31] Luca Spalazzi and Francesco Spegni. Parameterized model checking of networks of timed automata with Boolean guards. Theoretical Computer Science, 813:248–269, 2020. doi:10.1016/j.tcs.2019.12.026.
- [32] Ichiro Suzuki. Proving properties of a ring of finite-state machines. Information Processing Letters, 28(4):213–214, 1988. doi:10.1016/0020-0190(88)90211-6.
