Systems involving both time and concurrency are notoriously difficult to analyze. Existing decidability results apply in settings where clocks on different processes cannot be compared or where the set of timed executions is regular. We prove new decidability results for timed concurrent systems, requiring neither restriction. We consider the formalism of time-constrained MSC graphs (TC-MSC graphs for short), introduced in [2]. We study the problem of checking whether the set of timed executions generated by a TC-MSC graph is empty, which is undecidable in general [9].In this paper, we show the decidability of this problem under the restriction that every path of the TC-MSC graph is prohibited from forcing any basic scenario labeling a node to take more than K units of time to complete, for a given K. Further, we prove that this condition can be effectively checked. Our approach consists in encoding the time constraints seen along a path into a bounded system of inequalities. Instead of constructing an interleaved model and using zones of timed automata as in existing approaches, we symbolically manipulate the system of inequalities using the Fourier-Motzkin elimination method. This allows for decision procedures which are both efficient and handle non regular specifications.
IntroductionIn a distributed system, several processes interact to implement a collection of global behaviors. Protocol specifications include timing requirements for messages as well as descriptions of how to recover from timeouts. Thus, a protocol designer has to deal with situations where time and concurrency influence each other. One way to describe these interactions is through scenarios, formalized using Message Sequence Charts (MSCs) [11]. The timing information is captured by adding timing constraints between pairs of events, yielding time-constrained MSCs (denoted TC-MSCs). A protocol is then described by allowing choices and repetition of scenarios. To specify these main characteristics of protocols while abstracting away details of implementation, the formal methods community often considers MSC graphs, which are directed graphs whose nodes are labeled by MSCs. MSC graphs have been generalized to time-constrained MSC graphs (TC-MSC graphs) [2], whose nodes are labeled by TC-MSCs and edges have additional timing constraints. In general, such models do not have regular sets of executions. In this paper, we consider decidability issues for TC-MSC graphs.Obtaining decidability in the presence of both time and concurrency is a challenging issue. For instance, even checking whether there exists a timed execution that is consistent with all the constraints of a model is non trivial. This question, called the emptiness problem, is undecidable for TC-MSC graphs in general [9]. However, it is decidable for (sequential) timed automata [3]. Extending decidability results to distributed systems has been done only in two particular and limited settings. In the first setting, [13,8] consider clocks that are local to a process. But then,...