Keywords: Reachability Analysis, Conditional Reachability Analysis, Max Plus Linear Systems, Piece-Wise Affine Systems, Difference-Bound Matrices

Discrete Event Dynamic Systems (DEDS) are discrete-state systems whose dynamics are entirely driven by the occurrence of asynchronous events over time. Linear equations in the max-plus algebra can be used to describe DEDS subjected to synchronization and time delay phenomena. The reachability analysis concerns the computation of all states that can be reached by a dynamical system from an initial set of states. The reachability analysis problem of Max Plus Linear (MPL) systems has been properly solved by characterizing the MPL systems as a combination of Piece-Wise Affine (PWA) systems and then representing each component of the PWA system as Difference-Bound Matrices (DBM). The main contribution of this thesis is to present a similar procedure to solve the reachability analysis problem of MPL systems subjected to bounded noise, disturbances and/or modeling errors, called uncertain MPL (uMPL) systems. First, we present a procedure to partition the state space of an uMPL system into components that can be completely represented by DBM. Then we extend the reachability analysis of MPL systems to uMPL systems. Moreover, the results on reachability analysis of uMPL systems are used to solve the conditional reachability problem, which is closely related to the support calculation of the probability density function involved in the stochastic filtering problem.

Resumo

Os Sistemas a Eventos Discretos (SEDs) constituem uma classe de sistemas caracterizada por apresentar espaço de estados discreto e dinâmica dirigida única e exclusivamente pela ocorrência de eventos. SEDs sujeitos aos problemas de sincronização e de temporização podem ser descritos em termos de equações lineares usando a álgebra max-plus. A análise de alcançabilidade visa o cálculo do conjunto de todos os estados que podem ser alcançados a partir de um conjunto de estados iniciais através do modelo do sistema. A análise de alcançabilidade de sistemas Max Plus Lineares (MPL) pode ser tratada por meio da decomposição do sistema MPL em sistemas PWA (Piece-Wise Affine) e de sua correspondente representação por DBM (Difference-Bound Matrices). A principal contribuição desta tese é a proposta de uma metodologia similar para resolver o problema de análise de alcançabilidade em sistemas MPL sujeitos a ruídos limitados, chamados de sistemas MPL incertos ou sistemas uMPL (uncertain Max Plus Linear Systems). Primeiramente, apresentamos uma metodologia para particionar o espaço de estados de um sistema uMPL em componentes que podem ser completamente representados por DBM. Em seguida, estendemos a análise de alcançabilidade de sistemas MPL para sistemas uMPL. Além disso, a metodologia desenvolvida é usada para resolver o problema de análise de alcançabilidade condicional, o qual esta estritamente relacionado ao cálculo do suporte da função de probabilidade de densidade envolvida no problema de filtragem estocástica.

Palavras-chaves: Análise de Alcançabilidade; Análise de Alcançabilidade Condicional; Sistemas Max Plus Lineares; Sistemas PWA; DBM. Figure 5 -A PWA system generated by an MPL system. . . . . . . . . . . . . . . . Figure 6 -reach tube for 𝑘 = {1, 2, 3} and backward reach tube for 𝑘 = {1, 2}. . . . Figure 7 -Railway network model with uncertain travel times. . . . . . . . . . . . Figure 8 -A partitioned uMPL system. . . . . . . . . . . . . . . . . . . . . . . . . Figure 9 -reach tube for 𝑘 ∈ {1, 2} (autonomous uMPL system). . . . . . . . . . . Figure 10 -cyclic behavior of an uMPL system. . . . . . . . . . . . . . . . . . . . . Figure 11 -reach tube for 𝑘 ∈ {1, 2} (nonautonomous uMPL system). . . . . . . . . Figure 12 -backward reach tube for 𝑘 ∈ {1, 2} (autonomous uMPL system). . . . . Figure 13 -backward reach tube for 𝑘 ∈ {1, 2} (nonautonomous uMPL system). . .

List of Figures

Introduction

Discrete Event Dynamic Systems (DEDS) are discrete-state systems whose dynamics are entirely driven by the occurrence of asynchronous events over discrete time instants (CASSANDRAS;LAFORTUNE, 2009, Sec. 1.3.2). Examples of DEDS include computer systems, telecommunication networks, manufacturing lines and transportation systems. The dynamics of such systems is often subjected to conflict, synchronization and time delay phenomena. In a manufacturing line, for instance, a conflict appears when two or more parts needs to be processed in a machine, at the same time, and it is necessary to decide which part will be processed first. Synchronization requires the availability of several parts at the same time. In a railway station, synchronization appears when a departing train must wait for certain incoming trains in order to allow changeover of passengers. Time delay can be associated to processing or traveling times, for instance.

DEDS subjected only to synchronization and time delay phenomena can be described in terms of linear equations using the Max-Plus Algebra. The max-plus algebra is an idempotent semiring, an algebraic structure also called dioid [START_REF] Baccelli | Synchronization and Linearity : An Algebra for Discrete Event Systems[END_REF], in which the operations of sum (⊕) and product (⊗) are defined as the maximization and addition, respectively. Synchronization phenomena are modeled thanks to maximization: the start of a task waits for the completion of the preceding tasks, while the delay phenomena are modeled thanks to the classical sum: the completion time of a task is equal to the starting time plus the task duration. Consider a railway station in which a departing train must wait for all incoming trains. Assuming that the trains leave as soon as possible, the departure time of a train is given by the maximum of the arrival times of all incoming trains. The arrival time at a station is the sum of the departure time from the previous station plus the traveling time, assumed to be known.

The linearity property has advantaged the emergence of a specific theory for the performance analysis [START_REF] Heidergott | Max-Plus Linear Stochastic Systems and Perturbation Analysis[END_REF] and the control of these systems, e.g., optimal open loop control [START_REF] Cohen | Max-plus algebra and system theory: Where we are and where to go now[END_REF][START_REF] Lhommeau | Interval Analysis in Dioid : Application to Robust Open Loop Control for Timed Event Graphs[END_REF] and optimal state-feedback control. Among closed-loop strategies we can cite the model matching problem [START_REF] Lhommeau | Optimal control for (max, +)-linear systems in the presence of disturbances[END_REF] and the control strategies allowing the state to stay in a specific state subspace or semimodule [START_REF] Amari | Max-plus control design for temporal constraints meeting in timed event graphs[END_REF][START_REF] Katz | Max-plus (a,b)-invariant spaces and control of timed discrete-event systems[END_REF]MAIA et al., 2011;[START_REF] Necoara | Robust control of constrained max-plus-linear systems[END_REF][START_REF] Gonçalves | On the steady-state control of timed event graphs with firing date constraints[END_REF].

The entries of Max-Plus Linear (MPL) system matrices are associated to system delays such as processing or traveling times. These parameters are often subjected to noise and disturbances, which should be taken into account in order to avoid tracking error or closed loop instability (van den Boom;[START_REF] Van Den Boom | Model predictive control for perturbed max-plus-linear systems[END_REF]. In general, these perturbations are max-plus-multiplicative and appear as uncertainties in the max-plus model parameters. As a result the system matrices are uncertain. The Stochastic Max-Plus Linear (SMPL) systems are defined as MPL systems where the matrices entries are characterized by random variables [START_REF] Olsder | Discrete event systems with stochastic processing times[END_REF][START_REF] Heidergott | Max-Plus Linear Stochastic Systems and Perturbation Analysis[END_REF]van den Boom;[START_REF] Van Den Boom | Model predictive control for perturbed max-plus-linear systems[END_REF][START_REF] Diloreto | Duality between invariant spaces for max-plus linear discrete event systems[END_REF]HARDOUIN et al., 2010).

To assess whether the system reaches a certain state from a set of initial conditions is of great interest in many applications and concerns the reachability analysis. Consider for instance the safety analysis problem [START_REF] Mitchell | Comparing forward and backward reachability as tools for safety analysis[END_REF]): given a system and a set of initial states, the safety analysis aims to determine if the system can enter a specified set of unsafe states. The reachability analysis can be used to determine whether trajectories of the given system can reach the unsafe set from the initial set. [START_REF] Gazarik; Michael | Reachability and observability of linear systems over max-plus[END_REF] use residuation to determine if a state is reachable, via an MPL model, from a single initial condition and to generate a control sequence to reach it. Gaubert e Katz (2003), show that if the initial set is a rational semimodule the reachable set is also a rational semimodule. These authors mention that this set has a "simple shape" and suggest that an efficient numerical method remains to be designed. In [START_REF] Lu | Reachability analysis for timed automata using max-plus algebra[END_REF] reachability analysis of timed automata is tackled by considering max-plus polyhedra, a more general class of sets than semimodules. For a more exhaustive presentation on max-plus polyhedra, see [START_REF] Allamigeon | Inferring min and max invariants using max-plus polyhedra[END_REF]. However, it is not possible to employ related techniques for reachability analysis of MPL systems since the two modeling frameworks are not comparable.

Under the requirement that the set of initial states is a max-plus polyhedron, forward reachability analysis can be performed over max-plus algebra. Similarly, under the same requirements, backward reachability analysis can be performed over the max-plus algebra, where in addition the system matrix has to be max-plus invertible. Computationally, the approach based on max-plus polyhedra can be advantageous since its time complexity is polynomial. However, the requirements limit the applicability of the approach. To the best of the author's knowledge there exist no general approach for reachability analysis over maxplus algebra. In Adzkiya et al. (2014b), forward reachability analysis of autonomous MPL systems is alternatively addressed by characterizing the MPL system as a Piece-Wise Affine (PWA) system and then representing the PWA system as a collection of Difference Bound Matrices (DBM) (DILL, 1990). It is shown that, if the initial set is depicted as the union of finitely many DBM, then the set of all states that can be reached via the model dynamics, at any given event step, can also be depicted as the union of finitely many DBM, and therefore it is possible to map DBM-sets through MPL systems. The authors state that any max-plus polyhedra can be depicted as a union of DBM and claim that their approach is more general than the one using max-plus polyhedra, the price to pay being a potential explosion in the number of DBM during computations. Moreover in Adzkiya et al. (2014a), the approach has also been applied to backward reachability analysis of autonomous MPL systems considering a final set depicted as union of DBM despite the non invertibility of the max-plus linear system. In Adzkiya et al. (2015), these results have been extended to nonautonomous MPL systems. Experiments carried out in Adzkiya et al. (2015, Sec. 5) suggest that the potential explosion in the number of DBM is not a problem and allows claiming the applicability of the approach.

To describe an MPL system by means of DBM it is necessary to express it as a Piece-Wise Affine System (PWA). This is always possible [START_REF] Heemels | Equivalence of hybrid dynamical models[END_REF] and it is done by partitioning the state space into regions in which the system can be modeled by affine equations (in classical algebra). The PWA system is the union of these affine subsystems and the key point is that each affine system and its corresponding active state space region can be independently represented by one DBM (see section 2.5.1). The main advantage of this representation is the existence of many efficient algorithms for DBM manipulation and its drawback is the upsizing of the representation of a MPL system from one compact state equation to multiple DBM.

In this work, we aim to use a similar approach to analyze systems where the uncertain parameters can vary over a known interval, herein defined as uncertain MPL (uMPL) systems, as detailed in chapter 4. We do not seek to provide any stochastic analysis of these systems. Thus, for the purposes of this work, the uMPL systems are treated as non-deterministic systems (rather than stochastic systems). The approach is synthesized as follows. First, we present a procedure to partition the uMPL systems into subsystems that can be fully represented by DBM. Then, we show that the image and the inverse image of a DBM w.r.t. each subsystem of the partitioned uMPL system is again a DBM. This result made it possible to extend most of the results presented in (ADZKIYA et al., 2014b;ADZKIYA et al., 2014a;ADZKIYA et al., 2015) to uMPL systems. Then, for the forward reachability analysis, given a set of initial conditions represented by a union of finitely many DBM, we present a procedure to compute the sets of all states that can be reached at each event step, which can also be represented by a union of finitely many DBM. Similarly, for the backward reachability analysis, given a set of final conditions represented by a union of finitely many DBM, we present a procedure to compute the sets of all states that may lead to the set of final conditions in a given number of steps. We also present a residuation-based procedure to compute the inverse image of a point that is less expensive than the procedure based on the system partitioning.

Furthermore, we use the results on reachability analysis of uMPL system to solve the conditional reachability problem. The conditional reachability analysis concerns the computation of the set of all states that may be reached from a set of initial states, in a given event step, conditioned to a sequence of measures related to the state through an uMPL equation. Closely related to conditional reachability is the filtering problem. Bayesian methods provide a rigorous general framework for filtering problem [START_REF] Gordon | Novel approach to nonlinear/non-gaussian bayesian state estimation[END_REF]. The objective of the Bayesian state estimation is to construct the posterior Probability Density Function (PDF) of the states based on all information available. In this context, the conditional reachability analysis corresponds to the support calculation of the posterior PDF of the uMPL system states. However, it should be noted that the conditional reachability problem is not stochastic since it does not lead to an estimate of any probabilistic measure. As an example of application, the conditional reachability analysis could be useful to improve Particle Filtering algorithms. Particle Filters, or Sequential Monte Carlo methods, are suboptimal Bayesian algorithms based on weighted-particle approximation of probability densities [START_REF] Arulampalam | A tutorial on particle filters for online nonlinear/non-gaussian bayesian tracking[END_REF][START_REF] Doucet | On sequential monte carlo sampling methods for bayesain filtering[END_REF]. Particle filters applied to Max-Plus systems have been studied in Silva et al. (2011), [START_REF] Cândido | Particle filter for max-plus systems[END_REF], CÂNDIDO e MENDES (2014). This work is organized as follows: Chapter 2 recalls the MPL systems and their decompositions as PWA systems, as well as the DBM representation of PWA systems generated by MPL systems. Chapter 3 gives an overview of the methods for reachability analysis of MPL systems presented in Adzkiya et al. (2014b), Adzkiya et al. (2014a), Adzkiya et al. (2015). The main contribution appears in Chapter 4 which introduces the uMPL systems and their descriptions by means of DBM. Chapter 5 extends reachability analysis to uMPL systems. Chapter 6 defines and solve the conditional reachability problem by using the results on reachability analysis for uMPL. Finally, Chapter 7 concludes the work. We shall remark that chapters 4, 5 and 6 are based on a paper submitted to Automatica (Journal of IFAC), which is, currently, in the third round of review [START_REF] Cândido | Conditional reachability of uncertain max plus linear systems[END_REF], Under Review to Automatica).

Preliminaries

Idempotent Semirings

This section recall some basic concepts of idempotent semirings, an algebraic structure also known as dioids [START_REF] Cohen | Algebraic tools for the performance evaluation of discrete event systems[END_REF][START_REF] Baccelli | Synchronization and Linearity : An Algebra for Discrete Event Systems[END_REF].

Definition 2.1 (Idempotent semirings [START_REF] Cohen | Algebraic tools for the performance evaluation of discrete event systems[END_REF], Def. 1)) A set 𝑆, endowed with two internal operations: ⊕ (sum) and ⊗ (product); is an idempotent semiring or dioid if the following axioms are verified:

Axiom 2.1 (Associativity) ∀𝑎, 𝑏, 𝑐 ∈ 𝑆 ⎧ ⎪ ⎨ ⎪ ⎩ (𝑎 ⊕ 𝑏) ⊕ 𝑐 = 𝑎 ⊕ (𝑏 ⊕ 𝑐) (𝑎 ⊗ 𝑏) ⊗ 𝑐 = 𝑎 ⊗ (𝑏 ⊗ 𝑐)
R 𝑚𝑖𝑛 R ∪ {-∞} ∪ {+∞} min + +∞ 0 shortest path R 𝑚𝑖𝑛 R ∪ {-∞} max + -∞ 0 widest path R 𝑚𝑎𝑥 R ∪ {-∞} ∪ {+∞} max + -∞ 0 longest path R 𝑚𝑎𝑥 R + ∪ {-∞} max min 0 +∞ max capacity R + 𝑚𝑎𝑥,𝑚𝑖𝑛 [0, 1] max × 0 1 R + max × 0 1 R + 𝑚𝑎𝑥,× {0, 1} ∪ ∩ 0 1 logic B
In Table 1, taken from (QUADRAT, 1999, Chap. 1), are some examples of idempotent semirings and its applications.

As in the classical algebra, the 𝑘 𝑡ℎ power of 𝑎 ∈ 𝑆, denoted by 𝑎 ⊗𝑘 , is defined as

𝑎 ⊗𝑘 = 𝑎 ⊗𝑘-1 ⊗ 𝑎, with 𝑎 ⊗0 = 𝑒.
In a dioid 𝑆, one has the following equivalence (BACCELLI et al., 1992, Th. 4.28):

∀𝑎, 𝑏 ∈ 𝑆, 𝑎 = 𝑎 ⊕ 𝑏 ⇐⇒ ∃𝑐 ∈ 𝑆 : 𝑎 = 𝑏 ⊕ 𝑐.

(2.1)

This equivalence defines a partial order relation noted by ⪰ as follows:

𝑎 ⪰ 𝑏 ⇐⇒ 𝑎 = 𝑎 ⊕ 𝑏.

(2.2)

This relation is compatible with sum and with left and right product, i.e.: In a complete dioid the top element, denoted ⊤, exists and it is equal to the sum of all elements in 𝑆 (BACCELLI et al., 1992, Sec. 4.3.3):

𝑎 ⪰ 𝑏 =⇒ ⎧ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎩ 𝑎 ⊕ 𝑐 ⪰ 𝑏 ⊕ 𝑐, (sum) 𝑎 ⊗ 𝑐 ⪰ 𝑏 ⊗ 𝑐, (right product) 𝑐 ⊗ 𝑎 ⪰ 𝑐 ⊗ 𝑏, (left product)
⊤ = ⨁ 𝑥∈𝑆 𝑥.
(2.3)

This element is absorbing for addition since ∀𝑎, ⊤ ⊕ 𝑎 = ⊤. Besides, according to axiom 2.5

⊤ ⊗ 𝜀 = 𝜀.
For a complete dioid, a new inner operation representing the lower bound of the operands, denoted by ∧, can be constructed (BACCELLI et al., 1992, Sec. 4.3.4). The partial order relation presented in (2.2) can be expressed as:

𝑎 ⪰ 𝑏 ⇐⇒ 𝑎 = 𝑎 ⊕ 𝑏 ⇐⇒ 𝑏 = 𝑎 ∧ 𝑏.
(2.4)

This operation is associative, commutative, idempotent and has ⊤ as neutral element: ∀𝑎, ⊤ ∧ 𝑎 = 𝑎. This operation has also a property called absorption law (DUBREIL; DUBREIL-JACOTIN, 1964, p. 184), given by:

∀𝑎, 𝑏 ∈ 𝑆, 𝑎 ∧ (𝑎 ⊕ 𝑏) = 𝑎 ⊕ (𝑎 ∧ 𝑏) = 𝑎.
(2.5) BACCELLI et al., 1992, Sec. 4.3.4):

Moreover, ⊗ is "subdistributive" w.r.t. ∧ (
∀𝑎, 𝑏, 𝑐 ∈ 𝑆, ⎧ ⎪ ⎨ ⎪ ⎩ 𝑐 ⊗ (𝑎 ∧ 𝑏) ≤ (𝑐 ⊗ 𝑎) ∧ (𝑐 ⊗ 𝑏), (𝑎 ∧ 𝑏) ⊗ 𝑐 ≤ (𝑎 ⊗ 𝑐) ∧ (𝑏 ⊗ 𝑐).
(2.6)

Neither the operation ∧ necessarily distribute over ⊕ or ⊕ necessarily distribute over ∧. However, ⊕ is "subdistributive" with respect to ∧, and ∧ is "superdistributive" with respect to ⊕ (BACCELLI et al., 1992, Sec. 4.3.5), (COHEN et al., 1989, Sec. 2.2):

∀𝑎, 𝑏, 𝑐 ∈ 𝑆, ⎧ ⎪ ⎨ ⎪ ⎩ (𝑎 ∧ 𝑏) ⊕ 𝑐 ≤ (𝑎 ⊕ 𝑐) ∧ (𝑏 ⊕ 𝑐), (𝑎 ⊕ 𝑏) ∧ 𝑐 ≥ (𝑎 ∧ 𝑐) ⊕ (𝑏 ∧ 𝑐).
(2.7)

⎧ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎩ ( ⋀ 𝑐∈𝐶 𝑐 ) ⊕ 𝑎 = ⋀ 𝑐∈𝐶 (𝑐 ⊕ 𝑎), ( ⨁ 𝑐∈𝐶 𝑐 ) ∧ 𝑎 = ⨁ 𝑐∈𝐶 (𝑐 ∧ 𝑎).
Note that, if 𝑆 is distributive, the equality holds in (2.7).

The sum and product of matrices are defined as follows: If 𝐴, 𝐵 and 𝐶 are, respectively, 𝑛 × 𝑝, 𝑛 × 𝑝 and 𝑝 × 𝑞 matrices with entries in a dioid 𝑆, then:

(𝐴 ⊕ 𝐵) 𝑖𝑗 = 𝑎 𝑖𝑗 ⊕ 𝑏 𝑖𝑗 , 𝑖 ∈ {1, ..., 𝑛}, 𝑗 ∈ {1, ..., 𝑝} (2.8) (𝐴 ⊗ 𝐶) 𝑖𝑗 = 𝑝 ⨁ 𝑘=1 (𝑎 𝑖𝑘 ⊗ 𝑏 𝑘𝑗 ) , 𝑖 ∈ {1, ..., 𝑛}, 𝑗 ∈ {1, ..., 𝑞}.
(2.9)

Example 2.4 Consider the matrices 𝐴, 𝐵 and 𝐶 with entries in R 𝑚𝑎𝑥 (see Table 1), where:

𝐴 = ⎛ ⎜ ⎜ ⎜ ⎝ 2 3 𝑒 𝜀 𝑒 4 4 1 𝜀 ⎞ ⎟ ⎟ ⎟ ⎠ , 𝐵 = ⎛ ⎜ ⎜ ⎜ ⎝ 1 𝜀 𝑒 3 4 2 3 1 𝑒 ⎞ ⎟ ⎟ ⎟ ⎠ and 𝐶 = ⎛ ⎜ ⎜ ⎜ ⎝ 1 𝑒 2 ⎞ ⎟ ⎟ ⎟ ⎠
.

Then:

𝐴 ⊕ 𝐵 = ⎛ ⎜ ⎜ ⎜ ⎝ 2 ⊕ 1 3 ⊕ 𝜀 𝑒 ⊕ 𝑒 𝜀 ⊕ 3 𝑒 ⊕ 4 4 ⊕ 2 4 ⊕ 3 1 ⊕ 1 𝜀 ⊕ 𝑒 ⎞ ⎟ ⎟ ⎟ ⎠ = ⎛ ⎜ ⎜ ⎜ ⎝ 2 3 𝑒 3 4 4 4 1 𝑒 ⎞ ⎟ ⎟ ⎟ ⎠ , 𝐴 ⊗ 𝐶 = ⎛ ⎜ ⎜ ⎜ ⎝ 2 ⊗ 1 ⊕ 3 ⊗ 𝑒 ⊕ 𝑒 ⊗ 2 𝜀 ⊗ 1 ⊕ 𝑒 ⊗ 𝑒 ⊕ 4 ⊗ 2 4 ⊗ 1 ⊕ 1 ⊗ 𝑒 ⊕ 𝜀 ⊗ 2 ⎞ ⎟ ⎟ ⎟ ⎠ = ⎛ ⎜ ⎜ ⎜ ⎝ 3 6 5 ⎞ ⎟ ⎟ ⎟ ⎠
.

The set of 𝑛 × 𝑛 matrices endowed with these two operations is also a dioid which is denoted by 𝑆 𝑛×𝑛 (COHEN et al., 1989, Sec. 2.3). The identity matrix of 𝑆 𝑛×𝑛 , denoted by 𝑒 𝑛×𝑛 , has entries equal 𝑒 on the diagonal and 𝜀 elsewhere. The null matrix, denoted by 𝜀 𝑛×𝑛 , has all entries equal 𝜀.

The 𝑘 𝑡ℎ power of 𝐴 ∈ 𝑆 𝑛×𝑛 is denoted by 𝐴 ⊗𝑘 , or equivalently 𝐴 𝑘 , and corresponds to 𝐴 𝑘 = 𝐴 𝑘-1 ⊗ 𝐴. It should be noted that 𝐴 0 corresponds to the identity matrix 𝑒 𝑛×𝑛 . Moreover, the star operation is given by:

𝐴 * = ⨁ 𝑘∈N 𝐴 𝑘 .
(2.10)

The partial order relation in 𝑆 𝑛×𝑛 is defined as:

𝐴 ⪰ 𝐵 ⇐⇒ {𝑎 𝑖𝑗 ⪰ 𝑏 𝑖𝑗 , ∀𝑖, 𝑗}. (2.11)
Since addition of matrices simply involves the addition of similar entries, 𝑆 𝑛×𝑛 is complete whenever 𝑆 is so (COHEN et al., 1989, Sec. 2.3). Moreover, if 𝑆 𝑛×𝑛 is complete, for any 𝐴 ∈ 𝑆 𝑛×𝑛 and 𝐵 ∈ 𝑆 𝑛×𝑛 it follows that:

(𝐴 ∧ 𝐵) 𝑖𝑗 = 𝑎 𝑖𝑗 ∧ 𝑏 𝑖𝑗 .
(2.12)

Linear Equations in Complete Dioids

This section briefly review some basic concepts on solving linear equations in complete dioids [START_REF] Baccelli | Synchronization and Linearity : An Algebra for Discrete Event Systems[END_REF][START_REF] Cohen | Algebraic tools for the performance evaluation of discrete event systems[END_REF]. The most general system of linear equations in a dioid is given by: (2.13) where 𝑎, 𝑏, 𝑐, 𝑑 ∈ 𝑆 and x ∈ 𝑆 is the unknown of the equation. The dioid 𝑆 is assumed to be complete.

𝑎 ⊗ x ⊕ 𝑏 = 𝑐 ⊗ x ⊕ 𝑑,
We are especially interested in a subclasse of this general equation given by: Moreover, from (COHEN et al., 1989, Theorem 5) we have that, if x is the greatest subsolution of (2.14) then x is also the greatest subsolution of :

𝑎 ⊗ x ⊕ 𝑏 = 𝑑 (2.
𝑎 ⊗ x = 𝑑.
(2. In (COHEN et al., 1989, Theorem 5) it is demonstrated that the following equalities and inequalities hold true.

𝑎 ⊗ (𝑎∖ ∘𝑏) ≤ 𝑏 (2.16) 𝑎∖ ∘𝑎 ≥ 𝑒 (2.17) 𝑎 ⊗ (𝑎∖ ∘𝑎) = 𝑎 (2.18) 𝑒∖ ∘𝑎 = 𝑎 (2.19) 𝜀∖ ∘𝑎 = ∞ (2.20) (𝑎∖ ∘𝑏) ⊗ 𝑐 ≤ 𝑎∖ ∘(𝑏𝑐) (2.21) 𝑎∖ ∘(𝑏∖ ∘𝑐) = (𝑏 ⊗ 𝑎)∖ ∘𝑐 (2.22) (𝑎∖ ∘𝑏) ⊕ (𝑎∖ ∘𝑐) ≤ 𝑎∖ ∘(𝑏 ⊕ 𝑐) (2.23) (𝑎∖ ∘𝑏) ⊕ (𝑐∖ ∘𝑏) ≤ (𝑎 ∧ 𝑐)∖ ∘𝑏 (2.24) (𝑎∖ ∘𝑏) ∧ (𝑐∖ ∘𝑏) = (𝑎 ⊕ 𝑐)∖ ∘𝑏 (2.25) (𝑎∖ ∘𝑏) ∧ (𝑎∖ ∘𝑐) = 𝑎∖ ∘(𝑏 ∧ 𝑐) (2.26)
The operator ∖ ∘ can be extended to matrices (see (BACCELLI et al., 1992, Lemma 4.83) ∘, respectively (COHEN et al., 1989, Theorem 8).

Therefore, the system of linear equations given by:

𝐴 ⊗ x = b, (2.28)
where 𝐴 ∈ 𝑆 𝑛×𝑝 and b ∈ 𝑆 𝑛×1 , admits a greatest subsolution given by 𝐴∖ ∘b.

Max-Plus Linear Systems

The Max-Plus Linear (MPL) systems are discrete-event dynamic systems with continuous state space representing the dates of occurrence of the events involved in the system modeling. The MPL systems are subject to synchronization phenomena and described in terms of "linear" equations in the max-plus semiring (or max-plus algebra) (BACCELLI et al., 1992, Chap. 3). The max-plus semiring, noted by R 𝑚𝑎𝑥 , is a complete idempotent semiring and is defined as the set R ∪ {-∞} ∪ {∞} and the operations:

𝑎 ⊕ 𝑏 ≡ max{𝑎, 𝑏}.
(2.29)

𝑎 ⊗ 𝑏 ≡ 𝑎 + 𝑏. (2.30)
Moreover, the operations ∧ and ∖ ∘ are defined as follows:

𝑎 ∧ 𝑏 ≡ min{𝑎, 𝑏}, (2.31) 𝑎∖ ∘𝑏 ≡ 𝑏 -𝑎.
(2.32)

The identity and the zero element of the Max-Plus semiring are, respectively, 𝑒 = 0 and 𝜀 = -∞, the top element is ⊤ = ∞. According to (2.4), in this algebraic structure, a partial order relation is defined by:

𝑎 ⪰ 𝑏 ⇔ 𝑎 = 𝑎 ⊕ 𝑏 ⇔ 𝑏 = 𝑎 ∧ 𝑏.
(2.33) Remark 2.7 Note that R 𝑚𝑎𝑥 is linearly ordered with respect to ⊕ and the order ⪰ in R 𝑚𝑎𝑥 coincides with the usual linear order ≥ (LITVINOV; [START_REF] Litvinov | Idempotent interval analysis and optimization problems[END_REF].

The basic max-plus operations can be extended to matrices as presented in (2.8), (2.9), (2.12) and (2.27).

The autonomous model of an MPL system is given by:

x(𝑘) = 𝐴 ⊗ x(𝑘 -1), (2.34)
where 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 is a matrix that represents the minimal delay between two events. The entries of 𝐴 are the parameters of the model. The variable 𝑘 ∈ N is an event-number and the state vector x ∈ R 𝑛 𝑚𝑎𝑥 is a dater, i.e, x(𝑘) contains the 𝑘-th date of occurrence of each event of the system.

The MPL systems are used to model a wide range of discrete-event systems subject to synchronization phenomena, such as, manufacturing systems, telecommunication networks, railway networks, and parallel computing (BACCELLI et al., 1992, Sec. 1.2).

Example 2.8 (see (CASSANDRAS et al., 1995, Sec. 0.1)) Consider a public transportation system consisting of two stations 𝑆 1 and 𝑆 2 and four rail tracks. The structure of the system is given in Figure 1. It is assumed that the train company operates one train on each track initially; the travel times are fixed as indicated on the arcs; trains scheduled to depart must wait for all arriving trains before departing to allow for changeover of passengers; and departures occur as soon as possible. Thus, departures from a station 𝑆 𝑖 , 𝑖 = {1, 2} will occur at the same time, denoted by 𝑥 𝑖 (𝑘). The first departure times are assumed to be known and given by x(0). The 𝑘-th departure times are given by x(𝑘), where x(𝑘) = (𝑥 1 (𝑘) 𝑥 2 (𝑘)) 𝑇 . Given these conditions, departures from 𝑆 1 must wait for the train arriving from the same station, which takes 2 time units of time, as well as the train arriving from 𝑆 2 , which takes 5 units of time. Similarly, departures from 𝑆 2 must wait for the train arriving from the same station as well as the train arriving from 𝑆 1 . Therefore, the earliest departure times are given by:

⎛ ⎝ 𝑥 1 (𝑘) 𝑥 2 (𝑘) ⎞ ⎠ = ⎛ ⎝ max{2 + 𝑥 1 (𝑘 -1), 5 + 𝑥 2 (𝑘 -1)} max{3 + 𝑥 1 (𝑘 -1), 3 + 𝑥 2 (𝑘 -1)} ⎞ ⎠ .
This system is nonlinear in the conventional algebra, however it can be expressed as the following linear system in the max-plus algebra.

⎛ ⎝ 𝑥 1 (𝑘) 𝑥 2 (𝑘) ⎞ ⎠ = ⎛ ⎝ 2 5 3 3 ⎞ ⎠ ⊗ ⎛ ⎝ 𝑥 1 (𝑘 -1) 𝑥 2 (𝑘 -1) ⎞ ⎠ , = 𝐴 ⊗ x(𝑘 -1). (2.35)
The nonautonomous model of an MPL system is defined by considering an external input u in (2.34):

x(𝑘) = 𝐴 ⊗ x(𝑘 -1) ⊕ 𝐵 ⊗ u(𝑘), (2.36)
where 𝐴 ∈ R ) 𝑇 (BACCELLI et al., 1992, Sec. 2.5.4).

x(𝑘) = 𝐹 ⊗ y(𝑘 -1).

(2.37)

Example 2.9 Consider a nonautonomous MPL system given by:

x(𝑘) = ⎛ ⎜ ⎜ ⎜ ⎝ 3 2 2 𝑒 1 3 2 1 𝑒 ⎞ ⎟ ⎟ ⎟ ⎠ ⊗ x(𝑘 -1) ⊕ ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 𝜀 𝜀 𝑒 𝜀 𝜀 ⎞ ⎟ ⎟ ⎟ ⎠ ⊗ u(𝑘), where x(𝑘) ∈ R 3 𝑚𝑎𝑥 and u(𝑘) ∈ R 2 𝑚𝑎𝑥 .
The corresponding augmented autonomous MPL model is given by:

x(𝑘) = ⎛ ⎜ ⎜ ⎜ ⎝ 3 2 2 𝑒 𝜀 𝑒 1 3 𝜀 𝑒 2 1 𝑒 𝜀 𝜀 ⎞ ⎟ ⎟ ⎟ ⎠ 𝑣y(𝑘 -1), where y(𝑘 -1) = [𝑥 1 (𝑘 -1) 𝑥 2 (𝑘 -1) 𝑥 3 (𝑘 -1) 𝑢 1 (𝑘) 𝑢 2 (𝑘)] 𝑇 ∈ R 5 𝑚𝑎𝑥 .
In the following, the classical concepts of eigenvalue and eigenvector are exported to max-plus systems (BACCELLI et al., 1992, Sec. 3.2.4), i.e., given a matrix 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 we consider the problem of existence of eigenvalues 𝜆 and eigenvectors 𝜉 such that:

𝐴 ⊗ 𝜉 = 𝜆 ⊗ 𝜉.
(2.38)

The solution of this problem depends on the notion of matrix irreducibility, which follows from the definition of precedence graph and strongly connected graph. Moreover, we present the notions of critical graph and cyclicity of a graph. Definition 2.10 For a matrix 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 , the following notions are defined:

Precedence graph: The precedence graph of a matrix 𝐴 is a weighted directed graph with vertices 1, ..., 𝑛 and an arc (𝑗, 𝑖) with weight 𝑎 𝑖𝑗 for each 𝑎 𝑖𝑗 ̸ = 𝜀 (BACCELLI et al., 1992, Def. 2.8).

Strongly connected graph:

The precedence graph of 𝐴 is called strongly connected if for any two different nodes 𝑖 and 𝑗 there exists a path from 𝑖 to 𝑗 (BACCELLI et al., 1992, Sec. 2.2).

Irreducible matrix:

The matrix 𝐴 is called irreducible if its precedence graph is strongly connected (BACCELLI et al., 1992, Th. 2.14).

Length of a path

: A path in a graph is a sequence of nodes (𝑖 1 → 𝑖 2 → • • • → 𝑖 𝑘 ).
The length of a path is equal to the sum (in the classical algebra) of the lengths of the arcs of which it is composed, the lengths of the arcs being 1 unless otherwise specified (BACCELLI et al., 1992, Sec. 2.2).

Cycle mean:

The mean weight of a path in the precedence graph of 𝐴 is defined as the sum of the weight of the individual arcs of this path, divided by the length of this path. If such a path is a circuit

(𝑖 1 → 𝑖 2 → • • • → 𝑖 1
) one talks about the mean weight of the circuit, or simply the cycle mean (BACCELLI et al., 1992, Def 2.18). The maximum of these cycle means is called maximum cycle mean. All the operations are in the classical algebra.

Critical circuit:

A circuit of the precedence graph of 𝐴 is critical if its mean weight attains the maximum cycle mean in the precedence graph of 𝐴 (BACCELLI et al., 1992, Def. 3.94).

Critical graph:

The critical graph of 𝐴 consists of those nodes and arcs which belong to a critical circuit of the precedence graph of 𝐴, the weights are set to be equal to 𝑒 (BACCELLI et al., 1992, Def. 3.94).

Cyclicity:

The cyclicity of a strongly connected graph is the greatest common divisor g.c.d of the lengths of all its circuits. The cyclicity of a general graph is the least common multiple of the cyclicities of all its strongly connected subgraphs (BACCELLI et al., 1992, Def. 3.94).

Proposition 2.11 (see (BACCELLI et al., 1992, Th. 3.23)) If 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 is irreducible there exists one and only one eigenvalue (but possibly several eigenvectors). This eigenvalue corresponds to the maximum cycle mean of the precedence graph of 𝐴 and is equal to:

𝜆 = 𝑛 ⨁ 𝑗=1 ( 𝑡𝑟𝑎𝑐𝑒(𝐴 𝑗 ) ) 1/𝑗 .
(2.39)

Where, for any 𝐵 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 and 𝑎 ∈ R 𝑚𝑎𝑥 :

𝑡𝑟𝑎𝑐𝑒(𝐵) = 𝑛 ⨁ 𝑖=1 𝑏 𝑖𝑖 , (𝑎 𝑗 ) 1/𝑗 = 𝑎.
The following result can be found in the proof of (BACCELLI et al., 1992, Th. 3.23).

Proposition 2.12 Let 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 be an irreducible matrix and define 𝐵 = 𝜆 -1 ⊗ 𝐴 and 𝐵 + = 𝐵 ⊗ 𝐵 * , where 𝜆 is the eigenvalue of 𝐴. Then, the matrix 𝐵 + has at least one column with diagonal entry equal to 𝑒 (the maximum circuit weight in the precedence graph of 𝐵 is 𝑒) and this (these) column(s) is (are) eigenvector(s) of 𝐴 corresponding to the eigenvalue 𝜆. The set of all eigenvectors corresponding to the eigenvalue 𝜆 is the eigenspace noted by

𝐸(𝐴) = {𝑥 ∈ R 𝑛 𝑚𝑎𝑥 : 𝐴 ⊗ 𝑥 = 𝜆 ⊗ 𝑥}.
It should be noted that, given a matrix 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 with maximum cycle mean 𝜆, the matrix 𝐵 = 𝜆 -1 ⊗ 𝐴 (which corresponds to 𝐵 = -𝜆 + 𝐴 in the classical algebra) has maximum cycle mean equal to 𝑒. Therefore, since there are no circuits in the precedence graph of 𝐵 with positive weight, the existence of 𝐵 * is guaranteed (see (BACCELLI et al., 1992, Th. 3.20)). Proposition 2.13 follows from the cyclicity theorem of the max-plus algebra (BAC-CELLI et al., 1992, Sec. 3.7), (GAUBERT;PLUS, 1997, Th. 14), (HEIDERGOTT et al., 2006, Th. 3.9). Proposition 2.13 Let 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 be an irreducible matrix. There is an integer 𝐾 0 (𝐴) such that:

𝑘 ≥ 𝐾 0 (𝐴) ⇒ 𝐴 𝑘+𝑐 = 𝜆 𝑐 𝐴 𝑘 , (2.40)
where 𝑐 is the cyclicity of the critical graph of 𝐴 and 𝜆 is the eigenvalue of 𝐴. Proposition 2.13 implies the existence of a periodic behavior of an MPL system.

Corollary 2.14 (see (HEIDERGOTT et al., 2006, Sec. 3.1)) Given an MPL system characterized by an irreducible matrix 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 and an initial conditions x(0), there exists a finite integer 𝑘 0 (x(0)) such that:

𝑘 ≥ 𝑘 0 (x(0)) ⇒ x(𝑘 + 𝑐) = 𝜆 𝑐 x(𝑘), (2.41)
where 𝑐 is the cyclicity of the critical graph of 𝐴 and 𝜆 is the eigenvalue of 𝐴.

Remark 2. 15 Notice that for a given set of initial conditions x(0), it is possible to seek for a specific length of the transient part 𝑘 0 (𝑥(0)), which is, in general, less conservative than the global 𝐾 0 (𝐴), i.e, 𝑘 0 (𝑥(0)) ≤ 𝐾 0 (𝐴).

Example 2.16

In Example 2.8 we described the railway network model as a MPL system x(𝑘) = 𝐴 ⊗ x(𝑘 -1), with

𝐴 = ⎛ ⎝ 2 5 3 3 ⎞ ⎠ .
In Figure 2 we recall the precedence graph of 𝐴 and present the corresponding critical graph. According to Definition 2.10, the precedence graph of 𝐴 is strongly connected, and therefore the matrix 𝐴 is irreducible. The precedence graph of 𝐴 has three circuits: (𝑆 1 → 𝑆 1 ) with length 1, (𝑆 1 → 𝑆 2 → 𝑆 1 ) with length 2 and (𝑆 2 → 𝑆 2 ) with length 1. Thus, the cyclicity of 𝐴 is given by 𝑔.𝑐.𝑑(1, 2, 1) = 1. The critical graph of 𝐴 has one circuit (𝑆 1 → 𝑆 2 → 𝑆 1 ) with length equal to 2. Therefore the cyclicity of the critical graph of 𝐴 is 𝑐 = 2.

The maximum cycle mean of the precedence graph of 𝐴, or equivalently, the eigenvalue of 𝐴 is given by (2.39):

𝜆 = 2 ⨁ 𝑗=1 ( 𝑡𝑟𝑎𝑐𝑒(𝐴 𝑗 ) ) 1/𝑗 = 𝑡𝑟𝑎𝑐𝑒(𝐴) 1 ⊕ (𝑡𝑟𝑎𝑐𝑒(𝐴 2 )) 1/2 , since 𝐴 2 = ⎛ ⎝ 2 5 3 3 ⎞ ⎠ ⊗ ⎛ ⎝ 2 5 3 3 ⎞ ⎠ = ⎛ ⎝ 8 8 6 8 ⎞ ⎠ ,
we have that:

𝜆 = (2 ⊕ 3) 1 ⊕ (8 ⊕ 8) 1/2 = 3 ⊕ (8) 1/2 = 3 ⊕ 4 = 4.
According to Corollary 2.14, it follows that there exists a 𝐾 0 (𝐴) such that:

𝑘 ≥ 𝐾 0 (𝐴) ⇒ x(𝑘 + 2) = 4 2 ⊗ x(𝑘) = 8 ⊗ x(𝑘).
Indeed, for x(0) = (𝑒 𝑒) 𝑇 , the following sequence x(𝑘), 𝑘 = 1, 2, • • • is observed:

⎛ ⎝ 𝑒 𝑒 ⎞ ⎠ , ⎛ ⎝ 5 3 ⎞ ⎠ , ⎛ ⎝ 8 8 ⎞ ⎠ , ⎛ ⎝ 13 11 ⎞ ⎠ , ⎛ ⎝ 16 16 ⎞ ⎠ , ⎛ ⎝ 21 19 ⎞ ⎠ , ⎛ ⎝ 24 24 ⎞ ⎠ , ⎛ ⎝ 29 27 ⎞ ⎠ , • • • Therefore, one can conclude that for all 𝑘 ≥ 0, x(𝑘 + 2) = 8𝑥(𝑘), 𝑥(0) = [𝑒 𝑒] 𝑇 and 𝑥(1) = [5 3] 𝑇 .
To calculate the eigenvector(s) corresponding to the eigenvalue 𝜆 = 4 we define the matrix:

𝐵 = 𝜆 -1 ⊗ 𝐴 = 4 -1 ⊗ ⎛ ⎝ 2 5 3 3 ⎞ ⎠ = -4 ⊗ ⎛ ⎝ 2 5 3 3 ⎞ ⎠ = ⎛ ⎝ -2 1 -1 -1 ⎞ ⎠ .
The matrices 𝐵 * and 𝐵 + are:

𝐵 * = 𝑒 ⊕ 𝐵 = ⎛ ⎝ 𝑒 𝜀 𝜀 𝑒 ⎞ ⎠ ⊕ ⎛ ⎝ -2 1 -1 -1 ⎞ ⎠ = ⎛ ⎝ 𝑒 1 -1 𝑒 ⎞ ⎠ . 𝐵 + = 𝐵 ⊗ 𝐵 * = ⎛ ⎝ -2 1 -1 -1 ⎞ ⎠ ⊗ ⎛ ⎝ 𝑒 1 -1 𝑒 ⎞ ⎠ = ⎛ ⎝ 𝑒 1 -1 𝑒 ⎞ ⎠ .
From Proposition 2.12 it follows that 𝜉 = [𝑒 -1] 𝑇 and 𝜉 = [1 𝑒] 𝑇 are eigenvectors of 𝐴 corresponding to the eigenvalue 𝜆 = 4. According to (2.38), if we set the initial conditions of the system to be equal to an eigenvector of 𝐴, the periodic behavior of the system will be given by x(𝑘 + 1) = 𝐴x(𝑘) = 𝜆x(𝑘) = 4x(𝑘) for all 𝑘 ≥ 0. Indeed, for x(0) = [1 𝑒] 𝑇 the following sequence is observed:

⎛ ⎝ 1 𝑒 ⎞ ⎠ , ⎛ ⎝ 5 4 ⎞ ⎠ , ⎛ ⎝ 9 8 ⎞ ⎠ , ⎛ ⎝ 13 12 ⎞ ⎠ , ⎛ ⎝ 17 16 ⎞ ⎠ , ⎛ ⎝ 21 20 ⎞ ⎠ , ⎛ ⎝ 25 24 ⎞ ⎠ , ⎛ ⎝ 29 28 ⎞ ⎠ , • • •

Difference Bounds Matrix

The Difference Bounds Matrices (DBM) are an effective data structure to represent regions defined by a finitely many number of linear inequalities (DILL, 1990).

The DBM are square matrices with entries in the complete idempotent semiring noted by ℬ (bounds algebra) and defined as the set of ordered pairs (R, ) ∪ (∞, <) ∪ (-∞, <) (where ∈ {<, ≤} and < is assumed to be strictly less than ≤) and the operations of sum and product defined, respectively, as the intersection and sum of the usual algebra:

(𝑎, 𝑎 ) ⊕ ℬ (𝑏, 𝑏 ) = ⎧ ⎪ ⎨ ⎪ ⎩
(𝑎, 𝑎 ) if 𝑎 < 𝑏 or (𝑎 = 𝑏 and 𝑎 ≤ 𝑏 ), (𝑏, 𝑏 ) otherwise.

(2.42)

(𝑎, 𝑎 ) ⊗ ℬ (𝑏, 𝑏 ) = (𝑎 + 𝑏, 𝑚𝑖𝑛( 𝑎 , 𝑏 )).
(2.43)

The identity and the zero element in ℬ are, respectively, 𝑒 ℬ = (0, ≤) and

𝜀 ℬ = (∞, <), the top element is ⊤ ℬ = (-∞, <).
According to (2.4), in this algebraic structure, a partial order relation is defined by:

(𝑎, 𝑎 ) ⪰ ℬ (𝑏, 𝑏 ) ⇔ (𝑎, 𝑎 ) = (𝑎, 𝑎 ) ⊕ ℬ (𝑏, 𝑏 ) ⇔ (𝑏, 𝑏 ) = (𝑎, 𝑎 ) ∧ (𝑏, 𝑏 ).
(2.44)

Remark 2.17 The order ⪰ ℬ in ℬ coincides with the usual lexicographic order ≤ ( DILL, 1990, Sec. 3.1), i.e., (𝑎, 𝑎 ) ⪰ ℬ (𝑏, 𝑏 ) ⇔ (𝑎, 𝑎 ) ≤ (𝑏, 𝑏 ).

Equivalently, the order ⪯ ℬ coincides with ≥.

Example 2.18 Consider the sets 𝐴 = {𝑥 ∈ R : 𝑥 ≤ 3}, 𝐵 = {𝑥 ∈ R : 𝑥 < 4} and 𝐶 = {𝑥 ∈ R : 𝑥 < 3}. These sets can be represented, respectively, by the following elements in the bounds algebra: 𝑎 = (3, ≤), 𝑏 = (4, <) and 𝑐 = (3, <). Thus, we have that 𝑐 ⪰ ℬ 𝑎 ⪰ ℬ 𝑏, and

𝐴 ∩ 𝐵 = {𝑥 ∈ R : 𝑥 ≤ 3} ≡ 𝑎 ⊕ ℬ 𝑏 = (3, ≤), 𝐴 ∩ 𝐶 = {𝑥 ∈ R : 𝑥 < 3} ≡ 𝑎 ⊕ ℬ 𝑐 = (3, <), 𝐵 ∩ 𝐶 = {𝑥 ∈ R : 𝑥 < 3} ≡ 𝑏 ⊕ ℬ 𝑐 = (3, <), 𝐴 + 𝐵 = {𝑥 ∈ R : 𝑥 < 7} ≡ 𝑎 ⊗ ℬ 𝑏 = (7, <), 𝐴 + 𝐶 = {𝑥 ∈ R : 𝑥 < 6} ≡ 𝑎 ⊗ ℬ 𝑐 = (6, <), 𝐵 + 𝐶 = {𝑥 ∈ R : 𝑥 < 7} ≡ 𝑏 ⊗ ℬ 𝑐 = (7, <).
The star operation is given by:

(𝑎, 𝑎 ) * = 𝑒 ℬ ⊕ ℬ (𝑎, 𝑎 ) ⊕ ℬ (𝑎, 𝑎 ) 2 ... = ⎧ ⎪ ⎨ ⎪ ⎩ 𝑒 ℬ if (𝑎, 𝑎 ) ⪯ ℬ 𝑒 ℬ , ⊤ ℬ otherwise.
(2.45)

x 2

( -1 ,

)

( 1 0 0 , < )

x 0 =0

(-1,¡) (120,¡)

x 1 A DBM is a square matrix 𝐷 ∈ ℬ 𝑛+1×𝑛+1 , with diagonal entries 𝑒 ℬ , representing a system of linear inequalities that constrain single variables in a set {𝑥 1 , 𝑥 2 , ..., 𝑥 𝑛 } and their differences within the limits identified by 𝑑 𝑖+1 𝑗+1 = (𝛼 𝑖𝑗 , 𝑖𝑗 ) (DILL, 1990, Sec. 4.1), [START_REF] Ridi | Developing a scheduler with difference-bound matrices and the floyd-warshall algorithm[END_REF]:

⎧ ⎨ ⎩ 𝑥 𝑖 -𝑥 𝑗 𝑖𝑗 𝛼 𝑖𝑗 𝑥 0 = 0
𝑖 ̸ = 𝑗 and 𝑖, 𝑗 ∈ {0, ..., 𝑛} .

(2.46)

The artificial value 𝑥 0 is assumed to be always equal 0 and is used to represent bounds over a single variable, e.g., 𝑥 𝑖 ≤ 𝛼 𝑖,0 ⇔ 𝑥 𝑖 -𝑥 0 ≤ 𝛼 𝑖,0 or 𝑥 𝑖 ≥ -𝛼 0,𝑖 ⇔ 𝑥 0 -𝑥 𝑖 ≤ 𝛼 0,𝑖 . The solution set of (2.46) is the region of 𝐷, or ℛ(𝐷).

The identity DBM in ℬ 𝑛×𝑛 , denoted by 𝑒 𝑛×𝑛 ℬ , has entries equal (0, ≤) on the diagonal and (∞, <) elsewhere. The null matrix, denoted by 𝜀 𝑛×𝑛 ℬ , has all entries equal (∞, <).

Remark 2.19

We can also look at a DBM as a directed graph in which inequality bounds become arc weights.

Example 2.20 Consider the following DBM:

𝐷 = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-1, ≤) 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (-1, ≤) (100, <) (120, ≤) 𝑒 ℬ ⎞ ⎟ ⎟ ⎟ ⎠
The region of 𝐷 is given by ℛ

(𝐷) = {x ∈ R : 𝑥 1 ≥ 1, 1 ≤ 𝑥 2 -𝑥 1 ≤ 120, 𝑥 2 < 100} as presented in Figure 3.
Given two DBM in ℬ 𝑛×𝑛 , 𝐷 (𝑋) and 𝐷 (𝑌 ) , according to (2.11) the partial order relation can be defined as:

𝐷 (𝑋) ⪰ ℬ 𝐷 (𝑌 ) ⇐⇒ 𝐷 (𝑋) = 𝐷 (𝑋) ⊕ ℬ 𝐷 (𝑌 ) ⇐⇒ {𝑑 (𝐴) 𝑖𝑗 ⪰ 𝑑 (𝐵) 𝑖𝑗 , ∀𝑖, 𝑗}.
(2.47)

Remark 2.21 The sum (in ℬ) of DBM is equivalent to the intersection of its regions, e.g, let 𝐷 (𝑋) and 𝐷 (𝑌 ) be two DBM in ℬ 𝑛×𝑛 . Then, 𝐷 (𝑋) ⊕ ℬ 𝐷 (𝑌 ) ≡ ℛ(𝐷 (𝑋) ) ∩ ℛ(𝐷 (𝑌 ) ). From now on, the sum of DBM will be referred as the intersection of DBM.

Remark 2.22 In general, the union of DBM is not a DBM. However, if 𝐷 (𝑋) = 𝐷 (𝑋) ⊕ ℬ 𝐷 (𝑌 ) then 𝐷 (𝑋) ∪ 𝐷 (𝑌 ) = 𝐷 (𝑌 ) . Note that 𝐷 (𝑋) ⊕ ℬ 𝐷 (𝑌 ) corresponds to the intersection of 𝐷 (𝑋) and 𝐷 (𝑌 ) .

Canonical Form Representation and Checking for Emptiness

In general, a region can be represented by several DBM. However, each DBM admits an equivalent and unique representation in canonical form, given by (DILL, 1990, Th. 2):

𝑐𝑓 (𝐷) = 𝐷 * .
(2.48)

By definition 𝐷 * [𝑖, 𝑗] is the cost of the shortest path1 in the precedence graph of 𝐷 from node with index 𝑖 to 𝑗 (DILL, 1990, Sec. 4.1). Therefore, the Floyd-Warshall algorithm [START_REF] Floyd | Algorithm 97: Shortest path[END_REF] (see also algorithm 2.1) can be used to obtain the canonical-form representation of a DBM with a complexity that is cubic w.r.t. its dimension. Note that, if there is a cycle of cost less than (0, ≤) in the precedence graph of a given DBM 𝐷, a path of arbitrarily small cost can be obtained by repeating the negative cost cycle. In the limit we would obtain

𝐷 * [𝑖, 𝑗] = (-∞, <) ⇒ 𝑥 𝑖 -𝑥 𝑗 < -∞, for some (𝑖, 𝑗) ∈ {0, • • • , 𝑛} × {0, • • • , 𝑛},
and therefore the system represented by 𝐷 is inconsistent, or equivalently ℛ(𝐷) = ∅. Thus, a simple way to decide if 𝐷 has empty region is to check if a negative-cost cycle appears during the computation of the shortest-path matrix using the Floyd-Warshall algorithm (DILL, 1990, Sec. 4.1).

Algorithm 2.1 presents the Floyd-Warshall algorithm with a checking for emptiness step. The algorithm works as follows: at the first iteration, it is computed the shortest path among all pairs of nodes with the restriction that only the node with index 0 can be visited as intermediary nodes; at the second iteration, it is computed the shortest path among all pairs of nodes with the restriction that only nodes with index in {0, 1} can be visited as intermediary nodes. Finally, at the 𝑛-th iteration, it is computed the shortest path among all pairs of nodes using any node in the precedence graph of 𝐷 as intermediary node. Note that step 6 checks for negative-cost cycles. If a negative-cost cycle is detected, 𝐷 * [1, 1] is actualized with the value ⊤ ℬ = (-∞, <) to signalizes that 𝐷 has empty region and the algorithm is stopped.

Algorithm 2.1: Floyd-Warshall algorithm (operations in ℬ).

input : ( 1 0 0 , < )

𝐷 ∈ ℬ 𝑛+1×𝑛+1 output: 𝐷 * 1 𝐷 * ← 𝐷; 2 for 𝑘 = 1 → 𝑛 + 1 do 3 for 𝑖 = 1 → 𝑛 + 1 do 4 for 𝑗 = 1 → 𝑛 + 1 do 5 𝐷 * [𝑖, 𝑗] ← 𝐷 * [𝑖, 𝑗] ⊕ ℬ (𝐷 * [𝑖, 𝑘] ⊗ ℬ 𝐷 * [𝑘, 𝑗]); 6 if 𝑖 == 𝑗 and 𝐷 * [𝑖, 𝑗] ≻ ℬ 𝑒 ℬ then 7 𝐷 * [1, 1] ← ⊤ ℬ , 𝑘 ← 𝑛, 𝑖 ← 𝑛 , 𝑗 ← 𝑛;
x 0 (-1, ) (120, )

x 0 Example 2.23 The canonical form representation of the DBM of example 2.20 is given by:

( - 1 , ) ( 1 0 0 , < ) x 2 x 1 (-1, ) (99,<) ( -2 , ) ( 9 9 , < )
𝐷 * = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-1, ≤) (-2, ≤) (99, <) 𝑒 ℬ (-1, ≤) (100, <) (99, <) 𝑒 ℬ ⎞ ⎟ ⎟ ⎟ ⎠
.

In figure 4, are the precedence graphs of 𝐷 and 𝐷 * .

Definition 2.24 (stripe) A stripe is defined as a DBM 𝐷 ∈ ℬ (𝑛)×(𝑛) , whose canonical form representation

𝐷 * is such that 𝐷 * [1, 𝑗] = 𝐷 * [𝑗, 1] = 𝜀 ℬ for all 𝑗 ∈ {1, ..., 𝑛}.
Remark 2.25 Note that, according to Definition 2.24, a stripe is a DBM that does not constrain single variables, and therefore does not require the artificial variable 𝑥 0 . In (ADZKIYA et al., 2015, Sec. 2.3) a stripe is defined as a DBM that does mot contain the variable 𝑥 0 .

Orthogonal Projection and Cartesian Product of DBM

This section presents two important operations with DBM: the Orthogonal Projection onto a subset of its variables and the Cartesian (or cross) product of DBM.

Given a DBM 𝐷 ∈ ℬ 𝑛×𝑛 , which constrain the variables {𝑥 1 , ..., 𝑥 𝑛 } and their differences, the orthogonal projection of 𝐷 onto a subset {𝑥 𝑖 1 , ..., 𝑥 𝑖𝑝 }, written 𝐷⌈ {𝑥 𝑖 1 ,...,𝑥 𝑖𝑝 } , is such that ℛ(𝐷⌈ {𝑥 𝑖 1 ,...,𝑥 𝑖𝑝 } ) = {(𝑥 𝑖 1 , ..., 𝑥 𝑖𝑝 ) 𝑇 ∈ R 𝑝 : (𝑥 1 , ..., 𝑥 𝑛 ) 𝑇 ∈ ℛ(𝐷)}. If the DBM is in the canonical form, its orthogonal projection onto a subset of its variables can be find by deleting the rows and columns corresponding to the complementary variables, i.e, the variables 𝑥 𝑗 such that 𝑗 / ∈ {𝑖 1 , ..., 𝑖 𝑝 } (DILL, 1990, Sec. 4.1).

Given two DBM 𝐷 (𝑋) ∈ ℬ (𝑝+1)×(𝑝+1) and 𝐷 (𝑌 ) ∈ ℬ (𝑛+1)×(𝑛+1) , the Cartesian product of its regions is given by ℛ(𝐷 (𝑋)

) × ℛ(𝐷 (𝑌 ) ) = { ( x 𝑇 , y 𝑇 ) 𝑇 ∈ R 𝑝+𝑛 : x ∈ ℛ(𝐷 (𝑋) ), y ∈ ℛ(𝐷 (𝑌 ) )}.
From the DBM point of view, the Cartesian product 𝐷 (𝑋) × 𝐷 (𝑌 ) can be represented by an augmented DBM 𝐷 (𝑋×𝑌 ) ∈ ℬ (𝑝+𝑛+1)×(𝑝+𝑛+1) such that ℛ(𝐷 (𝑋×𝑌 ) ) = ℛ(𝐷 (𝑋) )× ℛ(𝐷 (𝑌 ) ). Algorithm 2.2 constructs 𝐷 (𝑋×𝑌 ) with complexity 𝒪(𝑛 2 ).

Example 2.26 Consider the following DBM:

𝑥 0 𝑥 1 𝐷 (𝑋) = ⎛ ⎝ 𝑒 ℬ 𝑒 ℬ 𝑥 0 ⎞ ⎠ (80, ≤) 𝑒 ℬ 𝑥 1 𝑥 0 𝑦 1 𝑦 2 𝐷 (𝑌 ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-1, ≤) (-2, ≤) 𝑥 0 ⎞ ⎟ ⎟ ⎟ ⎠ (99, <) 𝑒 ℬ (-1, ≤) 𝑦 1 (100, <) (99, <) 𝑒 ℬ 𝑦 2
The Cartesian product of the DBM is given by: Algorithm 2.2: Cartesian product of DBM. input : 𝐷 (𝑋) ∈ ℬ (𝑝+1)×(𝑝+1) and 𝐷 (𝑌 ) ∈ ℬ (𝑛+1)×(𝑛+1) output: 𝐷 (𝑋×𝑌 ) = (𝐷 (𝑋) × 𝐷 (𝑌 ) ) ∈ ℬ (𝑝+𝑛+1)×(𝑝+𝑛+1) (𝑋×𝑌 ) [𝑖, 𝑗] ← 𝐷 (𝑋) [𝑖, 𝑗]; 5 end 6 end 7 for 𝑖 = 2 → 𝑛 + 1 do 8 𝐷 (𝑋×𝑌 ) [1, 𝑝 + 𝑖] ← 𝐷 (𝑌 ) [1, 𝑖]; 9 𝐷 (𝑋×𝑌 ) [𝑝 + 𝑖, 1] ← 𝐷 (𝑌 ) [𝑖, 1]; 10 for 𝑗 = 2 → 𝑛 + 1 do 11 𝐷 (𝑋×𝑌 ) [𝑝 + 𝑖, 𝑝 + 𝑗] ← 𝐷 (𝑌 ) [𝑖, 𝑗];

1 𝐷 (𝑋×𝑌 ) ← 𝑒 (𝑝+𝑛+1)×(𝑝+𝑛+1) ℬ ; 2 for 𝑖 = 1 → 𝑝 + 1 do 3 for 𝑗 = 1 → 𝑝 + 1 do 4 𝐷
12 end 13 end 𝑥 0 𝑥 1 𝑦 1 𝑦 2 𝐷 (𝑋×𝑌 ) = 𝐷 (𝑋) × 𝐷 (𝑌 ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (-1, ≤) (-2, ≤) 𝑥 ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ (80, ≤) 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 (99, <) 𝜀 ℬ 𝑒 ℬ (-1, ≤) 𝑦 (100, <) 𝜀 ℬ (99, <) 𝑒 ℬ 𝑦
The canonical form of 𝐷 (𝑋×𝑌 ) is given by:

𝑥 0 𝑥 1 𝑦 1 𝑦 2 𝑐𝑓 (𝐷 (𝑋×𝑌 ) ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (-1, ≤) (-2, ≤) 𝑥 0 ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ (80, ≤) 𝑒 ℬ (79, ≤) (78, ≤) 𝑥 1 (99, <) (99, <) 𝑒 ℬ (-1, ≤) 𝑦 1 (100, <) (100, <) (99, <) 𝑒 ℬ 𝑦 2
The orthogonal projection of 𝑐𝑓 (𝐷 (𝑋×𝑌 ) ) over the variables x is obtained by deleting the rows and columns corresponding to the variables y. Thus

𝑥 0 𝑥 1 𝑐𝑓 (𝐷 (𝑋×𝑌 ) )⌈ x = ⎛ ⎝ 𝑒 ℬ 𝑒 ℬ 𝑥 0 ⎞ ⎠ (80, ≤) 𝑒 ℬ 𝑥 1
Equivalently, the orthogonal projection of 𝑐𝑓 (𝐷 (𝑋×𝑌 ) ) over the variables y is given by.

𝑥 0 𝑦 1 𝑦 2 𝑐𝑓 (𝐷 (𝑋×𝑌 ) )⌈ y = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-1, ≤) (-2, ≤) 𝑥 0 ⎞ ⎟ ⎟ ⎟ ⎠ (99, <) 𝑒 ℬ (-1, ≤) 𝑦 1 (100, <) (99, <) 𝑒 ℬ 𝑦 2

Piece-Wise Affine Systems

This section discusses Piece-Wise Affine (PWA) systems generated by a generic (autonomous or nonautonomous) MPL system (ADZKIYA et al., 2015, Sec. 2.2). The PWA systems [START_REF] Sontag | Nonlinear regulation: The piecewise linear approach[END_REF] are described by a collection of state space equations associated with a given region of activity, which is given by a finite number of linear inequalities. They can model a large number of physical processes and can approximate nonlinear dynamics with arbitrary accuracy. PWA systems have been studied in [START_REF] Sontag | Nonlinear regulation: The piecewise linear approach[END_REF][START_REF] Chua | Canonical piecewise-linear representation[END_REF][START_REF] Chua | Canonical piecewise-linear representation[END_REF][START_REF] Vandenberghe | The generalized linear complementarity problem applied to the complete analysis of resistive piecewise-linear circuits[END_REF][START_REF] Kevenaar | A comparison of piecewise-linear model descriptions[END_REF][START_REF] Kevenaar | A comparison of piecewise-linear model descriptions[END_REF][START_REF] Johansson | Computation of piecewise quadratic lyapunov functions for hybrid systems[END_REF][START_REF] Johansson | Computation of piecewise quadratic lyapunov functions for hybrid systems[END_REF][START_REF] Bemporad | Observability and controllability of piecewise affine and hybrid systems[END_REF][START_REF] Heemels | Equivalence of hybrid dynamical models[END_REF][START_REF] Julian | The complete canonical piecewise-linear representation: functional form for minimal degenerate intersections[END_REF][START_REF] Wen | A canonical piecewise-linear representation theorem: Geometrical structures determine representation capability[END_REF][START_REF] Wen | A canonical piecewise-linear representation theorem: Geometrical structures determine representation capability[END_REF].

Consider a generic MPL system given by: This system can be expressed as a PWA system in the event domain 2 (HEEMELS et al., 2001):

z(𝑘) = 𝐴 ⊗ x(𝑘 -
z(𝑘) = 𝐴 g x(𝑘 -1) + f g for x(𝑘 -1) ∈ 𝑅 g , (2.50)
where the collection of all 𝑅 g , g = (𝑔 1 , • • • , 𝑔 𝑛 ) ∈ {1, ..., 𝑝} 𝑛 , forms a partition of the state space, f g is a vector of constants and 𝐴 g is a matrix of suitable dimensions.

Each g is associated with a dynamics and a region 𝑅 g such that, for all x ∈ 𝑅 g , the element 𝑔 𝑖 corresponds to the index of the maximum term of the 𝑖-th system equation of (2.49), which can be expressed as:

𝑧 𝑖 (𝑘) = 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)}.
(2.51) Thus,

𝑎 𝑖𝑔 𝑖 ⊗ 𝑥 𝑔 𝑖 (𝑘 -1) = 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)}.
(2.52)

From (2.33), equation (2.52) can be expressed as:

𝑎 𝑖𝑗 + 𝑥 𝑗 (𝑘 -1) ≤ 𝑎 𝑖𝑔 𝑖 + 𝑥 𝑔 𝑖 (𝑘 -1) ∀𝑗 ∈ {1, • • • , 𝑝}. (2.53)
Therefore, the region 𝑅 g which represents the set of all x ∈ R 𝑝 𝑚𝑎𝑥 that satisfies (2.53), is given by:

𝑅 g = 𝑛 ⋂ 𝑖=1 𝑝 ⋂ 𝑗=1 𝑗̸ =𝑔 𝑖 { x ∈ R 𝑝 𝑚𝑎𝑥 : 𝑥 𝑗 -𝑥 𝑔 𝑖 ≤ 𝑎 𝑖𝑔 𝑖 -𝑎 𝑖𝑗 } .
(2.54)

From, (2.52), the affine dynamics that is active in 𝑅 g is given by:

𝑧 𝑖 (𝑘) = 𝑥 𝑔 𝑖 (𝑘 -1) + 𝑎 𝑖𝑔 𝑖 , 𝑖 ∈ {1, ..., 𝑛}.
(2.55)

Therefore, the generic MPL system (2.49) can be expressed as the PWA system given in (2.50) where, for each g, the region 𝑅 g is given by (2.54), the matrix 𝐴 g is such that, for all (𝑖, 𝑗) ∈ {1, ..., 𝑛} × {1, ..., 𝑝}:

𝐴 g (𝑖, 𝑗) = ⎧ ⎪ ⎨ ⎪ ⎩ 1 if 𝑗 = 𝑔 𝑖 0 otherwise , (2.56)
and the vector of constants f g is given by:

f g = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑎 1𝑔 1 𝑎 2𝑔 2 • • • 𝑎 𝑛𝑔𝑛 ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ .
(2.57)

Example 2.28 Consider the autonomous MPL system given by:

x(𝑘) = ⎛ ⎝ 8 5 4 3 ⎞ ⎠ ⊗ x(𝑘 -1).
According to equation (2.54), the regions corresponding to each g ∈ {1, 2} 2 = {(1, 1), (1, 2), (2, 1), (2, 2)} are given by:

x 1 -3 -2 -1 0 1 2 3 x 2 -1 0 1 2 3 4 5 R ( 1 , 1 ) x 2 ( k ) = 4 + x 1 ( k - 1 ) R ( 1 , 2 ) x 1 ( k ) = 8 + x 1 ( k - 1 ) x 2 ( k ) = 3 + x 2 ( k - 1 ) x 1 ( k ) = 8 + x 1 ( k - 1 ) x 2 ( k ) = 3 + x 2 ( k - 1 ) x 1 ( k ) = 5 + x 2 ( k - 1 ) R ( 2 , 2 )
Figure 5 -A PWA system generated by an MPL system.

𝑅 (1,1) = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≤ 3 } ∩ { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≤ 1 } = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≤ 1 } , 𝑅 (1,2) = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≤ 3 } ∩ { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 1 -𝑥 2 ≤ -1 } = { x ∈ R 2 𝑚𝑎𝑥 : 1 ≤ 𝑥 2 -𝑥 1 ≤ 3 } , 𝑅 (2,1) = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 1 -𝑥 2 ≤ -3 } ∩ { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≤ -1 } = ∅, 𝑅 (2,2) = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 1 -𝑥 2 ≤ -3 } ∩ { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 1 -𝑥 2 ≤ -1 } = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≥ 3 } .
Thus, according to equations (2.56) and (2.57), the corresponding PWA system, defined by (2.50), is given by: Example 2.29 Consider the nonautonomous MPL system given by:

x(𝑘) = ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ ⎛ ⎝ 1 0 1 0 ⎞ ⎠ x(𝑘 -1) + ⎛ ⎝ 8 4 ⎞ ⎠ if x(𝑘 -1) ∈ 𝑅 (1,1) , ⎛ ⎝ 1 0 0 1 ⎞ ⎠ x(𝑘 -1) + ⎛ ⎝ 8 3 ⎞ ⎠ if x(𝑘 -1) ∈ 𝑅 (1,2) , ⎛ ⎝ 0 1 0 1 ⎞ ⎠ x(𝑘 -1) + ⎛ ⎝ 5 3 ⎞ ⎠ if x(𝑘 -1) ∈ 𝑅 (2,2) ,
x(𝑘) = ⎛ ⎝ 2 4 3 𝑒 ⎞ ⎠ ⊗ x(𝑘 -1) ⊕ ⎛ ⎝ 𝑒 𝜀 ⎞ ⎠ ⊗ u(𝑘).
According to (2.37), the corresponding augmented autonomous MPL system is given by:

x(𝑘) = ⎛ ⎝ 2 4 𝑒 3 𝑒 𝜀 ⎞ ⎠ ⊗ y(𝑘 -1), where y(𝑘 -1) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑥 1 (𝑘 -1) 𝑥 2 (𝑘 -1) 𝑢 1 (𝑘) ⎞ ⎟ ⎟ ⎟ ⎠
.

According to equation (2.54), the regions corresponding to each g ∈ {1, 2, 3} 2 = {(1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3)}are given by:

𝑅 (1,1) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ 2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ 3 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ ∞ } = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ -2, 𝑦 3 -𝑦 1 ≤ 2 } , 𝑅 (1,2) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ 2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ -3 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ ∞ } = ∅, 𝑅 (1,3) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ 2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -∞ } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 3 ≤ -∞ } = ∅, 𝑅 (2,1) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ 2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ 4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ 3 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ ∞ } = { y ∈ R 3 𝑚𝑎𝑥 : -2 ≤ 𝑦 2 -𝑦 1 ≤ 3, 𝑦 3 -𝑦 2 ≤ 4 } , 𝑅 (2,2) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ 2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ 4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ -3 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ ∞ } = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≥ 3, 𝑦 3 -𝑦 2 ≤ 4 } , 𝑅 (2,3) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ 2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ 4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -∞ } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 3 ≤ -∞ } = ∅, 𝑅 (3,1) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 3 ≤ -4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ 3 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ ∞ } = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -2, 𝑦 2 -𝑦 3 ≤ -4, 𝑦 2 -𝑦 1 ≤ 3 } , 𝑅 (3,2) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 3 ≤ -4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ -3 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ ∞ } = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -2, 𝑦 2 -𝑦 3 ≤ -4, 𝑦 2 -𝑦 1 ≥ 3 } , 𝑅 (3,3) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 3 ≤ -4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -∞ } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 3 ≤ -∞ } = ∅.
Thus, according to equations (2.56) and (2.57), the corresponding PWA system, defined by (2.50), is given by:

x(𝑘) = ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ ⎛ ⎝ 1 0 0 1 0 0 ⎞ ⎠ y(𝑘 -1) + ⎛ ⎝ 2 3 ⎞ ⎠ if y(𝑘 -1) ∈ 𝑅 (1,1) , ⎛ ⎝ 0 1 0 1 0 0 ⎞ ⎠ y(𝑘 -1) + ⎛ ⎝ 4 3 ⎞ ⎠ if y(𝑘 -1) ∈ 𝑅 (2,1) , ⎛ ⎝ 0 1 0 0 1 0 ⎞ ⎠ y(𝑘 -1) + ⎛ ⎝ 4 0 ⎞ ⎠ if y(𝑘 -1) ∈ 𝑅 (2,2) , ⎛ ⎝ 0 0 1 1 0 0 ⎞ ⎠ y(𝑘 -1) + ⎛ ⎝ 0 3 ⎞ ⎠ if y(𝑘 -1) ∈ 𝑅 (3,1) , ⎛ ⎝ 0 0 1 0 1 0 ⎞ ⎠ y(𝑘 -1) + ⎛ ⎝ 0 0 ⎞ ⎠ if y(𝑘 -1) ∈ 𝑅 (3,2) .
Given a matrix 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 , Algorithm 2.3 (taken from (ADZKIYA et al., 2015, Sec. 2.2)) describes a general procedure to generate the corresponding PWA system.

The algorithm works as follows. In step 1, the output variables are initialized. Then, for each g ∈ {1, ..., 𝑝} 𝑛 (step 2), the region 𝑅 g (step 6), the matrix 𝐴 g and the vector 𝑓 g Algorithm 2.3: Expressing an MPL system as a PWA system using a bactracking technique. The assignment 𝑧𝑒𝑟𝑜𝑠(., .) generates a matrix of specified dimensions, with entries equal to 0.

input : 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 output: R, A, f 1 R ← ∅, A ← ∅, f ← ∅; 2 for all g = (𝑔 𝑖 , ..., 𝑔 𝑛 ) ∈ {1, ..., 𝑝} 𝑛 do 3 𝑅 g ← R 𝑝 , 𝐴 g ← 𝑧𝑒𝑟𝑜𝑠(𝑛, 𝑝), 𝑓 g ← 𝑧𝑒𝑟𝑜𝑠(𝑛, 1); 4 for all 𝑖 ∈ {1, ..., 𝑛} do 5 for all 𝑗 ∈ {1, ..., 𝑝} do 6 𝑅 g ← 𝑅 g ∩ {x ∈ R 𝑝 : 𝑥 𝑗 -𝑥 𝑔 𝑖 ≤ 𝑎 𝑖𝑔 𝑖 -𝑎 𝑖𝑗 } ; // define
if 𝑅 g ̸ = ∅ then 11 R ← R ∪ {𝑅 g }, A ← A ∪ {𝐴 g }, f ← f ∪ {𝑓 g }; 12 end if
13 end for (step 8) are constructed according to equations (2.54), (2.56) and (2.57), respectively. If 𝑅 g is not empty (step 10), the procedure saves the region and corresponding affine dynamics to the output variables (step 11). The worst-case complexity of the algorithm is 𝒪 (𝑝 𝑛 (𝑛𝑝 + 𝑝 3 )) (see (ADZKIYA et al., 2015, Sec. 2.3)).

Remark 2.30 The bottleneck of Algorithm 2.3 resides in the worst-case cardinality of the collection of regions 𝑅 g , given by 𝑝 𝑛 . Practically, each row 𝑖 of an 𝑛 × 𝑝 matrix has 𝑝 ′ 𝑖 ≤ 𝑝 non-𝜀 elements, thus the worst-case cardinality reduces to

∏ 𝑛 𝑖=1 𝑝 ′ 𝑖 ≤ 𝑝 𝑛 .
Besides, as many regions can be empty, the complexity of the algorithm is often drastically smaller than the worst-case bound. In (Adzkiya et al. 2015a., Sec. 5.1), some experiments were carried out in order to test the efficiency of the approach: for any given 𝑛 it was generated an 𝑛 × 𝑛 matrix 𝐴 with 2 non-𝜀 elements randomly placed in each row. The finite elements were randomly generated integers between 1 and 100. They claim that the test over a number of randomly generated dynamics goes against biasing the experimental outcomes and allows claiming the applicability of the technique over general MPL systems. Over 10 experiments, for 𝑛 = 10, the average number of regions was 700.80 [regions] and the average time to generate the PWA system was 4.73 [sec]. Note that in this case the worst-case cardinality for the number of regions is ∏ 10 𝑖=1 2 = 2 10 = 1024, since there are only 2 non-𝜀 elements in each row. The experiments were run in a 12-core Intel Xeon 3.47 GHz PC with 24 GB of memory.

In (ADZKIYA et al., 2015, Sec. 2.2) it is proposed a backtracking technique to improve the performance of Algorithm 2.3. The technique is based on the partial coefficients (𝑔 1 , ..., 𝑔 𝑘 ) for 𝑘 ∈ {1, ..., 𝑛}, and corresponding region given by:

𝑅 (𝑔 1 ,...,𝑔 𝑘 ) = 𝑘 ⋂ 𝑖=1 𝑝 ⋂ 𝑗=1 𝑗̸ =𝑔 𝑖 { x ∈ R 𝑛 𝑚𝑎𝑥 : 𝑥 𝑗 -𝑥 𝑔 𝑖 ≤ 𝑎 𝑖𝑔 𝑖 -𝑎 𝑖𝑗 } .
(2.58)

Note that, for 𝑘 > 1, the partial regions (2.58) can be recursively constructed as:

𝑅 (𝑔 1 ,...,𝑔 𝑘 ) = 𝑅 (𝑔 1 ,...,𝑔 𝑘-1 ) 𝑝 ⋂ 𝑗=1 𝑗̸ =𝑔 𝑖 { x ∈ R 𝑛 𝑚𝑎𝑥 : 𝑥 𝑗 -𝑥 𝑔 𝑘 ≤ 𝑎 𝑘𝑔 𝑘 -𝑎 𝑘𝑗 } .
(2.59)

Thus if the region associated with some partial coefficient (𝑔 ∅ 1 , ..., 𝑔 ∅ 𝑘 ) is empty, then, for all coefficients (𝑔 1 , ..., 𝑔 𝑛 ) such that 𝑔 𝑖 = 𝑔 ∅ 𝑖 for all 𝑖 ∈ {1, ..., 𝑘}, the corresponding regions are also empty. Therefore, the computations associated to these coefficients can be skipped, which improves the performance of Algorithm.

Example 2.31 Given the MPL system described by:

x(𝑘) = ⎛ ⎜ ⎜ ⎜ ⎝ 2 1 4 5 2 3 4 3 1 ⎞ ⎟ ⎟ ⎟ ⎠ ⊗ x(𝑘 -1),
one can verify that the regions associated to the partial coefficients g ∅ ∈ {(1, 2), (1, 3), (2, 3)} are empty. Thus, for all coefficients g ∈ {(1, 2, 𝑔 ∅ 3 ), (1, 3, 𝑔 ∅ 3 ), (2, 3, 𝑔 ∅ 3 )}, where 𝑔 ∅ 3 ∈ {1, 2, 3}, the corresponding region is also empty and the computations associated to these coefficients can be skipped. Indeed, the coefficients with corresponding nonempty region are given by g ∈ { (1,1,1),(1,1,2),(2,1,1),(2,1,2),(2,2,2),(3,1,2),(3,2,2),(3,3,1),(3,3,2),(3,3,3

)}.
Given a matrix 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 , Algorithm 2.4 describes a general procedure to generate the corresponding PWA system using this backtrack technique.

Algorithm 2.4 works as follows. In setp 1 the output variables are initialized. In step 5 the regions 𝑅 (𝑖) , 𝑖 ∈ {1, ..., 𝑝} are computed. If 𝑅 𝑖 is not empty the procedure saves the partial coefficient 𝑖 to the variable 𝐺 1 (step 9). In step 17, the partial regions 𝑅 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) , 𝑖 ∈ {1, ..., 𝑝} are recursively computed according to (2.59). If 𝑅 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) is not empty the procedure saves coefficient (𝑔 1 , ..., 𝑔 𝑘-1 , 𝑖) to the variable 𝐺 𝑘 (step 9). Note that, if the region associated to the partial coefficient (𝑔 1 , ..., 𝑔 𝑘-1 , 𝑖) is empty, then the coefficient is skipped in the next recursive steps. The affine dynamics (equations (2.56) and (2.57)) are computed in steps 7 and 19. In the last recursive step (𝑘 = 𝑛, step 22) the procedure saves the nonempty regions and corresponding dynamics to the output variables (step 23).

Algorithm 2.4: Expressing an MPL system as a PWA system. The assignment 𝑧𝑒𝑟𝑜𝑠(., .) generates a matrix of specified dimensions, with entries equal to 0.

input : 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 output: R, A, f R ← ∅, A ← ∅, f ← ∅, 𝐺 𝑖 | 𝑛 𝑖=1 ← ∅ ; for all i ∈ (1, ..., 𝑝) do 𝑅 (𝑖) ← R 𝑝 , 𝐴 (𝑖) ← 𝑧𝑒𝑟𝑜𝑠(𝑛, 𝑝), 𝑓 (𝑖) ← 𝑧𝑒𝑟𝑜𝑠(𝑛, 1); for all j ∈ {1, ..., 𝑝} do 𝑅 (𝑖) ← 𝑅 (𝑖) ∩ {x ∈ R 𝑝 : 𝑥 𝑗 -𝑥 𝑖 ≤ 𝑎 1𝑖 -𝑎 1𝑗 } ; end for 𝐴 (𝑖) (1, 𝑖) = 1, 𝑓 (𝑖) (1) = 𝑎 1𝑖 ; if 𝑅 𝑖 is not empty then 𝐺 1 ← 𝐺 1 ∪ {𝑖} ; end if end for for all 𝑘 ∈ {2, ..., 𝑛} do for all 𝑔 = (𝑔 1 , ..., 𝑔 𝑘-1 ) ∈ 𝐺 𝑘-1 do for all i ∈ {1, ..., 𝑝} do 𝑅 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) ← 𝑅 (𝑔 1 ,...,𝑔 𝑘-1 ) , 𝐴 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) ← 𝐴 (𝑔 1 ,...,𝑔 𝑘-1 ) , 𝑓 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) ← 𝑓 (𝑔 1 ,...,𝑔 𝑘-1 ) ;
for all j ∈ {1, ..., 𝑝} do

𝑅 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) ← 𝑅 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) ∩ {x ∈ R 𝑝 : 𝑥 𝑗 -𝑥 𝑖 ≤ 𝑎 𝑘𝑖 -𝑎 𝑘𝑗 } ; end for 𝐴 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) (𝑘, 𝑖) = 1, 𝑓 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) (𝑘) = 𝑎 𝑘𝑖 ; if 𝑅 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) is not empty then 𝐺 𝑘 ← 𝐺 𝑘 ∪ {(𝑔 1 , ..., 𝑔 𝑘-1 , 𝑖)}; if 𝑘 == 𝑛 then R ← R ∪ {𝑅 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) }, A ← A ∪ {𝐴 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) }, f ← f ∪ {𝑓 (𝑔 1 ,...,𝑔 𝑘-1 ,𝑖) }; end if end if
end for end for end for

DBM Representation of PWA Systems

In this section, the DBM data structure is used to represent PWA systems generated by MPL systems. It is recalled that each component of the PWA system can be represented by a DBM.

As presented in section 2.4 the DBM can represent intersections of finitely many linear inequalities. Thus, in order to represent the PWA systems as DBM, each component of the PWA system must be expressed as an intersection of linear inequalities. From (2.54) each region 𝑅 g is an intersection of linear inequalities. Furthermore, the affine dynamics (2.55) can be expressed as:

𝑝 ⋂ 𝑖=1 {𝑧 𝑖 (𝑘) -𝑥 𝑔 𝑖 (𝑘 -1) ≤ 𝑎 𝑖𝑔 𝑖 } ∩ 𝑝 ⋂ 𝑖=1 {𝑥 𝑔 𝑖 (𝑘 -1) -𝑧 𝑖 (𝑘) ≤ -𝑎 𝑖𝑔 𝑖 } .
(2.60)

Therefore, each component of the PWA system can be represented by an (𝑛 + 𝑝 + 1) × (𝑛 + 𝑝 + 1) DBM, noted by 𝐷 (g) , which constrains the variables z

(𝑘) = (𝑧 1 (𝑘) • • • 𝑧 𝑛 (𝑘)) 𝑇 and x(𝑘 -1) = (𝑥 1 (𝑘 -1) • • • 𝑥 𝑝 (𝑘 -1)
) 𝑇 and their differences. Algorithm 2.5 generates MPL systems as PWA systems using DBM as data structure. The output of the algorithm is a collection of DBM given in the variable D. It should be noted that this algorithm is based on the procedure given in Algorithm 2.3, and therefore has the same worst-case cardinality, i.e, 𝒪 (𝑝 𝑛 (𝑛𝑝 + 𝑝3 )). Moreover, the backtracking technique presented in Algorithm 2.4 can be used in order to improve the performance of the algorithm.

Example 2.32 Consider the autonomous MPL system given by:

x(𝑘) = ⎛ ⎝ 8 5 4 3 ⎞ ⎠ ⊗ x(𝑘 -1).
Using 𝐴 as the input of Algorithm 2.5, the output is the collection of DBM D = {𝐷 (1,1) , 𝐷 (1,2) , 𝐷 (2,2) }, where 3 :

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (1,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (8, ≤) 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (4, ≤) 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-8, ≤) (-4, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ (1, ≤) 𝑒 ℬ 𝑥 2 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (1,2) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (8, ≤) 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (3, ≤) 𝑥 ′ 2 𝜀 ℬ (-8, ≤) 𝜀 ℬ 𝑒 ℬ (-1, ≤) 𝑥 1 𝜀 ℬ 𝜀 ℬ (-3, ≤) (3, ≤) 𝑒 ℬ 𝑥 2
Algorithm 2.5: Expressing an MPL system as a PWA system using DBM as data structure. The assignment 𝑑𝑏𝑚𝐸𝑦𝑒(•) generates a square matrix of specified dimension, with entries

𝑑 𝑖𝑗 = 𝑒 ℬ if 𝑖 = 𝑗 and 𝑑 𝑖𝑗 = 𝜀 ℬ if 𝑖 ̸ = 𝑗.
if 𝑎 𝑖,𝑗 ̸ = 𝜖 then 8 𝑅 g [𝑖, 𝑔 𝑖 ] ← (min {𝑅 g [𝑖, 𝑔 𝑖 ], 𝑎 𝑖,𝑔 𝑖 -𝑎 𝑖,𝑗 } , ≤) // define 𝑅 g (see (2.54)) 9 end if end for 𝑑𝑦𝑛𝑆𝑢𝑝[𝑖, 𝑔 𝑖 ] ← (𝑎 𝑖,𝑔 𝑖 , ≤) // represents 𝑧 𝑖 ≤ 𝑥 𝑔 𝑖 + 𝑎 𝑖,𝑔 𝑖 𝑑𝑦𝑛𝐼𝑛𝑓 [𝑔 𝑖 , 𝑖] ← (-𝑎 𝑖,𝑔 𝑖 , ≤) // represents 𝑧 𝑖 ≥ 𝑥 𝑔 𝑖 + 𝑎 𝑖,𝑔 𝑖 end if end for if 𝑅 g is not empty then 𝐷 (g) ← 𝑑𝑏𝑚𝐸𝑦𝑒(𝑛 + 𝑝 + 1) // 𝐷 (g) [2 : 𝑛 + 1, 𝑛 + 2 : 𝑛 + 𝑝 + 1] ← 𝑑𝑦𝑛𝑆𝑢𝑝 // 𝐷 (g) [𝑛 + 2 : 𝑛 + 𝑝 + 1, 2 : 𝑛 + 1] ← 𝑑𝑦𝑛𝐼𝑛𝑓 // 𝐷 (g) [𝑛 + 2 : 𝑛 + 𝑝 + 1, 𝑛 + 2 : 𝑛 + 𝑝 + 1] ← 𝑅 g // D ← D ∪ {𝐷 (g) }; end if end for 𝑥 0 𝑧 1 ...𝑧𝑛 𝑥 1 ...𝑥𝑝 𝐷 (g) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ ...𝜀 ℬ 𝜀 ℬ ...𝜀 ℬ 𝑥 0 ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝜀 ℬ . . . 𝜀 ℬ 𝑒 𝑛×𝑛 ℬ 𝑑𝑢𝑛𝑆𝑢𝑝 (step 17) 𝑧 1 . . . 𝑧𝑛 𝜀 ℬ . . . 𝜀 ℬ 𝑑𝑢𝑛𝐼𝑛𝑓 (step 18) 𝑅g (step 19) 𝑥 1 . . . 𝑥𝑝 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (2,2) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ (5, ≤) 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (3, ≤) 𝑥 ′ 2 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (-3, ≤) 𝑥 1 𝜀 ℬ (-5, ≤) (-3, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2
Example 2.33 Consider the nonautonomous MPL system of example 2.29:

x ′ = ⎛ ⎝ 2 4 3 𝑒 ⎞ ⎠ ⊗ x ⊕ ⎛ ⎝ 𝑒 𝜀 ⎞ ⎠ ⊗ u.
The corresponding augmented autonomous MPL system is characterized by the matrix:

Ā = ⎛ ⎝ 2 4 𝑒 3 𝑒 𝜀 ⎞ ⎠ .
Thus, using Ā as the input of Algorithm 2.5, the output is the collection of DBM 1) , 𝐷 (2,1) , 𝐷 (2,2) , 𝐷 (3,1) , 𝐷 (3,2) }, where4 :

D = {𝐷 (1,
𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (1,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (2, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (3, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-2, ≤) (-3, ≤) 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 1 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ (-2, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 2 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ (2, ≤) 𝜀 ℬ 𝑒 ℬ 𝑢 1 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (2,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ (4, ≤) 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (3, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ 𝜀 ℬ (-3, ≤) 𝑒 ℬ (2, ≤) 𝜀 ℬ 𝑥 1 𝜀 ℬ (-4, ≤) 𝜀 ℬ (3, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 2 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ (4, ≤) 𝑒 ℬ 𝑢 1 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (2,2) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ (4, ≤) 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (-3, ≤) 𝜀 ℬ 𝑥 1 𝜀 ℬ (-4, ≤) 𝑒 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑥 2 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ (4, ≤) 𝑒 ℬ 𝑢 1 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (3,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (3, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ 𝜀 ℬ (-3, ≤) 𝑒 ℬ 𝜀 ℬ (-2, ≤) 𝑥 1 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ (3, ≤) 𝑒 ℬ (-4, ≤) 𝑥 2 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑢 1 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (3,2) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑥 ′ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑥 ′ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (-3, ≤) (-2, ≤) 𝑥 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑒 ℬ (-4, ≤) 𝑥 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑢

Reachability Analysis of MPL Systems

This chapter summarizes the results on reachability analysis of MPL systems presented in (ADZKIYA et al., 2014b;ADZKIYA et al., 2014a;ADZKIYA et al., 2015). It will be shown that it is possible to map DBM-sets through MPL systems. Then, forward and backward reachability analysis will be introduced.

Proposition 3.1 is the basis for the reachability analysis of MPL systems using the PWA-DBM approach.

Proof:

The proof will be given for the image instance. The proof for the inverse image is similar. Each subsystem of a PWA system can be represented by1 :

𝑥 𝑖 (𝑘) = 𝑎 𝑖𝑔 𝑖 + 𝑥 𝑔 𝑖 (𝑘 -1) if x(𝑘 -1) ∈ 𝑅 g , ∀𝑖 ∈ {1, ..., 𝑛} ∪ {0},
where, for all g, 𝑔 0 is set to 0, 𝑎 00 = 0, 𝑎 0𝑗 = 𝜀 for all 𝑗 ∈ {1, ..., 𝑝} and 𝑎 𝑖0 = 𝜀 for all 𝑖 ∈ {1, ..., 𝑛}.

Note that, given a set 𝑋 𝑘-1 , only the points in the intersection 𝑋 𝑘-1 ∩ 𝑅 g are governed by this dynamics i.e.:

𝑥 𝑖 (𝑘) = 𝑎 𝑖𝑔 𝑖 + 𝑥 𝑔 𝑖 (𝑘 -1) if x(𝑘 -1) ∈ 𝑋 𝑘-1 ∩ 𝑅 g , ∀𝑖.
(3.1)

If 𝑋 𝑘-1 can be represented by a DBM, the intersection 𝑋 𝑘-1 ∩ 𝑅 g can also be represented by a DBM that will be noted by 𝐷 (𝑋 𝑘-1 ∩𝑅g) , with entries 𝑑

(𝑋 𝑘-1 ∩𝑅g) 𝑖𝑗 = (d (𝑋 𝑘-1 ∩𝑅g) 𝑖𝑗 , ≤).
Since computing the canonical form does not change the region represented by a DBM, it will be assumed that 𝐷 (𝑋 𝑘-1 ∩𝑅 𝑢 g ) is in the canonical form. Therefore, for all x(𝑘 -1) ∈ 𝑋 𝑘-1 ∩ 𝑅 g we have that the tightest possible upper bound for 𝑥 𝑖 (𝑘 -1) -𝑥 𝑗 (𝑘 -1) is given by:

𝑥 𝑖 (𝑘 -1) -𝑥 𝑗 (𝑘 -1) ≤ d (𝑋 𝑘-1 ∩𝑅g) 𝑖𝑗 , ∀𝑖, 𝑗.
In particular:

𝑥 𝑔 𝑖 (𝑘 -1) -𝑥 𝑔 𝑗 (𝑘 -1) ≤ d (𝑋 𝑘-1 ∩𝑅g) 𝑔 𝑖 𝑔 𝑗 , ∀𝑖, 𝑗.
Adding 𝑎 𝑖𝑔 𝑖 -𝑎 𝑗𝑔 𝑗 in both sides of the inequality one obtains:

𝑥 𝑖 (𝑘) ⏞ ⏟ 𝑎 𝑖𝑔 𝑖 + 𝑥 𝑔 𝑖 (𝑘 -1) -( 𝑥 𝑗 (𝑘) ⏞ ⏟ 𝑎 𝑗𝑔 𝑗 + 𝑥 𝑔 𝑗 (𝑘 -1)) ≤ d (𝑋 𝑘-1 ∩𝑅g) 𝑔 𝑖 𝑔 𝑗 + 𝑎 𝑖𝑔 𝑖 -𝑎 𝑗𝑔 𝑗 , ∀𝑖, 𝑗.
Thus, the tightest possible upper bound for 𝑥 𝑖 (𝑘) -𝑥 𝑗 (𝑘) is given by:

𝑥 𝑖 (𝑘) -𝑥 𝑗 (𝑘) ≤ d (𝑋 𝑘-1 ∩𝑅g) 𝑔 𝑖 𝑔 𝑗 + 𝑎 𝑖𝑔 𝑖 -𝑎 𝑗𝑔 𝑗 , ∀𝑖, 𝑗. (3.2)
It should be noted that all points in the image of 𝑋 𝑘-1 w.r.t. the subsystem g of the PWA system must satisfy (3.2). Otherwise, at least one of the restrictions defined by the dynamics (3.1) would be violated. Moreover, all the points that satisfy (3.2) can be reached from 𝑋 𝑘-1 ∩ 𝑅 g . Therefore the image of 𝑋 𝑘-1 w.r.t. the subsystem g of a PWA system is given by the region defined by (3.2), which can be represented by a DBM 𝐷 (𝑋 𝑘 |g) with entries:

𝑑 (𝑋 𝑘 |g) 𝑖𝑗 = (d (𝑋 𝑘-1 ∩𝑅g) 𝑔 𝑖 𝑔 𝑗 + 𝑎 𝑖𝑔 𝑖 -𝑎 𝑗𝑔 𝑗 , ≤). (3.3)
Given a DBM 𝐷 (𝑋 𝑘-1 ) representing a set 𝑋 𝑘-1 , Algorithm 3.1 computes the image of 𝑋 𝑘-1 w.r.t. a subsystem of a PWA system generated by an MPL system.

In the following is a discussion on how Algorithm 3.1 yields the region defined (3.3), which represents the image of a set 𝑋 𝑘-1 w.r.t. a subsystem g of the PWA system. Note that, the DBM 𝐷 ( X𝑘 ) obtained in step 3 of algorithm 3.1 exactly represents (3.1). Moreover, by definition, the DBM obtained in step 4 (which is the canonical form representation of 𝐷 ( X𝑘 ) ) has the tightest possible bounds. Therefore, the DBM 𝐷 (𝑋 𝑘 |g) , obtained in the step 5 as orthogonal projection of the canonical form over the variables x(𝑘), is the DBM defined by (3.3).

Similarly, given a DBM 𝐷 (𝑋 -𝑘+1 ) representing a set 𝑋 -𝑘+1 , Algorithm 3.2 computes the inverse image of 𝑋 -𝑘+1 w.r.t. a subsystem of a PWA system generated by an MPL system.

The worst-case complexity of Algorithms 3.1 and 3.2 critically depends on computing the canonical form representation of a DBM in ℬ (𝑛+𝑝+1)×(𝑛+𝑝+1) (step 4 for both algorithms), which has cubic complexity w.r.t its dimensions. Thus, the worst-case complexity is

𝒪((𝑛 + 𝑝) 3 ) (ADZKIYA et al., 2015, Sec. 2.3).
Algorithm 3.1: Computing the image of a DBM w.r.t a PWA system generated by an MPL system input : 𝐷 (𝑋 𝑘-1 ) ∈ ℬ (𝑝+1)×(𝑝+1) // a DBM representing a region 𝑋 𝑘-1 ∈ R 𝑝 . : 𝐷 (g) ∈ ℬ (𝑛+𝑝+1)×(𝑛+𝑝+1) // a DBM representing a subsystem of a PWA system generated by a matrix 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 . output: 𝐷 (𝑋 𝑘 |g) ∈ ℬ (𝑛+1)×(𝑛+1) // a DBM representing the image of 𝑋 𝑘-1 w.r.t. the subsystem g of the PWA system.

1 𝐷 (R 𝑛 ) ← 𝑒 ℬ 𝑛+1×𝑛+1 // a DBM representing R 𝑛 2 𝐷 (R 𝑛 ×𝑋 𝑘-1 ) ← 𝐷 (R 𝑛 ) × 𝐷 (𝑋 𝑘-1 ) // compute the cart. product (see section 2.4.2) 3 𝐷 ( X𝑘 ) ← 𝐷 (R 𝑛 ×𝑋 𝑘-1 ) ⊕ ℬ 𝐷 g // compute
𝐷 (𝑋 -𝑘+1 ) ∈ ℬ (𝑛+1)×(𝑛+1) // a DBM representing a region 𝑋 -𝑘+1 ∈ R 𝑛 . : 𝐷 (g) ∈ ℬ (𝑛+𝑝+1)×(𝑛+𝑝+1)
// a DBM representing a subsystem of a PWA system generated by a matrix 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 . output: 𝐷 (𝑋 -𝑘 |g) ∈ ℬ (𝑝+1)×(𝑝+1) // a DBM representing the inverse image of 𝑋 -𝑘+1 w.r.t. the subsystem g of the PWA system.

1 𝐷 (R 𝑝 ) ← 𝑒 ℬ 𝑝+1×𝑝+1 // a DBM representing R 𝑛 2 𝐷 (𝑋 -𝑘+1 ×R 𝑝 ) ← 𝐷 (𝑋 -𝑘+1 ) × 𝐷 (R 𝑛 ) // compute the cart. product (see section 2.4.2)
3 𝐷 ( X-𝑘 ) ← 𝐷 (𝑋 -𝑘+1 ×R 𝑝 ) ⊕ ℬ 𝐷 g // compute the intersection (see remark 2.21). 4 𝐷 ( X-𝑘 ) ← 𝑐𝑓 (𝐷 ( X-𝑘 ) ) // compute the canonical form (see section 2.4.1). 5 𝐷 (𝑋 -𝑘 |g) ← 𝐷 ( X-𝑘 ) ⌈ 𝑥 1 ,...,𝑥𝑛 // compute the orthogonal projection over x(𝑘 -1) (see section 2.4.2). Given a PWA system generated by a matrix 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 , computing the image (or the inverse image) of a union of 𝑞 DBM can be done by computing the image (or the inverse image) of each DBM w.r.t each subsystem of the PWA system. Thus the worst-case complexity depends on the number of DBM (considered to be 𝑞), on the worst-case cardinality of the collection of subsystem, given by 𝑝 𝑛 and on the complexity of computing the image (or the inverse image) of each DBM w.r.t. each subsystem of a PWA system, which is 𝒪((𝑛 + 𝑝) 3 ).

Therefore, the worst-case complexity is 𝒪(𝑞𝑝 𝑛 (𝑛 + 𝑝) 3 ) (ADZKIYA et al., 2015, Sec. 2.3).

Remark 3.3 For autonomous MPL systems, parameter 𝑝 equals 𝑛, and therefore the worstcase complexity of computing the image (or the inverse image) of 𝑞 DBM w.r.t the system is 𝒪(𝑞𝑛 𝑛+3 ). For nonautonomous MPL systems, parameter 𝑝 equals 𝑛 + 𝑚, and therefore the worst-case complexity is 𝒪(𝑞(𝑛 + 𝑚) 𝑛+3 ).

Sections 3.1 and 3.2 introduce forward and backward reachability analysis, respectively. It will be assumed that the set of initial/final conditions 𝑋 0 ⊆ R 𝑛 and the set of control at each event step 𝑈 𝑘 ⊆ R 𝑚 can be represented by a union of 𝑞 0 and 𝑟 𝑘 DBM, respectively. Moreover, the cardinality of the DBM union set representing 𝑋 𝑘 at event step 𝑘 will be noted by 𝑞 𝑘 .

Forward Reachability Analysis

The forward reachability analysis of MPL systems concerns the computation of the set of all states that can be reached from a set of initial states via MPL dynamics, at a particular event step (the reach set) or over a set of consecutive events (reach tube). Formal definitions of reach sets and reach tube are given in the following. Given a set of initial conditions 𝑋 0 ⊆ R 𝑛 , the reach tube can be computed by using the one-step dynamics for autonomous and nonautonomous MPL systems iteratively: at each event step, the PWA system (and corresponding DBM representation) generated by the MPL system is used to compute the successive reach set. Section 3.1.1 presents a procedure to compute, recursively, the reach tube with focus on autonomous MPL systems (ADZKIYA et al., 2014b) and section 3.1.2 presents a generalization of the approach to nonautonomous MPL systems (ADZKIYA et al., 2015).

Forward Reachability Analysis of Autonomous MPL systems

Given an autonomous MPL system and a nonempty set of initial conditions 𝑋 0 , the reach set 𝑋 𝑘 at the event step 𝑘 can be recursively calculated as the image of the reach set 𝑋 𝑘-1 w.r.t the MPL dynamics: Given the set of initial conditions 𝑋 0 , computing the reach tube for 𝑘 ∈ {1, ..., 𝑁 } can be done as follows: first, construct PWA system generated by 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 ; then, for each 𝑘, compute the image of 𝑋 𝑘-1 w.r.t. the PWA system. The reach tube is then obtained by aggregating the reach sets. The worst-case complexity to characterize MPL systems via PWA dynamics is 𝒪(𝑛 𝑛+3 ) (see algorithm 2.5). Furthermore, the worst-case complexity to compute ℐ 𝐴 {𝑋 𝑘-1 }, for each 𝑘 is 𝒪(𝑞 𝑘-1 𝑛 𝑛+3 ) (see remark 3.3). Thus, the overall complexity to compute the reach tube is 𝒪(𝑛 𝑛+3 ∑ 𝑁 𝑘=1 𝑞 𝑘-1 ).

𝑋 𝑘 = ℐ 𝐴 {𝑋 𝑘-1 } = {𝐴 ⊗ x : x ∈ 𝑋 𝑘-1 }. ( 3
Remark 3.6 Given the cardinality 𝑞 𝑘-1 of the DBM union set at event step 𝑘 -1, the worstcase cardinality 𝑞 𝑘 is 𝑞 𝑘-1 𝑛 𝑛 , which corresponds to the maximum possible number of nonempty DBM representing the image of the intersection of each DBM at 𝑘 -1 and each region of the partitioned system. In practice, many regions are empty, and even for nonempty regions, many intersections of DBM and regions are also empty, then the cardinality 𝑞 𝑘 is drastically smaller than its worst-case bound. However, in general, it is not possible to quantify the exact cardinality 𝑞 𝑘 a priori (ADZKIYA et al., 2015, Sec. 5).

In general, in order to compute 𝑋 𝑁 , it is necessary to compute 𝑋 1 , ..., 𝑋 𝑁 -1 . However, there are cases in which the structure of the MPL dynamics leads to savings for the computation of the reach tube. Consider the case in which the state matrix of an autonomous MPL system is irreducible. According to corollary 2.14 there exists 𝑘 0 (𝑋 0 ) = max x∈𝑋 0 𝑘 0 (x) such that, for all 𝑘 ≥ 𝑘 0 (𝑋 0 ), 𝑋 𝑘+𝑐 = 𝜆 𝑐 ⊗ 𝑋 𝑘 , where 𝑐 is the cyclicity of the critical graph of 𝐴 and 𝜆 is the max-plus eigenvalue of 𝐴. In this case, in order do compute 𝑋 𝑁 , 𝑁 > 𝑘 0 (𝑋 0 ), it is only necessary to compute 𝑋 1 , ..., 𝑋 𝑘 0 (𝑋 0 ) . Furthermore, if 𝑋 0 can be represented by a union of finitely many stripes2 , the infinite-horizon reach tube is also a union of finitely many stripes and can be computed explicitly in finite time (ADZKIYA et al., 2014b, Th. 1). The claim follows by noticing that the image of a union of finitely many stripes w.r.t. a PWA system generated by an MPL model is a union of finitely many stripes. Then, since a stripe is a collection of equivalence classes (HEIDERGOTT et al., 2006, Sec 1.4), 𝛼 ⊗ 𝑋 𝑘 = 𝑋 𝑘 for all 𝛼 ∈ R. Thus it follows from corollary 2.14 that 𝑋 𝑘+𝑐 = 𝑋 𝑘 for all 𝑘 ≥ 𝑘 0 (𝑋 0 ), and therefore the infinite-horizon reach tube is

⋃ ∞ 𝑖=0 𝑋 𝑖 = ⋃ 𝑘 0 (𝑋 0 )+𝑐-1 𝑖=0 𝑋 𝑖 .
The reach set for a specific event step 𝑁 can be computed using a one-shot procedure. Given a nonempty set of initial conditions 𝑋 0 , the reach set 𝑋 𝑁 at the event step 𝑁 is given by:

𝑋 𝑁 = ℐ 𝐴 ⊗𝑁 {𝑋 0 } = {𝐴 ⊗𝑁 ⊗ x : x ∈ 𝑋 0 }.
(3.5)

A general procedure for computing 𝑋 𝑁 is: 1) compute 𝐴 ⊗𝑁 ; then, 2) construct the PWA system generated by 𝐴 ⊗𝑁 ; and, 3) compute the image of 𝑋 0 w.r.t. the obtained PWA system. The overall complexity of this procedure is 𝒪([log 2 (𝑁 )]𝑛 3 + 𝑞 0 𝑁 3 ) (see, (ADZKIYA et al., 2014b, Sec. 3.2)), where 𝑞 0 is the cardinality of the DBM union set representing 𝑋 0 .

Forward Reachability Analysis of Nonautonomous MPL systems

A similar procedure for forward reachability analysis of nonautonomous MPL systems can be defined. First, the nonautonomous MPL system is represented as an augmented autonomous MPL system (see equation 2.37); then, given a nonempty set of initial conditions 𝑋 0 and the set of inputs 𝑈 𝑘 for 𝑘 ∈ {1, ..., 𝑁 }, the reach set 𝑋 𝑘 at the event step 𝑘 can be recursively calculated as the image of 𝑋 𝑘-1 × 𝑈 𝑘 w.r.t the augmented MPL system:

𝑋 𝑘 = ℐ 𝐹 {𝑋 𝑘-1 × 𝑈 𝑘 } = {𝐹 ⊗ y : y ∈ 𝑋 𝑘-1 × 𝑈 𝑘 }.
(3.6)

If 𝑋 𝑘-1 can be represented by a union of 𝑞 𝑘-1 DBM and 𝑈 𝑘 can be represented by a union of 𝑟 𝑘 DBM, then 𝑋 𝑘-1 × 𝑈 𝑘 can be represented by a union of q𝑘-1 = 𝑞 𝑘-1 𝑟 𝑘 DBM. Thus, from Corollary 3.2, 𝑋 𝑘 = ℐ 𝐹 {𝑋 𝑘-1 × 𝑈 𝑘 } can be represented by a union of 𝑞 𝑘 DBM. By induction, it can be concluded that if 𝑋 0 can be represented by a union of 𝑞 0 DBM and 𝑈 𝑘 can be represented by a union of 𝑟 𝑘 DBM for each 𝑘 ∈ N, then 𝑋 𝑘 can be represented by a union of 𝑞 𝑘 DBM, for each 𝑘 ∈ N.

Given a nonautonomous MPL system, the set of initial conditions 𝑋 0 and set of inputs 𝑈 𝑘 for each 𝑘 ∈ {1, ..., 𝑁 }, computing the reach tube for 𝑘 ∈ {1, ..., 𝑁 } can be done as follows: first, construct the PWA system generated by 𝐹 ∈ R

𝑛×(𝑛+𝑚) 𝑚𝑎𝑥

; then, for each 𝑘 ∈ {1, ..., 𝑁 }, compute the image of 𝑋 𝑘-1 ×𝑈 𝑘 w.r.t. PWA system. The worst-case complexity to characterize the MPL system via PWA dynamics is 𝒪((𝑛 + 𝑚) 𝑛+3 (see algorithm 2.5).

Furthermore, the worst-case complexity to compute ℐ 𝐹 {𝑋 𝑘-1 × 𝑈 𝑘 }, for each 𝑘 ∈ {1, ..., 𝑁 } is 𝒪(q 𝑘-1 (𝑛 + 𝑚) 𝑛+3 ) (see remark 3.3). Thus, the overall complexity to compute the reach tube is 𝒪((𝑛 + 𝑚) 𝑛+3 ∑ 𝑁 𝑘=1 q𝑘-1 ). For nonautonomous MPL systems, the reach set for a specific event step 𝑁 can also be computed using a one-shot procedure. Given a nonempty set of initial conditions 𝑋 0 , the reach set 𝑋 𝑁 at the event step 𝑁 is given by:

𝑋 𝑁 = (𝐴 ⊗𝑁 , 𝐴 ⊗(𝑁 -1) ⊗ 𝐵, ..., 𝐵) ⊗ (𝑋 0 × 𝑈 1 × ... × 𝑈 𝑁 ).
(3.7)

Given the matrices 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 and 𝐵 ∈ R 𝑛×𝑚 𝑚𝑎𝑥 , a set of initial conditions 𝑋 0 (represented by a union of 𝑞 0 DBM) and a sequence of input sets 𝑈 1 , ..., 𝑈 𝑁 , a general procedure for computing 𝑋 𝑁 is given by: 1) generate the matrix (𝐴 ⊗𝑁 , 𝐴 ⊗(𝑁 -1) ⊗ 𝐵, ..., 𝐵); then, 2)Construct the PWA system generated by this matrix; and, 3) compute the image of 𝑋 0 × 𝑈 1 × ... × 𝑈 𝑁 w.r.t the obtained PWA system. The complexity of steps 1, 2 and 3 is, respectively, 𝒪(𝑁 𝑛 3 + 𝑁 𝑛 2 𝑚), 𝒪((𝑛 + 𝑚𝑁 ) 𝑛+3 ) and 𝒪(𝑞 0 (𝑛 + 𝑚𝑁 ) 𝑛+3 ). Note that , this approach is not tractable for problems over long event horizons, since the maximum number of regions of the PWA system is (𝑛 + 𝑚𝑁 ) 𝑛 and grows polynomially w.r.t. the event horizon 𝑁 (ADZKIYA et al., 2015, Sec. 3.2).

Backward Reachability Analysis

The backward reachability analysis of MPL systems concerns the computation of the set of all states that leads to a set of initial states via MPL dynamics, at a particular event step (backward reach set) or over a set of consecutive events (backward reach tube). Similar to the forward reachability instance, given a set of final conditions 𝑋 0 ⊆ R 𝑛 , the reach tube can be computed by using the one-step dynamics for autonomous and nonautonomous MPL systems iteratively. Section 3.2.1 presents procedure to compute, recursively, the backward reach tube with focus on autonomous MPL systems (ADZKIYA et al., 2014a) and section 3.2.2 presents an generalization of the approach to nonautonomous MPL systems (ADZKIYA et al., 2015).

Backward Reachability Analysis of Autonomous MPL systems

Given a autonomous MPL system and a nonempty set of final conditions 𝑋 0 , the backward reach set 𝑋 -𝑘 can be recursively calculated as the inverse image of the reach set 𝑋 -𝑘+1 w.r.t the MPL dynamics:

𝑋 -𝑘 = ℐ -1 𝐴 {𝑋 -𝑘+1 } = {x ∈ R 𝑛 : 𝐴 ⊗ x ∈ 𝑋 -𝑘+1 }. (3.8)
From Corollary 3.2 it can be shown that if 𝑋 0 can be represented by a union of 𝑞 0 DBM, then 𝑋 -𝑘 can be represented by a union of 𝑞 -𝑘 DBM, for each 𝑘 ∈ N.

Given the set of final conditions 𝑋 0 , computing the backward reach tube for 𝑘 ∈ {1, ..., 𝑁 } can be done as follows: first, construct the PWA system generated by 𝐴; then, for each 𝑘 ∈ N, compute the inverse image of 𝑋 𝑘-1 w.r.t. the PWA system. The worstcase complexity to compute

ℐ -1 𝐴 {𝑋 -𝑘+1 }, for each 𝑘 ∈ N is 𝒪(𝑞 -𝑘+1 𝑛 𝑛+3
). Thus, the overall complexity is 𝒪(𝑛 𝑛+3 ∑ 𝑁 𝑘=1 𝑞 -𝑘+1 ). Similarly to the forward reachability instance, there are cases in which the infinitehorizon backward reach tube can be explicitly computed. If the MPL system is irreducible and 𝑋 0 is not intersected with the complete periodic behavior3 , i.e., 𝑋 0 ∩ 𝐸(𝐴 ⊗𝑐 ) = ∅, there exists a finite 𝑘 𝜑 such that 𝑋 -𝑘 is empty for all 𝑘 ≥ 𝑘 𝜑 (ADZKIYA et al., 2014a, Prop. 9). Note that, if 𝑋 0 ∩𝐸(𝐴 ⊗𝑐 ) = ∅, all x ∈ 𝑋 0 belongs to the transient behavior of the system, and therefore the minimum length of the transient part of 𝑋 0 is positive, i.e. 𝑚𝑖𝑛 x∈𝑋 0 𝑘 0 (x) > 0. Furthermore, if the backward reach set 𝑋 -𝑘 is not empty, all x ∈ 𝑋 -𝑘 is also in the transient behavior of the system and the minimum length of the transient part of 𝑋 -𝑘 is increasing with 𝑘 as follows: 𝑚𝑖𝑛 x∈𝑋 -𝑘 𝑘 0 (x) = 𝑘 + 𝑚𝑖𝑛 x∈𝑋 0 𝑘 0 (x). However, the maximum length of the transient part of 𝑋 -𝑘 is bounded by min x∈𝑋 -𝑘 𝑘 0 (x) ≤ max x∈𝑋 -𝑘 𝑘 0 (x) ≤ 𝐾 0 (𝐴) (see Remark 2.15) whenever 𝑋 -𝑘 is not empty. Therefore, 𝑋 -𝑘 is empty if 𝑘 > 𝐾 0 (𝐴), which would imply min x∈𝑋 -𝑘 𝑘 0 (x) > 𝐾 0 (𝐴).

The set of all states that can lead to a given set of final positions 𝑋 0 in 𝑁 event steps (i.e., the backward reach set 𝑋 -𝑁 ) can be computed using a one-shot procedure. Given a nonempty set of final conditions 𝑋 0 , the backward reach set 𝑋 -𝑁 is given by:

𝑋 -𝑁 = ℐ -1 𝐴 ⊗𝑁 {𝑋 0 } = {x ∈ R 𝑛 : 𝐴 ⊗𝑁 ⊗ x ∈ 𝑋 0 }.
(3.9)

A general procedure for computing 𝑋 -𝑁 is: 1) compute 𝐴 ⊗𝑁 ; then, 2) construct the PWA system generated by 𝐴 ⊗𝑁 ; and, 3) compute the inverse image of 𝑋 0 w.r.t. the obtained PWA system. the overall complexity of the one-shot computation of the backward reach set is the same as the forward instance for autonomous uMPL systems.

Backward Reachability Analysis of Nonautonomous MPL systems

To proceed with the backward reachability analysis of nonautonomous MPL systems, the system is first represented as an equivalent augmented autonomous MPL system (see equation (2.37)); then, given a set of final conditions 𝑋 0 and the set of inputs 𝑈 -𝑘 for each 𝑘 ∈ N, the backward reach set 𝑋 -𝑘 can be recursively calculated as the inverse image of 𝑋 -𝑘+1 : From Corollary 5.2, it can be shown that 𝑋 -𝑘 can be represented by a union of finitely many DBM. The worst-case complexity to compute ℐ -1 𝐹 {𝑋 -𝑘+1 } is 𝒪(q -𝑘+1 (𝑛 + 𝑚) 𝑛+3 ), where: q-𝑘+1 = 𝑞 -𝑘+1 𝑟 -𝑘+1 and 𝑞 -𝑘+1 and 𝑟 -𝑘+1 are, respectively, the cardinality of the DBM union set representing 𝑋 -𝑘+1 and 𝑈 -𝑘+1 . Thus, the overall complexity to compute 𝑋 -𝑁 is 𝒪((𝑛 + 𝑚) 𝑛+3 ∑ 𝑁 𝑘=1 q-𝑘+1 ). In the following it is presented a one-shot procedure for computing the backward reach set 𝑋 -𝑁 , for a particular index 𝑁 . Given a nonempty set of final conditions 𝑋 0 , the set of all states that are able to enter 𝑋 0 in 𝑁 event steps is given by:

𝑋 -𝑘 = ℐ -1 𝐹 {𝑋 -𝑘+1 } = {x ∈ R 𝑛 : ∃u ∈ 𝑈 -𝑘+1 : 𝐹 ⊗ (x 𝑇 u 𝑇 ) 𝑇 ∈ 𝑋 -𝑘+1 }. ( 3
𝑋 -𝑁 = {x(-𝑁 ) ∈ R 𝑛 : ∃u(-𝑁 + 1) ∈ 𝑈 -𝑁 +1 , ..., u(0) ∈ 𝑈 0 : (𝐴 ⊗𝑁 , 𝐴 ⊗(𝑁 -1) ⊗ 𝐵, ..., 𝐵) ⊗ (x(-𝑁 ) 𝑇 u(-𝑁 + 1) 𝑇 u(0) 𝑇 ) 𝑇 ∈ 𝑋 0 }. (3.11)
Given the matrices 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 and 𝐵 ∈ R 𝑛×𝑚 𝑚𝑎𝑥 , a set of final positions 𝑋 0 and a sequence of input sets 𝑈 -𝑁 +1 , ..., 𝑈 0 , a general procedure for computing 𝑋 -𝑁 is given by: 1) generate the matrix [𝐴 ⊗𝑁 , 𝐴 ⊗(𝑁 -1) ⊗ 𝐵, ..., 𝐵]; then, 2) Construct the PWA system generated by this matrix; 3) compute the inverse image of 𝑋 0 w.r.t the obtained PWA system; 4) intersect the inverse image with R 𝑛 × 𝑈 1 × ... × 𝑈 𝑁 ; and finally, 5) project the intersection over the state variables. The complexity of this procedure is the same as the one-shot procedure for the forward case presented in section 3.1.2.

Example 3.9 Consider the autonomous MPL system given by:

x(𝑘) = ⎛ ⎝ 8 5 4 3 ⎞ ⎠ ⊗ x(𝑘 -1).
In example 2.32 this system was represented as a collection of DBM D (PWA) = {𝐷 (1,1) , 𝐷 (1,2) , 𝐷 (2,2) }.

Let us now compute the reach sets 𝑋 𝑘 for 𝑘 ∈ {1, 2, 3} and the backward reach sets

𝑋 -𝑘 for 𝑘 ∈ {1, 2} given 𝑋 0 = {x ∈ R 2 𝑚𝑎𝑥 : 0 ≤ 𝑥 1 ≤ 2, -4 ≤ 𝑥 2 ≤ 6}.
Note that the set 𝑋 0 can be represented by the following DBM4 :

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 0 ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (4, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (2, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (6, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2
To compute the reach set 𝑋 1 = ℐ 𝐴 {𝑋 0 }, we must compute the image of 𝑋 0 w.r.t each component g of the PWA system. According to algorithm 3.1, the image of 𝐷 (𝑋 0 ) w.r.t. 𝐷 (1,1) can be computed as follows: first, we compute the Cartesian product of 𝐷 (R 2 ) and 𝐷 (𝑋 0 ) :

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (R 2 ×𝑋 0 ) = 𝐷 (R 2 ) × 𝐷 (𝑋 0 ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (4, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 (2, ≤) 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑥 1 (6, ≤) 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑥 2
Then, we compute the intersection of 𝐷 (R 2 ×𝑋 0 ) and 𝐷 (1,1) :

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (R 2 ×𝑋 0 ) ⊕ ℬ 𝐷 (1,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (4, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (8, ≤) 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (4, ≤) 𝜀 ℬ 𝑥 ′ 2 (2, ≤) (-8, ≤) (-4, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (6, ≤) 𝜀 ℬ 𝜀 ℬ (1, ≤) 𝑒 ℬ 𝑥 2
Next, we compute the canonical form representation of the intersection:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑐𝑓 (𝐷 (R 2 ×𝑋 0 ) ⊕ ℬ 𝐷 (1,1) ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-8, ≤) (-4, ≤) 𝑒 ℬ (4, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (10, ≤) 𝑒 ℬ (4, ≤) (8, ≤) (14, ≤) 𝑥 ′ 1 (6, ≤) (-4, ≤) 𝑒 ℬ (4, ≤) (10, ≤) 𝑥 ′ 2 (2, ≤) (-8, ≤) (-4, ≤) 𝑒 ℬ (6, ≤) 𝑥 1 (3, ≤) (-7, ≤) (-3, ≤) (1, ≤) 𝑒 ℬ 𝑥 2
Finally, we compute the orthogonal projection of the canonical form over the variables

𝑥 ′ 1 and 𝑥 ′ 2 : 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝐷 (𝑋 1 | g=(1,1) ) = 𝑐𝑓 (𝐷 (R 2 ×𝑋 0 ) ⊕ ℬ 𝐷 (1,1) )⌈ x ′ = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-8, ≤) (-4, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (10, ≤) 𝑒 ℬ (4, ≤) 𝑥 ′ 1 (6, ≤) (-4, ≤) 𝑒 ℬ 𝑥 ′ 2 Therefore, image of 𝑋 0 w.r.t the component g = (1, 1) is 𝑋 1 | g=(1,1) = {x ′ ∈ R 2 : 8 ≤ 𝑥 ′ 1 ≤ 10, 4 ≤ 𝑥 ′ 2 ≤ 6, 𝑥 ′ 1 -𝑥 ′ 2 = 4}.
Applying the same procedure for 𝐷 (1,2) and 𝐷 (2,2) we obtain:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝐷 (𝑋 1 | g=(1,2) ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-8, ≤) (-4, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (10, ≤) 𝑒 ℬ (4, ≤) 𝑥 ′ 1 (8, ≤) (-2, ≤) 𝑒 ℬ 𝑥 ′ 2 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝐷 (𝑋 1 | g=(2,2) ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-8, ≤) (-6, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (11, ≤) 𝑒 ℬ (2, ≤) 𝑥 ′ 1 (9, ≤) (-2, ≤) 𝑒 ℬ 𝑥 ′ Thus, 𝑋 1 | g=(1,2) = {x ′ ∈ R 2 : 8 ≤ 𝑥 ′ 1 ≤ 10, 4 ≤ 𝑥 ′ 2 ≤ 8, 2 ≤ 𝑥 ′ 1 -𝑥 ′ 2 ≤ 4} and 𝑋 1 | g=(2,2) = {x ′ ∈ R 2 : 8 ≤ 𝑥 ′ 1 ≤ 11, 6 ≤ 𝑥 ′ 2 ≤ 9, 𝑥 ′ 1 -𝑥 ′ 2 = 2}. The reach set 𝑋 1 is the union of the images of 𝑋 0 w.r.t. each component of PWA system, i.e., 𝑋 1 = 𝑋 1 | g=(1,1) ∪ 𝑋 1 | g=(1,2) ∪ 𝑋 1 | g=(2,2) = {x ′ ∈ R 2 : 8 ≤ 𝑥 ′ 1 ≤ 10, 4 ≤ 𝑥 ′ 2 ≤ 8, 2 ≤ 𝑥 ′ 1 -𝑥 ′ 2 ≤ 4} ∪ {x ′ ∈ R 2 : 8 ≤ 𝑥 ′ 1 ≤ 11, 6 ≤ 𝑥 ′ 2 ≤ 9, 𝑥 ′ 1 -𝑥 ′ 2 = 2}. Note that 𝐷 (𝑋 1 | g=(1,1) ) = 𝐷 (𝑋 1 | g=(1,1) ) ⊕ ℬ 𝐷 (𝑋 1 | g=(1,2) ) , thus 𝐷 (𝑋 1 | g=(1,1) ) ∪ 𝐷 (𝑋 1 | g=(1,2) ) = 𝐷 (𝑋 1 | g=(1,2) ) (see remark 2.22). Therefore the reach set 𝑋 1 is represented by the collection of DBM given by D (𝑋 1 ) = {𝐷 (𝑋 1 | g=(1,2) ) , 𝐷 (𝑋 1 | g=(2,2) ) }.
The reach set 𝑋 2 is obtained by computing the image of each DBM in D (𝑋 1 ) w.r.t each DBM in D (PWA) = {𝐷 (1,1) , 𝐷 (1,2) , 𝐷 (2,2) }, which yields

𝑋 2 = {x ′ ∈ R 2 : 16 ≤ 𝑥 ′ 1 ≤ 19, 12 ≤ 𝑥 ′ 2 ≤ 15, 𝑥 ′ 1 -𝑥 ′ 2 = 4}
. Moreover, we observe that the system matrix has eigenvalue 𝜆 = 8 and cyclicity 𝑐 = 1, and for 𝑘 ≥ 2, we obtain 𝑋 𝑘+1 = 8 ⊗ 𝑋 𝑘 . Thus, the reach set 𝑋 3 is simply obtained by computing 8 ⊗ 𝑋 2 , which yields

𝑋 3 = {x ′ ∈ R 2 : 24 ≤ 𝑥 ′ 1 ≤ 27, 20 ≤ 𝑥 ′ 2 ≤ 23, 𝑥 ′ 1 -𝑥 ′ 2 = 4}. The reach tube for 𝑘 ∈ {1, 2, 3} is shown in Figure 6.
To compute the backward reach set 𝑋 -1 = ℐ -1 𝐴 {𝑋 0 }, we must to compute the inverse image of 𝑋 0 w.r.t each component g of the PWA system. According to algorithm 3.2, the inverse image of 𝐷 (𝑋 0 ) w.r.t. 𝐷 (1,1) can be computed as follows: first, we compute the cartesian product of 𝐷 (𝑋 0 ) and 𝐷 (R 2 ) :

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (𝑋 0 ×R 2 ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (4, ≤) 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (2, ≤) 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 1 (6, ≤) 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑥 1 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑥 2
Then, we compute the intersection of 𝐷 (𝑋 0 ×R 2 ) and 𝐷 (1,1) :

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (𝑋 0 ×R 2 ) ⊕ ℬ 𝐷 (1,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (4, ≤) 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (2, ≤) 𝑒 ℬ 𝜀 ℬ (8, ≤) 𝜀 ℬ 𝑥 ′ 1 (6, ≤) 𝜀 ℬ 𝑒 ℬ (4, ≤) 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-8, ≤) (-4, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ (1, ≤) 𝑒 ℬ 𝑥 2
Next, we compute the canonical form representation of the intersection: x 1

x 2 R ( 1 , 1 ) R ( 2 , 2 ) R ( 2 , 1 ) X 0 X 1 X 2 X 3 X -1 X -2
Figure 6 -reach tube for 𝑘 = {1, 2, 3} and backward reach tube for 𝑘 = {1, 2}.

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑐𝑓 (𝐷 (𝑋 0 ×R 2 ) ⊕ ℬ 𝐷 (1,1) ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (4, ≤) (8, ≤) 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (2, ≤) 𝑒 ℬ (4, ≤) (8, ≤) 𝜀 ℬ 𝑥 ′ 1 (-2, ≤) (-4, ≤) 𝑒 ℬ (4, ≤) 𝜀 ℬ 𝑥 ′ 2 (-6, ≤) (-8, ≤) (-4, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (-5, ≤) (-7, ≤) (-3, ≤) (1, ≤) 𝑒 ℬ 𝑥 2
Finally, we compute the orthogonal projection of the canonical form over the variables 𝑥 1 and 𝑥 2 :

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 -1 | g=(1,1) ) = 𝑐𝑓 (𝐷 (𝑋 0 ×R 2 ) ⊕ ℬ 𝐷 (1,1) )⌈ x = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (8, ≤) 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (-6, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (-5, ≤) (1, ≤) 𝑒 ℬ 𝑥 2 Therefore, inverse image of 𝑋 0 w.r.t the component g = (1, 1) is 𝑋 -1 | g=(1,1) = {x ∈ R 2 : -8 ≤ 𝑥 1 ≤ -6, 𝑥 2 ≤ -5, 𝑥 1 -𝑥 2 ≥ -1}.
Applying the same procedure for 𝐷 (1,2) and 𝐷 (2,2) we obtain:

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 -1 | g=(1,2) ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (8, ≤) (7, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (-6, ≤) 𝑒 ℬ (-1, ≤) 𝑥 1 (-3, ≤) (3, ≤) 𝑒 ℬ 𝑥 2 𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 -1 | g=(2,2) ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ (5, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (-6, ≤) 𝑒 ℬ (-3, ≤) 𝑥 1 (-3, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2 Thus, 𝑋 -1 | g=(1,2) = {x ∈ R 2 : -8 ≤ 𝑥 1 ≤ -6, -7 ≤ 𝑥 2 ≤ -3, -3 ≤ 𝑥 1 -𝑥 2 ≤ -1} and 𝑋 -1 | g=(2,2) = {x ∈ R 2 : 𝑥 1 ≤ -6, -5 ≤ 𝑥 2 ≤ -3, 𝑥 1 -𝑥 2 ≤ -3}.
The backward reach set 𝑋 -1 is the union of the inverse images of 𝑋 0 w.r.t. each component of PWA system, i.e.,

𝑋 -1 = 𝑋 -1 | g=(1,1) ∪ 𝑋 -1 | g=(1,2) ∪ 𝑋 -1 | g=(2,2) . Observe that 𝑋 -1 is represented by the collection of DBM given by D (𝑋 -1 ) = {𝐷 (𝑋 -1 | g=(1,1) ) , 𝐷 (𝑋 -1 | g=(1,2) ) , 𝐷 (𝑋 -1 | g=(2,2) ) }.
The backward reach set 𝑋 -2 is obtained by computing the inverse image of each DBM in

D (𝑋 -1 ) w.r.t each DBM in D (PWA) = {𝐷 (1,1) , 𝐷 (1,2) , 𝐷 (2,2) }, which yields 𝑋 -2 = {x ∈ R 2 : -16 ≤ 𝑥 1 ≤ -14, 𝑥 2 ≤ -13, 𝑥 1 -𝑥 2 ≥ -1} ∪ {x ∈ R 2 : -16 ≤ 𝑥 1 ≤ -14, -15 ≤ 𝑥 2 ≤ -11, -3 ≤ 𝑥 1 -𝑥 2 ≤ -1} ∪ {x ∈ R 2 : 𝑥 1 ≤ -14, -13 ≤ 𝑥 2 ≤ -11, 𝑥 1 -𝑥 2 ≤ -3}.

Uncertain Max-Plus Linear Systems

As presented in section 2.3, the MPL systems matrices are associated to system delays and transport times. In practice, these parameters may be subjected to noise and disturbances, which should be taken into account in order to avoid tracking error or closed loop instability (van den Boom;[START_REF] Van Den Boom | Model predictive control for perturbed max-plus-linear systems[END_REF]. In general, these perturbations are max-plusmultiplicative and appear as uncertainties in the max-plus model parameters. The Stochastic Max-Plus Linear (SMPL) systems are defined as MPL systems where the matrices entries are characterized by random variables [START_REF] Olsder | Discrete event systems with stochastic processing times[END_REF][START_REF] Resing | Asymptotic behavior of random discrete event systems[END_REF]HEIDER-GOTT, 2006;van den Boom;[START_REF] Van Den Boom | Model predictive control for perturbed max-plus-linear systems[END_REF][START_REF] Diloreto | Duality between invariant spaces for max-plus linear discrete event systems[END_REF]HARDOUIN et al., 2010). In this work, although the stochastic systems are not considered 1 , we are interested in systems where the uncertain parameters can vary over a known interval. Formally, we define the uncertain Max-Plus Linear (uMPL) systems as nondeterministic MPL systems where, at each event step, the entries of the system matrices can, independently, take an arbitrary value within an real interval.

The autonomous model of an uMPL system is given by: Example 4.2 In the public transport system of example 2.8, the travel times are assumed to be fixed. Now, let us consider that the travel times are in a real interval as indicated on the graph of figure 7.

x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1), ( 4
The system can be described by the following uMPL system:

x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1), where 𝐴(𝑘) ∈ ⎛ ⎝ [2, 3] [5, 6] [3, 4] [3, 4] ⎞ ⎠ .
The nonautonomous model of an uMPL system is given by:

x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1) ⊕ 𝐵(𝑘) ⊗ u(𝑘), (4.2)
1 The probabilistic aspects of the uncertainties are not considered. (4.3)

Interval Analysis

This section introduces some basic concepts of Interval Analysis and its applications to the uMPL systems (MOORE; BIERBAUM, 1979;[START_REF] Litvinov | Idempotent interval analysis and optimization problems[END_REF][START_REF] Litvinov | Idempotent interval analysis and optimization problems[END_REF][START_REF] Gning | Particle filtering combined with interval methods for tracking applications[END_REF][START_REF] Brunsch | Duality and interval analysis over idempotent semirings[END_REF][START_REF] Hardouin | Interval systems over idempotent semiring[END_REF][START_REF] Lhommeau | Interval Analysis in Dioid : Application to Robust Open Loop Control for Timed Event Graphs[END_REF].

An interval is defined as a closed set of real numbers (MOORE; BIERBAUM, 1979):

[x] = [𝑥, 𝑥] = {𝑥 ∈ R : 𝑥 ≤ 𝑥 ≤ 𝑥}.
(4.4)

A degenerate interval is an interval consisting of a single real number. Thus, an interval [x] is degenerate if 𝑥 = 𝑥.

Remark 4.3 By convention a degenerate interval [𝑥, 𝑥] is identified with the real number 𝑥.

Remark 4.4 The notation [X] will be used for matrices of intervals, i.e., matrices whose entries are intervals:

[X] = [𝑋, 𝑋] = ([x 𝑖𝑗 ]) 1≤𝑖≤𝑛 1≤𝑗≤𝑝 . (4.5)
The intersection and union operations can be applied to intervals (MOORE; BIER-BAUM, 1979). The intersection of two intervals [x] and [y] is always an interval, defined by:

[x] ∩ [y] = [max{𝑥, 𝑦}, min{𝑥, 𝑦}]. (4.6)
Thus, the intersection is empty if either 𝑥 > 𝑦 or 𝑥 < 𝑦. On the other hand, the union of two intervals is not, in general, an interval. However, if the intervals have nonempty intersection, their union is again an interval defined by:

[x] ∩ [y] = [max{0, 2}, min{4, 5}] = [2, 4], [x] ∩ [z] = [max{0, 5}, min{4, 7}] = [5, 4] = ∅, [y] ∩ [z] = [max{2, 5}, min{5, 7}] = [5, 5]. Since [x] ∩ [y] and [y] ∩ [z]
are not empty we have that:

[x] ∪ [y] = [min{0, 2}, max{4, 5}] = [0, 5], [x] ∪ [z] = [0, 4] ∪ [5, 7], [y] ∪ [z] = [min{2, 5}, max{5, 7}] = [2, 7].
Note that the intersection of [x] and [z] is empty, and therefore [x] ∪ [z] is not an interval.

The binary operations + and -can be extended to intervals (MOORE; BIERBAUM, 1979):

[x] + [y] = {𝑥 + 𝑦 : 𝑥 ∈ [x] , 𝑦 ∈ [y]} = [𝑥 + 𝑦, 𝑥 + 𝑦], (4.8) [x] -[y] = {𝑥 -𝑦 : 𝑥 ∈ [x] , 𝑦 ∈ [y]} = [𝑥 -𝑦, 𝑥 -𝑦]. (4.9) Example 4.6 Let [x] = [4, 8] and [y] = [3, 5]. Then [x] + [y] = [4 + 3, 8 + 5] = [7, 13], [x] -[y] = [4 -5, 8 -3] = [-1, 5].
We can also extend the max-plus operations to intervals [START_REF] Brunsch | Duality and interval analysis over idempotent semirings[END_REF][START_REF] Hardouin | Interval systems over idempotent semiring[END_REF][START_REF] Lhommeau | Interval Analysis in Dioid : Application to Robust Open Loop Control for Timed Event Graphs[END_REF]:

[x] ⊕ [y] = {𝑥 ⊕ 𝑦 : 𝑥 ∈ [x] , 𝑦 ∈ [y]} = [𝑥 ⊕ 𝑦, 𝑥 ⊕ 𝑦],
(4.10)

[x] ⊗ [y] = {𝑥 ⊗ 𝑦 : 𝑥 ∈ [x] , 𝑦 ∈ [y]} = [𝑥 ⊗ 𝑦, 𝑥 ⊗ 𝑦]. (4.11) Moreover, if [A],
[B] and [C] are 𝑛×𝑝, 𝑛×𝑝 and 𝑝×𝑞 matrices of intervals, respectively, we have that:

([A] ⊕ [B]) 𝑖𝑗 = [a 𝑖𝑗 ] ⊕ [b 𝑖𝑗 ] = [𝑎 𝑖𝑗 ⊕ 𝑏 𝑖𝑗 , 𝑎 𝑖𝑗 ⊕ 𝑏 𝑖𝑗 ],
(4.12)

([A] ⊗ [C]) 𝑖𝑗 = 𝑝 ⨁ 𝑘=1 ([a 𝑖𝑘 ] ⊗ [c 𝑘𝑗 ]) = 𝑝 ⨁ 𝑘=1 { [𝑎 𝑖𝑘 ⊗ 𝑐 𝑘𝑗 , 𝑎 𝑖𝑘 ⊗ 𝑐 𝑘𝑗 ] } = [ 𝑝 ⨁ 𝑘=1 { 𝑎 𝑖𝑘 ⊗ 𝑐 𝑘𝑗 } , 𝑝 ⨁ 𝑘=1 {𝑎 𝑖𝑘 ⊗ 𝑐 𝑘𝑗 } ] , (4.13)
or, equivalently:

[A] ⊕ [B] = [𝐴 ⊕ 𝐵, 𝐴 ⊕ 𝐵], (4.14) [A] ⊗ [C] = [𝐴 ⊗ 𝐶, 𝐴 ⊗ 𝐶]. (4.15)
Thus, the 𝑘 𝑡ℎ power of a matrix of intervals is given by:

[A] ⊗𝑘 = [𝐴 ⊗𝑘 , 𝐴 ⊗𝑘 ]. ( 4

.16)

A partial order for intervals in R 𝑚𝑎𝑥 can be defined as: Moreover, the max-plus sum can be extended to a finitely many number of intervals:

𝑛 ⨁ 𝑖=1 [x] 𝑖 = { 𝑛 ⨁ 𝑖=1 𝑥 𝑖 : 𝑥 𝑖 ∈ [x 𝑖 ] } = [ 𝑛 ⨁ 𝑖=1 𝑥 𝑖 , 𝑛 ⨁ 𝑖=1 𝑥 𝑖 ] . (4.19)
Consider now a generic uMPL system given by:

z(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1), 𝐴(𝑘) ∈ [A] (4.20)
where z(𝑘) ∈ R 𝑛 𝑚𝑎𝑥 and x(𝑘 -1) ∈ R 𝑝 𝑚𝑎𝑥 . The 𝑖-th equation of (4.20) can be expressed as:

𝑧 𝑖 (𝑘) = 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 (𝑘) ⊗ 𝑥 𝑗 (𝑘 -1)}, 𝑎 𝑖𝑗 (𝑘) ∈ [a 𝑖𝑗 ] .
(4.21)

Therefore, given x(𝑘 -1), and by using equations (4.11) and (4.19), 𝑧 𝑖 (𝑘) is in the interval defined by:

[z 𝑖 ] (𝑘) = 𝑝 ⨁ 𝑗=1 {[a 𝑖𝑗 ] (𝑘) ⊗ 𝑥 𝑗 (𝑘 -1)} = ⎡ ⎣ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)}, 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)} ⎤ ⎦ . (4.22)
Example 4.7 Consider the following uMPL system:

x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1), 𝐴(𝑘) ∈ [A] ,
where

[A] = ⎛ ⎝ [2, 7] [4, 5] [4, 6] [2, 6] ⎞ ⎠ . Given x(0) = (0 1) 𝑇 , then x(1) ∈ [x] (1) = ([x 1 ] (1) [x 2 ] (1)) 𝑇 , where: ⎛ ⎝ [x 1 ] (1) [x 1 ] (2) ⎞ ⎠ = ⎛ ⎝ [(2 ⊗ 0) ⊕ (4 ⊗ 1), (7 ⊗ 0) ⊕ (5 ⊗ 1)] [(4 ⊗ 0) ⊕ (2 ⊗ 1), (6 ⊗ 0) ⊕ (6 ⊗ 1)] ⎞ ⎠ = ⎛ ⎝ [5, 7] [4, 7] ⎞ ⎠ .

Partitioned Uncertain MPL systems

This section presents the main contribution of this work. We aim to use the DBM data structure for the reachability analysis of uMPL systems. In Section 2.5.1 we have seen that every MPL system can be expressed as a PWA system and Chapter 3 shows how DBM representation of PWA systems is efficient for reachability analysis. Seeking for generality, we observe that the reachability analysis of an MPL system through the DBM approach is possible because each affine system (2.55) and its corresponding active state space region (2.54) can be independently represented by one DBM. In the following, we propose a partition of the state space of uMPL systems that satisfies this property. On this purpose let us express interval (4.22) as:

𝑧 𝑖 ∈ ⎡ ⎣ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 }, 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 } ⎤ ⎦ ⇐⇒ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 } ⪯ 𝑧 𝑖 ⪯ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 } (4.23)
Observe that ⨁ 𝑝 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 } ⪯ 𝑧 𝑖 can be alternatively expressed as

⋂ 𝑝
𝑗=1 {𝑥 𝑗 (𝑘 -1) -𝑧 𝑖 (𝑘) ≤ -𝑎 𝑖𝑗 }, and therefore the lower bound of (4.23) can be depicted in a single DBM. On the other hand, the term

𝑧 𝑖 ⪯ ⨁ 𝑝 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 } is equivalent to ⋃ 𝑝 𝑗=1 {𝑧 𝑖 (𝑘) -𝑥 𝑗 (𝑘 -1) ≤ 𝑎 𝑖𝑗 }.
Note that, each term of this union can be represented by a DBM. However, in general, the union of DBM is not a DBM. Therefore, the upper bound of (4.23) cannot be depicted in a single DBM. The main contribution of this work is to propose a partition of the state space in which (4.23) can be expressed as a DBM suitable form.

Following the later arguments, we must search for regions in which the upper bound of (4.23) can be expressed as a DBM. Then, let us consider the problem of finding the region where [z 𝑖 ] can be expressed as: 𝑛}, (4.24) where g = (𝑔 1 , • • • , 𝑔 𝑛 ) ∈ {1, ..., 𝑝} 𝑛 has the same interpretation as in (2.54).

[z 𝑖 ] = ⎡ ⎣ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 }, 𝑎 𝑖𝑔 𝑖 ⊗ 𝑥 𝑔 𝑖 ⎤ ⎦ ∀𝑖 ∈ {1, ...,
This problem corresponds to find a region where the following equality holds:

⎡ ⎣ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 }, 𝑎 𝑖𝑔 𝑖 ⊗ 𝑥 𝑔 𝑖 ⎤ ⎦ = ⎡ ⎣ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 }, 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 } ⎤ ⎦ ∀𝑖 ∈ {1, ...,
𝑎 𝑖𝑔 𝑖 ⊗ 𝑥 𝑔 𝑖 ⪰ 𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 ∀𝑖, 𝑗, (4.27)
which is equivalent to:

𝑥 𝑗 -𝑥 𝑔 𝑖 ≤ 𝑎 𝑖𝑔 𝑖 -𝑎 𝑖𝑗 ∀𝑖, 𝑗. (4.28)
The region corresponding to (4.28) is given by:

𝑅 𝑢 g = 𝑛 ⋂ 𝑖=1 𝑝 ⋂ 𝑗=1 𝑗̸ =𝑔 𝑖 { x ∈ R 𝑝 𝑚𝑎𝑥 : 𝑥 𝑗 -𝑥 𝑔 𝑖 ≤ 𝑎 𝑖𝑔 𝑖 -𝑎 𝑖𝑗 } .
(4.29)

Region (4.29) defines a partition for uMPL systems. Moreover, if x ∈ 𝑅 𝑢 g then 𝑧 𝑖 (𝑘) is in the interval defined in (4.24). i.e.,

𝑧 𝑖 ∈ ⎡ ⎣ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 }, 𝑎 𝑖𝑔 𝑖 ⊗ 𝑥 𝑔 𝑖 ⎤ ⎦ ∀𝑖, if x ∈ 𝑅 𝑢 g . (4.30)
Example 4.8 Consider the following autonomous uMPL system:

x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1), where 𝐴(𝑘) ∈ ⎛ ⎝ [4, 6] [3, 5] [3, 7] [4, 5] ⎞ ⎠ .
According to equation (4.29), the regions corresponding to each component g ∈ {1, 2}2 = {(1, 1), (1, 2), (2, 1), (2, 2)} are given by:

𝑅 𝑢 (1,1) = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≤ 1 } ∩ { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≤ 2 } = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≤ 1 } , 𝑅 𝑢 (1,2) = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≤ 1 } ∩ { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 1 -𝑥 2 ≤ -2 } = ∅, 𝑅 𝑢 (2,1) = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 1 -𝑥 2 ≤ -1 } ∩ { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≤ 2 } = { x ∈ R 2 𝑚𝑎𝑥 : 1 ≤ 𝑥 2 -𝑥 1 ≤ 2 } , 𝑅 𝑢 (2,2) = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 1 -𝑥 2 ≤ -1 } ∩ { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 1 -𝑥 2 ≤ -2 } = { x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≥ 2 } .
Then, according to (4.30) the corresponding partitioned uMPL system is 2 :

x ′ ∈ ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ ⎛ ⎝ [(4 ⊗ 𝑥 1 ) ⊕ (3 ⊗ 𝑥 2 ) , 6 ⊗ 𝑥 1 ] [(3 ⊗ 𝑥 1 ) ⊕ (4 ⊗ 𝑥 2 ) , 7 ⊗ 𝑥 1 ] ⎞ ⎠ if x ∈ 𝑅 𝑢 (1,1) , ⎛ ⎝ [(4 ⊗ 𝑥 1 ) ⊕ (3 ⊗ 𝑥 2 ) , 5 ⊗ 𝑥 2 ] [(3 ⊗ 𝑥 1 ) ⊕ (4 ⊗ 𝑥 2 ) , 7 ⊗ 𝑥 1 ] ⎞ ⎠ if x ∈ 𝑅 𝑢 (2,1) , ⎛ ⎝ [(4 ⊗ 𝑥 1 ) ⊕ (3 ⊗ 𝑥 2 ) , 5 ⊗ 𝑥 2 ] [(3 ⊗ 𝑥 1 ) ⊕ (4 ⊗ 𝑥 2 ) , 5 ⊗ 𝑥 2 ] ⎞ ⎠ if x ∈ 𝑅 𝑢 (2,2) ,
Figure 8 depicts the generated partitioned uMPL.

Example 4.9 Consider the following nonautonomous uMPL system:

x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1) ⊕ 𝐵(𝑘) ⊗ u(𝑘),
where,

𝐴(𝑘) ∈ ⎛ ⎝ 2 [2, 4] [3, 5] [3, 4] ⎞ ⎠ and 𝐵(𝑘) ∈ ⎛ ⎝ 𝑒 𝜀 ⎞ ⎠ .
x 1 -1.5 -1 -0.5 0 0.5 1 1.5

x

2 0 0.5 1 1.5 2 2.5 3 x ′ 2 ∈ [ 3 ⊗ x 1 ⊕ 4 ⊗ x 2 , 7 ⊗ x 1 ] R u ( 2 , 1 ) x ′ 1 ∈ [ 4 ⊗ x 1 ⊕ 3 ⊗ x 2 , 6 ⊗ x 1 ] R u ( 1 , 1 ) x ′ 2 ∈ [ 3 ⊗ x 1 ⊕ 4 ⊗ x 2 , 7 ⊗ x 1 ] x ′ 1 ∈ [ 4 ⊗ x 1 ⊕ 3 ⊗ x 2 , 5 ⊗ x 2 ] x ′ 2 ∈ [ 3 ⊗ x 1 ⊕ 4 ⊗ x 2 , 5 ⊗ x 2 ] x ′ 1 ∈ [ 4 ⊗ x 1 ⊕ 3 ⊗ x 2 , 5 ⊗ x 2 ] R u ( 2 , 2 ) Figure 8 -A partitioned uMPL system.
This system can be expressed as the following augmented autonomous uMPL system:

x(𝑘) = 𝐹 (𝑘) ⊗ y(𝑘 -1), where y(𝑘 -1) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑥 1 (𝑘 -1) 𝑥 2 (𝑘 -1) 𝑢 1 (𝑘) ⎞ ⎟ ⎟ ⎟ ⎠ and 𝐹 (𝑘) ∈ ⎛ ⎝ 2 [2, 4] 𝑒 [3, 5] [3, 4] 𝜀 ⎞ ⎠ .
In order to express the uMPL system as a partitioned uMPL system we must compute the regions corresponding to each component g ∈ {1, 2, 3} 2 = {(1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3)}. Since the matrix entry [f 23 ] is null (in the max-plus sense) we have that the regions corresponding to the components {(1, 3), (2, 3), (3, 3)} are empty. According to equation (4.29), the regions corresponding to the components g ∈ {(1, 1), (1, 2), (2, 1), (2, 2), (3, 1), (3, 2)} are given by:

𝑅 𝑢 (1,1) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ 2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ 1 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ ∞ } = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ 2 } , 𝑅 𝑢 (1,2) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ 2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ -1 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ ∞ } = ∅, 𝑅 𝑢 (2,1) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ 2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ 4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ 1 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ ∞ } = { y ∈ R 3 𝑚𝑎𝑥 : -2 ≤ 𝑦 2 -𝑦 1 ≤ 1 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ 4 } , 𝑅 𝑢 (2,2) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ 2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ 4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ -1 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ ∞ } = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ 4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ -1 } , 𝑅 𝑢 (3,1) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 3 ≤ -4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ 1 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 1 ≤ ∞ } = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 3 ≤ -4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 1 ≤ 1 } , 𝑅 𝑢 (3,2) = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 3 ≤ -4 } { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ -1 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 3 -𝑦 2 ≤ ∞ } = { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 3 ≤ -2 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 2 -𝑦 3 ≤ -4 } ∩ { y ∈ R 3 𝑚𝑎𝑥 : 𝑦 1 -𝑦 2 ≤ -1 } .
Then, according to (4.30) the corresponding partitioned uMPL system is3

x ′ ∈ ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ ⎛ ⎝ [(2 ⊗ 𝑦 1 ) ⊕ (2 ⊗ 𝑦 2 ) ⊕ (𝑒 ⊗ 𝑦 3 ) , 2 ⊗ 𝑦 1 ] [(3 ⊗ 𝑦 1 ) ⊕ (3 ⊗ 𝑦 2 ) ⊕ (𝜀 ⊗ 𝑦 3 ) , 5 ⊗ 𝑦 1 ] ⎞ ⎠ if y ∈ 𝑅 𝑢 (1,1) , ⎛ ⎝ [(2 ⊗ 𝑦 1 ) ⊕ (2 ⊗ 𝑦 2 ) ⊕ (𝑒 ⊗ 𝑦 3 ) , 4 ⊗ 𝑦 2 ] [(3 ⊗ 𝑦 1 ) ⊕ (3 ⊗ 𝑦 2 ) ⊕ (𝜀 ⊗ 𝑦 3 ) , 5 ⊗ 𝑦 1 ] ⎞ ⎠ if y ∈ 𝑅 𝑢 (2,1) , ⎛ ⎝ [(2 ⊗ 𝑦 1 ) ⊕ (2 ⊗ 𝑦 2 ) ⊕ (𝑒 ⊗ 𝑦 3 ) , 4 ⊗ 𝑦 2 ] [(3 ⊗ 𝑦 1 ) ⊕ (3 ⊗ 𝑦 2 ) ⊕ (𝜀 ⊗ 𝑦 3 ) , 4 ⊗ 𝑦 2 ] ⎞ ⎠ if y ∈ 𝑅 𝑢 (2,2) , ⎛ ⎝ [(2 ⊗ 𝑦 1 ) ⊕ (2 ⊗ 𝑦 2 ) ⊕ (𝑒 ⊗ 𝑦 3 ) , 𝑒 ⊗ 𝑦 3 ] [(3 ⊗ 𝑦 1 ) ⊕ (3 ⊗ 𝑦 2 ) ⊕ (𝜀 ⊗ 𝑦 3 ) , 5 ⊗ 𝑦 1 ] ⎞ ⎠ if y ∈ 𝑅 𝑢 (3,1) , ⎛ ⎝ [(2 ⊗ 𝑦 1 ) ⊕ (2 ⊗ 𝑦 2 ) ⊕ (𝑒 ⊗ 𝑦 3 ) , 𝑒 ⊗ 𝑦 3 ] [(3 ⊗ 𝑦 1 ) ⊕ (3 ⊗ 𝑦 2 ) ⊕ (𝜀 ⊗ 𝑦 3 ) , 4 ⊗ 𝑦 2 ] ⎞ ⎠ if y ∈ 𝑅 𝑢 (3,2) ,

DBM Representation of Partitioned uMPL systems

Each region (4.29) can be represented by a (𝑝 + 1) × (𝑝 + 1) DBM, see Section 2.4. From (4.24), 𝑧 𝑖 (𝑘), 𝑖 ∈ {1, ..., 𝑛}, is in the set defined by the following inequalities:

𝑧 𝑖 (𝑘) ⪯ 𝑎 𝑖𝑔 𝑖 ⊗ 𝑥 𝑔 𝑖 (𝑘 -1), (4.31) 𝑧 𝑖 (𝑘) ⪰ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)} ⇔ ⎧ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎩ 𝑧 𝑖 (𝑘) ⪰ 𝑎 𝑖1 ⊗ 𝑥 1 (𝑘 -1), . . . 𝑧 𝑖 (𝑘) ⪰ 𝑎 𝑖𝑝 ⊗ 𝑥 𝑝 (𝑘 -1). (4.32)
From this set, the following region can be defined:

𝑛 ⋂ 𝑖=1 {𝑧 𝑖 (𝑘) -𝑥 𝑔 𝑖 (𝑘 -1) ≤ 𝑎 𝑖𝑔 𝑖 } ∩ 𝑛 ⋂ 𝑖=1 𝑝 ⋂ 𝑗=1 𝑗̸ =𝑖 { 𝑥 𝑗 (𝑘 -1) -𝑧 𝑖 (𝑘) ≤ -𝑎 𝑖𝑗 } (4.33)
Therefore, it is straightforward to see that the dynamics of a partitioned uMPL system can be represented by a (𝑛 + 𝑝 + 1) × (𝑛 + 𝑝 + 1) DBM.

Remark 4.10 Each component of a partitioned uMPL system (region plus corresponding dynamics) can be fully characterized by the intersection of (4.29) and (4.33). This intersection can be represented by a (𝑛 + 𝑝 + 1) × (𝑛 + 𝑝 + 1) DBM which constrains the variables [𝑧 1 , . . . , 𝑧 𝑛 , 𝑥 1 , . . . , 𝑥 𝑝 ] and their differences.

Given [A] = [𝐴, 𝐴],
where 𝐴, and 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 , Algorithm 4.1 describes a procedure to generate a partitioned uMPL system represented by a collection of DBM D.

Algorithm 4.1 works as follows: In step 1 the output and auxiliary variables are initialized.

Step 5 generates a 𝑛 × 𝑝 matrix (𝑑𝑦𝑛𝐼𝑛𝑓 )4 representing the bounds for the differences defined in the right side of intersection (4.33). As can be observed in (4.33), these differences does not depends on g, therefore they can be calculated before the main loop (step 9). Then, for each g: step 13 generates an 𝑝 × 𝑛 matrix (𝑑𝑦𝑛𝑆𝑢𝑝)5 representing the bounds for the differences defined in the left side of intersection (4.33); step 16 computes the DBM representation of region 𝑅 𝑢 g ; if the obtained DBM is not empty (step 21) the matrices 𝑑𝑦𝑛𝐼𝑛𝑓 , 𝑑𝑦𝑛𝑆𝑢𝑝 and the region 𝑅 𝑢 g are used to generate a DBM 𝐷 g ∈ R 𝑛+𝑝 (steps 22 to 25) and step 26 saves 𝐷 g in D.

Algorithm 4.1: Expressing an MPL system as a PWA system using DBM as data structure. The assignment 𝑑𝑏𝑚𝐸𝑦𝑒(•) generates a square matrix of specified dimension, with entries

𝑑 𝑖𝑗 = 𝑒 ℬ if 𝑖 = 𝑗 and 𝑑 𝑖𝑗 = 𝜀 ℬ if 𝑖 ̸ = 𝑗.
𝐷 g ← 𝑑𝑏𝑚𝐸𝑦𝑒(𝑛 + 𝑝 + 1) // 𝐷 g [2 : 𝑛 + 1, 𝑛 + 2 : 𝑛 + 𝑝 + 1] ← 𝑑𝑦𝑛𝑆𝑢𝑝 // 𝐷 g [𝑛 + 2 : 𝑛 + 𝑝 + 1, 2 : 𝑛 + 1] ← 𝑑𝑦𝑛𝐼𝑛𝑓 // 𝐷 g [𝑛 + 2 : 𝑛 + 𝑝 + 1, 𝑛 + 2 : 𝑛 + 𝑝 + 1] ← 𝑅 𝑢 g // D ← D ∪ {𝐷 g }; end if end for 𝑥 0 𝑧 1 ...𝑧𝑛 𝑥 1 ...𝑥𝑝 𝐷 g = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ ...𝜀 ℬ 𝜀 ℬ ...𝜀 ℬ 𝑥 0 ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝜀 ℬ . . . 𝜀 ℬ 𝑒 𝑛×𝑛 ℬ 𝑑𝑢𝑛𝑆𝑢𝑝 (step 23) 𝑧 1 . . . 𝑧𝑛 𝜀 ℬ . . . 𝜀 ℬ 𝑑𝑢𝑛𝐼𝑛𝑓 (step 24) 𝑅g (step 25) 𝑥 1 . . . 𝑥𝑝
The worst-case complexity is calculated as follows. The maximum number of iterations in steps 9, 11 and 14 is 𝑝 𝑛 , 𝑛 and 𝑝 respectively. The complexity of the checking for emptiness of a DBM is cubic w.r.t. its dimension (see section 2.4.1), thus the complexity of step 21 is constant and equal to 𝒪 (𝑝 3 ). Moreover, the number of iterations in steps 2 and 3 is constant and amounts to 𝑛𝑝. Thus, the worst-case complexity is 𝒪 (𝑝 𝑛 (𝑛𝑝 + 𝑛 3 )). As for the classical case (section 2.5), the bottleneck resides in the worst-case cardinality of the collection of coefficients g, given by 𝑝 𝑛 . It should be noted that the performance of the algorithm can also be improved by using the backtracking technique discussed at the end of section 2.5.

In order to test the efficiency of the approach an experiment was carried out: for each 𝑛 ∈ {10, 12, 14, 16, 18, 20} it was generated an 𝑛 × 𝑛 matrix [A] with exactly 2 non-𝜀 entries randomly placed in each row. The upper bound of the non-𝜀 entries was randomly generated between 1 and 100 and the lower bound was set to6 0. In table 2 are average number of regions and the average time to generate the DBM representation over 10 experiments. The experiments were run in a Intel Core i7-6700HQ CPU @ 2.60 GHz with 16 GB of memory. Example 4.11 In this example, the uMPL system of example 4.8 is alternatively represented as a collection of DBM. For each g ∈ {1, 2} 2 = {(1, 1), (1, 2), (2, 1), (2, 2)}, we compute a DBM 𝐷 g which represents the region 𝑅 𝑢 g and the corresponding dynamics. The DBM 𝐷 (1,1) is constructed as follows. From (4.29), we have that:

𝑅 𝑢 (1,1) = {x ∈ R 2 𝑚𝑎𝑥 : 𝑥 2 -𝑥 1 ≤ 1 ⏟ ⏞ 𝑑 (1,1) 54 }.
And, from (4.33), the dynamics active in 𝑅 𝑢 (1,1) is given by: {𝑥

′ 1 -𝑥 1 ≤ 6} ⏟ ⏞ 𝑑 (1,1) 24 ∩ {𝑥 ′ 2 -𝑥 1 ≤ 7} ⏟ ⏞ 𝑑 (1,1) 34 ∩ {𝑥 1 -𝑥 ′ 1 ≤ -4} ⏟ ⏞ 𝑑 (1,1) 42 ∩ {𝑥 2 -𝑥 ′ 1 ≤ -3} ⏟ ⏞ 𝑑 (1,1) 52 ∩ {𝑥 1 -𝑥 ′ 2 ≤ -3} ⏟ ⏞ 𝑑 (1,1) 43 ∩ {𝑥 2 -𝑥 ′ 2 ≤ -4} ⏟ ⏞ 𝑑 (1,1) 53
.

Thus, 𝐷 (1,1) is given by:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (1,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (6, ≤) 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (7, ≤) 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-4, ≤) (-3, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 𝜀 ℬ (-3, ≤) (-4, ≤) (1, ≤) 𝑒 ℬ 𝑥 2
Similarly, the DBM 𝐷 (2,1) is constructed as follows. From (4.29), we have that:

𝑅 𝑢 (2,1) = {𝑥 1 -𝑥 2 ≤ -1} ⏟ ⏞ 𝑑 (2,1) 45 ∩ {𝑥 2 -𝑥 1 ≤ 2} ⏟ ⏞ 𝑑 (2,1) 54
. And, from (4.33), the dynamics active in 𝑅 𝑢 (2,1) is given by:

{𝑥 ′ 1 -𝑥 2 ≤ 5} ⏟ ⏞ 𝑑 (2,1) 25 ∩ {𝑥 ′ 2 -𝑥 1 ≤ 7} ⏟ ⏞ 𝑑 (2,1) 34 ∩ {𝑥 1 -𝑥 ′ 1 ≤ -4} ⏟ ⏞ 𝑑 (2,1) 42 ∩ {𝑥 2 -𝑥 ′ 1 ≤ -3} ⏟ ⏞ 𝑑 (2,1) 52 ∩ {𝑥 1 -𝑥 ′ 2 ≤ -3} ⏟ ⏞ 𝑑 (2,1) 43 ∩ {𝑥 2 -𝑥 ′ 1 ≤ -4} ⏟ ⏞ 𝑑 (2,1) 53
.

Thus, 𝐷 (2,1) is given by:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (2,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ (5, ≤) 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (7, ≤) 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-4, ≤) (-3, ≤) 𝑒 ℬ (-1, ≤) 𝑥 1 𝜀 ℬ (-3, ≤) (-4, ≤) (2, ≤) 𝑒 ℬ 𝑥 2
Using the same procedure, we obtain:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (2,2) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ (5, ≤) 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (5, ≤) 𝑥 ′ 2 𝜀 ℬ (-4, ≤) (-3, ≤) 𝑒 ℬ (-2, ≤) 𝑥 1 𝜀 ℬ (-3, ≤) (-4, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2
Example 4.12 The uMPL system of example 4.9 can be represented by the following collection of DBM.

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (1,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (2, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (5, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-2, ≤) (-3, ≤) 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 1 𝜀 ℬ (-2, ≤) (-3, ≤) (-2, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 2 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (2, ≤) 𝜀 ℬ 𝑒 ℬ 𝑢 1 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (2,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ (4, ≤) 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (5, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-2, ≤) (-3, ≤) 𝑒 ℬ (2, ≤) 𝜀 ℬ 𝑥 1 𝜀 ℬ (-2, ≤) (-3, ≤) (1, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 2 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ (4, ≤) 𝑒 ℬ 𝑢 1 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (2,2) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ (4, ≤) 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (4, ≤) 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-2, ≤) (-3, ≤) 𝑒 ℬ (-1, ≤) 𝜀 ℬ 𝑥 1 𝜀 ℬ (-2, ≤) (-3, ≤) 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑥 2 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ (4, ≤) 𝑒 ℬ 𝑢 1 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (3,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑥 ′ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (5, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 𝜀 ℬ (-2, ≤) (-3, ≤) 𝑒 ℬ 𝜀 ℬ (-2, ≤) 𝑥 𝜀 ℬ (-2, ≤) (-3, ≤) (1, ≤) 𝑒 ℬ (-4, ≤) 𝑥 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑢 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (3,2) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (4, ≤) 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-2, ≤) (-3, ≤) 𝑒 ℬ (-1, ≤) (-2, ≤) 𝑥 1 𝜀 ℬ (-2, ≤) (-3, ≤) 𝜀 ℬ 𝑒 ℬ (-4, ≤) 𝑥 2 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑢 1
Remark 4.13 If 𝑎 𝑖𝑗 = 𝑎 𝑖𝑗 ∀𝑖, 𝑗 (deterministic case), region 𝑅 𝑢 g , given by (4.29), is equal region 𝑅 g , given by (2.54) (𝑎 𝑖𝑗 = 𝑎 𝑖𝑗 = 𝑎 𝑖𝑗 ∀𝑖, 𝑗). In this case, for all x ∈ 𝑅 𝑢 g , inequality (4.32) can be expressed as 𝑧 𝑖 (𝑘) ⪰

⨁ 𝑝 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)} = ⨁ 𝑝 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)} = 𝑎 𝑖𝑔 𝑖 ⊗ 𝑥 𝑔 𝑖 (𝑘 -1).
Therefore, it is straightforward to see that the set (4.33) is equal the set (2.60).

Reachability Analysis of uMPL systems

In chapter 4, it was introduced a procedure to partition the state space of an uMPL system into components that can be completely characterized by DBM. In this chapter, this result is used to extend most of the results on reachability analysis, presented in (ADZKIYA et al., 2015;ADZKIYA et al., 2014b;ADZKIYA et al., 2014a), to uMPL systems. The algorithms proposed have the same worst-case complexity as the corresponding for deterministic MPL systems. In the following, it is shown that the image and the inverse image of a set represented by a DBM through each subsystem of a partitioned uMPL system can be represented by a DBM, and therefore the DBM approach is useful for reachability analysis of uMPL systems. Proposition 5.1 is an extension to uMPL systems of Proposition 3.1.

Proposition 5.1 The image and the inverse image of a set represented by a DBM w.r.t. a subsystem of a partitioned uMPL system is a set that can be represented by a DBM.

Proof:

The proof will be given for the image instance. The proof for the inverse image is similar. Each subsystem of a partitioned uMPL system can be represented by 1 :

𝑥 𝑖 (𝑘) ∈ ⎡ ⎣ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)}, 𝑎 𝑖𝑔 𝑖 ⊗ 𝑥 𝑔 𝑖 (𝑘 -1) ⎤ ⎦ , if x(𝑘 -1) ∈ 𝑅 𝑢 g ,
where: 𝑖 ∈ {1, ..., 𝑛} ∪ {0} and, for all g, 𝑔 0 is set to 0, 𝑎 00 = 0, 𝑎 0𝑗 = 𝜀 for all 𝑗 ∈ {1, ..., 𝑝} and 𝑎 𝑖0 = 𝜀 for all 𝑖 ∈ {1, ..., 𝑛}.

Note that, given a set 𝑋 𝑘-1 , only the points in the intersection 𝑋 𝑘-1 ∩ 𝑅 𝑢 g are governed by this dynamics i.e.:

𝑥 𝑖 (𝑘) ∈ ⎡ ⎣ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)}, 𝑎 𝑖𝑔 𝑖 ⊗ 𝑥 𝑔 𝑖 (𝑘 -1) ⎤ ⎦ ∀𝑖, if x(𝑘 -1) ∈ 𝑋 𝑘-1 ∩ 𝑅 𝑢 g .
(5.1)

If 𝑋 𝑘-1 can be represented by a DBM, the intersection 𝑋 𝑘-1 ∩ 𝑅 𝑢 g can also be represented by a DBM that will be noted by 𝐷 (𝑋 𝑘-1 ∩𝑅 𝑢 g ) , with entries 𝑑

(𝑋 𝑘-1 ∩𝑅g) 𝑖𝑟 = (d (𝑋 𝑘-1 ∩𝑅g) 𝑖𝑟
, ≤). Since computing the canonical form does not change the region represented by a DBM, it will be assumed that 𝐷 (𝑋 𝑘-1 ∩𝑅 𝑢 g ) is in the canonical form.

Therefore for all x(𝑘 -1) ∈ 𝑋 𝑘-1 ∩ 𝑅 𝑢 g we have that the tightest possible upper bound for 𝑥 𝑖 (𝑘 -1) -𝑥 𝑗 (𝑘 -1) is given by:

𝑥 𝑖 (𝑘 -1) -𝑥 𝑟 (𝑘 -1) ≤ d (𝑋 𝑘-1 ∩𝑅 𝑢 g ) 𝑖𝑟
, ∀𝑖, 𝑟.

(5.2)

According to (5.1) we have that2 :

𝑥 𝑖 (𝑘) -𝑥 𝑟 (𝑘) ∈ ⎡ ⎣ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)} -𝑎 𝑟𝑔𝑟 ⊗ 𝑥 𝑔𝑟 (𝑘 -1), 𝑎 𝑖𝑔 𝑖 ⊗ 𝑥 𝑔 𝑖 (𝑘 -1) - 𝑝 ⨁ 𝑗=1 {𝑎 𝑟𝑗 ⊗ 𝑥 𝑟 (𝑘 -1)} ⎤ ⎦ , ∀𝑖, 𝑟.(5.3)
From (5.3) we have that:

⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ 𝑥 𝑖 (𝑘) -𝑥 𝑟 (𝑘) ≥ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)} -𝑎 𝑟𝑔𝑟 ⊗ 𝑥 𝑔𝑟 (𝑘 -1), ∀𝑖, 𝑟, (5.4) 𝑥 𝑖 (𝑘) -𝑥 𝑟 (𝑘) ≤ 𝑎 𝑖𝑔 𝑖 ⊗ 𝑥 𝑔 𝑖 (𝑘 -1) - 𝑝 ⨁ 𝑗=1 {𝑎 𝑟𝑗 ⊗ 𝑥 𝑟 (𝑘 -1)}, ∀𝑖, 𝑟.
(5.5) Inequality (5.4) can be expressed as:

𝑥 𝑟 (𝑘) -𝑥 𝑖 (𝑘) ≤ min 𝑗 {𝑥 𝑔𝑟 (𝑘 -1) -𝑥 𝑗 (𝑘 -1) + 𝑎 𝑟𝑔𝑟 -𝑎 𝑖𝑗 }, ∀𝑖, 𝑟.
(5.6)

From (5.2) we have that:

𝑥 𝑟 (𝑘) -𝑥 𝑖 (𝑘) ≤ min 𝑗 {d (𝑋 𝑘-1 ∩𝑅 𝑢 g ) 𝑔𝑟𝑗 + 𝑎 𝑟𝑔𝑟 -𝑎 𝑖𝑗 }, ∀𝑖, 𝑟.
(5.7)

Similarly, inequality (5.5) can be expressed as:

𝑥 𝑖 (𝑘) -𝑥 𝑟 (𝑘) ≤ min 𝑗 {d (𝑋 𝑘-1 ∩𝑅 𝑢 g ) 𝑔 𝑖 𝑗 + 𝑎 𝑖𝑔 𝑖 -𝑎 𝑟𝑗 }, ∀𝑖, 𝑟.
(5.8)

Inequalities (5.7) and (5.8) define the same region. This can be checked by noticing that replacing 𝑖 with 𝑟 and 𝑟 with 𝑖 in (5.8) one obtains (5.7). Therefore, inequalities (5.4) and (5.5) are completely represented by (5.8). Thus, tightest possible upper bound for 𝑥 𝑖 (𝑘) -𝑥 𝑗 (𝑘) is given by:

𝑥 𝑖 (𝑘) -𝑥 𝑟 (𝑘) ≤ min 𝑗 {d (𝑋 𝑘-1 ∩𝑅 𝑢 g ) 𝑔 𝑖 𝑗 + 𝑎 𝑖𝑔 𝑖 -𝑎 𝑟𝑗 }, ∀𝑖, 𝑟.
(5.9)

Following the same arguments given in the proof for deterministic systems, note that all points in the image of 𝑋 𝑘-1 w.r.t. a subsystem g of a partitioned uMPL system must satisfy (5.9). Otherwise, at least one of the restrictions defined by the dynamics (5.1) would be violated. Moreover, all the points that satisfy (5.9) can be reached from 𝑋 𝑘-1 ∩ 𝑅 𝑢 g . Thus, the image of 𝑋 𝑘-1 w.r.t. the subsystem g of a partitioned uMPL system is given by the region defined by (5.9), which can be represented by a DBM 𝐷 (𝑋 𝑘 |g) with entries defined by:

𝑑 (𝑋 𝑘 |g) 𝑖𝑟 = (min 𝑗 {d (𝑋 𝑘-1 ∩𝑅 𝑢 g ) 𝑔 𝑖 𝑗 + 𝑎 𝑖𝑔 𝑖 -𝑎 𝑟𝑗 }, ≤).
(5.10)

Given a DBM 𝐷 (𝑋 𝑘-1 ) representing a set 𝑋 𝑘-1 , Algorithm 5.1 computes the image of 𝑋 𝑘-1 w.r.t. a subsystem of the partitioned uMPL system.

Algorithm 5.1: Computing the image of a DBM w.r.t a subsystem of a partitioned uMPL system input : 𝐷 (𝑋 𝑘-1 ) ∈ ℬ (𝑝+1)×(𝑝+1) // a DBM representing a region 𝑋 𝑘-1 ∈ R 𝑝 . : 𝐷 (g) ∈ ℬ (𝑛+𝑝+1)×(𝑛+𝑝+1) // a DBM representing a subsystem of a partitioned uMPL system generated by a matrix 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 . output: 𝐷 (𝑋 𝑘 |g) ∈ ℬ (𝑛+1)×(𝑛+1) // a DBM representing the image of 𝑋 𝑘-1 w.r.t. the subsystem g of the partitioned system.

1 𝐷 (R 𝑛 ) ← 𝑒 ℬ 𝑛+1×𝑛+1 // a DBM representing R 𝑛 2 𝐷 (R 𝑛 ×𝑋 𝑘-1 ) ← 𝐷 (R 𝑛 ) × 𝐷 (𝑋 𝑘-1
) // compute the cart. product (see section 2.4.2)

3 𝐷 ( X𝑘 ) ← 𝐷 (R 𝑛 ×𝑋 𝑘-1 ) ⊕ ℬ 𝐷 g // compute the intersection (see remark 2.21). 4 𝐷 ( X𝑘 ) ← 𝑐𝑓 (𝐷 ( X𝑘 ) ) // compute the canonical form (see section 2.4.1).

5 𝐷 (𝑋 𝑘 |g) ← 𝐷 ( X𝑘 ) ⌈ 𝑥 ′ 1 ,...,𝑥 ′
𝑛 // compute the orthogonal projection over x(𝑘) (see section 2.4.2).

In the following, is a discussion on how Algorithm 5.1 yields the region defined (5.10), which represents the image of a set 𝑋 𝑘-1 w.r.t. a subsystem g of the partitioned uMPL system. Note that, the DBM 𝐷 ( X𝑘 ) obtained in step 3 of Algorithm 5.1 exactly represents (5.1). Moreover, by definition, the DBM obtained in step 4 (which is the canonical form representation of 𝐷 ( X𝑘 ) ) has the tightest possible bounds. Therefore, the DBM 𝐷 (𝑋 𝑘 |g) , obtained in the step 5 as orthogonal projection of the canonical form over the variables x(𝑘), is the DBM defined by (5.10).

Similarly, given a DBM 𝐷 (𝑋 -𝑘+1 ) representing a set 𝑋 -𝑘+1 , Algorithm 5.2 computes the inverse image of 𝑋 -𝑘+1 w.r.t. a subsystem of the partitioned uMPL system. Algorithm 5.2: Computing the inverse image of a DBM w.r.t a subsystem of a partitioned uMPL system input : 𝐷 (𝑋 -𝑘+1 ) ∈ ℬ (𝑛+1)×(𝑛+1) // a DBM representing a region 𝑋 -𝑘+1 ∈ R 𝑛 . : 𝐷 (g) ∈ ℬ (𝑛+𝑝+1)×(𝑛+𝑝+1) // a DBM representing a subsystem of a partitioned uMPL system generated by a matrix 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 . output: 𝐷 (𝑋 -𝑘 |g) ∈ ℬ (𝑝+1)×(𝑝+1) // a DBM representing the inverse image of 𝑋 -𝑘+1 w.r.t. the subsystem g of the partitioned system.

1 𝐷 (R 𝑝 ) ← 𝑒 ℬ 𝑝+1×𝑝+1 // a DBM representing R 𝑛 2 𝐷 (𝑋 -𝑘+1 ×R 𝑝 ) ← 𝐷 (𝑋 -𝑘+1 ) × 𝐷 (R 𝑝 ) // compute the cart. product (see section 2.4.2)
3 𝐷 ( X-𝑘 ) ← 𝐷 (𝑋 -𝑘+1 ×R 𝑝 ) ⊕ ℬ 𝐷 g // compute the intersection (see remark 2.21). 4 𝐷 ( X-𝑘 ) ← 𝑐𝑓 (𝐷 ( X-𝑘 ) ) // compute the canonical form (see section 2.4.1). 5 𝐷 (𝑋 -𝑘 |g) ← 𝐷 ( X-𝑘 ) ⌈ 𝑥 1 ,...,𝑥𝑛 // compute the orthogonal projection over x(𝑘 -1) (see section 2.4.2).

The worst-case complexity of Algorithms 5.1 and 5.2 critically depends on computing the canonical form representation of a DBM in ℬ (𝑛+𝑝+1)×(𝑛+𝑝+1) (step 4 for both algorithms), which has cubic complexity w.r.t its dimensions. Thus, the worst-case complexity is 𝒪((𝑛 + 𝑝) 3 ).

Corollary 5.2 The image of a set represented by union of finitely many DBM w.r.t. a partitioned uMPL system can be represented by union of finitely many DBM.

Given a partitioned uMPL system generated by a matrix 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 , computing the image (or the inverse image) of a union of 𝑞 DBM can be done by computing the image (or the inverse image) of each DBM w.r.t each subsystem of the partitioned uMPL system. Thus the worst-case complexity depends on the number of DBM (considered to be 𝑞), on the worst-case cardinality of the collection of subsystem, given by 𝑝 𝑛 , and on the complexity of computing the image (or the inverse image) of each DBM w.r.t. each subsystem of a partitioned uMPL system, which is 𝒪((𝑛 + 𝑝) 3 ). Therefore, the worst-case complexity is 𝒪(𝑞𝑝 𝑛 (𝑛 + 𝑝) 3 ).

Remark 5.3 For autonomous uMPL systems, parameter 𝑝 equals 𝑛, and therefore the worstcase complexity of computing the image (or the inverse image) of 𝑞 DBM w.r.t the system is 𝒪(𝑞𝑛 𝑛+3 ). For nonautonomous uMPL systems, parameter 𝑝 equals 𝑛 + 𝑚, and therefore the worst-case complexity is 𝒪(𝑞(𝑛 + 𝑚) 𝑛+3 ). Note that this is the same worst case complexity of computing the image (or the inverse image) of 𝑞 DBM w.r.t a PWA system generated by an MPL system (see Remark 3.3).

Note that, the procedures for computing the image and the inverse image of a DBM w.r.t a subsystem of a partitioned uMPL system (Algorithms 5.1 and 5.2, respectively) have, essentially, the same steps of the procedures for computing the image and the inverse image of a DBM w.r.t a subsystem of a PWA system generated by an MPL system (Algorithms 3.1 and 3.2, respectively). Consequently, as presented in the following sections, forward and backward reachability analysis of uMPL systems can be performed by using a procedure that is quite similar to the procedures presented in sections 3.1 and 3.2.

In the following sections, it will be assumed that the set of initial/final conditions 𝑋 0 ⊆ R 𝑛 and the set of control 𝑈 𝑘 ⊆ R 𝑚 , at each event step, are a union of 𝑞 0 and 𝑟 𝑘 DBM, respectively. Moreover, the cardinality of the DBM union set representing 𝑋 𝑘 at event step 𝑘 will be noted by 𝑞 𝑘 .

Forward Reachability Analysis

Similarly to the classical case presented in chapter 3, the forward reachability analysis of uMPL systems concerns the computation of the set of all states that may be reached from a set of initial states via the uMPL dynamics, at a particular event step (the reach set) or over a set of consecutive events (reach tube). In the following, we recall the definitions of reach set and reach tube.

Definition 5.4 (reach set) Given an uMPL system and a nonempty set of initial conditions 𝑋 0 ⊆ R 𝑛 , the reach set 𝑋 𝑁 at the event step 𝑁 > 0 is the set of all states {x(𝑁 ) : x(0) ∈ 𝑋 0 } that can be reached via the uMPL dynamics, possibly by application of controls. Definition 5.5 (reach tube) Given an uMPL system and a nonempty set of initial conditions 𝑋 0 ⊆ R 𝑛 , the reach tube is defined by the set-valued function 𝑘 ↦ → 𝑋 𝑘 for any given 𝑘 > 0 where 𝑋 𝑘 is defined.

Forward Reachability Analysis of Autonomous uMPL systems

Given an autonomous uMPL system and a nonempty set of initial conditions 𝑋 0 , the reach set 𝑋 𝑘 at the event step 𝑘 can be recursively calculated as the image of the reach set 𝑋 𝑘-1 w.r.t the uMPL dynamics:

𝑋 𝑘 = ℐ [A] {𝑋 𝑘-1 } = {𝐴 ⊗ x : x ∈ 𝑋 𝑘-1 , 𝐴 ∈ [A]} = [A] ⊗ 𝑋 𝑘-1 .
(5.11)

From Corollary 5.2, if 𝑋 𝑘-1 can be represented by a union of 𝑞 𝑘-1 DBM, then 𝑋 𝑘 = ℐ [A] {𝑋 𝑘-1 } can be represented by a union of 𝑞 𝑘 DBM. Thus, by induction, it can be concluded that if 𝑋 0 can be represented by a union of 𝑞 0 DBM, then 𝑋 𝑘 can be represented by a union of 𝑞 𝑘 DBM, for each 𝑘 ∈ N.

Given the set of initial conditions 𝑋 0 , computing the reach tube for 𝑘 ∈ {1, ..., 𝑁 } can be done as follows: first, construct the partitioned uMPL system generated by [A]; then, for each 𝑘 ∈ {1, ..., 𝑁 }, compute the image of 𝑋 𝑘-1 w.r.t. the partitioned uMPL system. The worst-case complexity to compute ℐ [A] {𝑋 𝑘-1 }, for each 𝑘 ∈ {1, ..., 𝑁 } is 𝒪(𝑞 𝑘-1 𝑛 𝑛+3 ) (see remark 5.3). Thus, the overall complexity is 𝒪(𝑛 𝑛+3 ∑ 𝑁 𝑘=1 𝑞 𝑘-1 ).

Remark 5.6 As in the deterministic case, in general , it is not possible to quantify the exact cardinality 𝑞 𝑘 of the DBM union set at event step 𝑘 a priori (see remark 3.6). The worst-case cardinality depends on the cardinality of the DBM union set at event step 𝑘 -1, given by 𝑞 𝑘-1 , and on the worst-case cardinality of the number of regions of the partitioned uMPL system, given by 𝑛 𝑛 . Therefore the worst-case cardinality is 𝑞 𝑘-1 𝑛 𝑛 . In practice, many regions and intersections of DBM and regions are empty, then the cardinality 𝑞 𝑘 is drastically smaller than its worst-case bound.

In the following, we extend the one-shot procedure presented in section 3.1.1 to uMPL systems. Given a nonempty set of initial conditions 𝑋 0 , the reach set 𝑋 𝑁 at the event step 𝑁 can be computed, in a one-shot procedure, by using the following formula:

𝑋 𝑁 = ℐ [A] ⊗𝑁 {𝑋 0 } = {𝒜 ⊗ x : x ∈ 𝑋 0 , 𝒜 ∈ [A] ⊗𝑁 } = [A] ⊗𝑁 ⊗ 𝑋 0 .
(5.12)

A general procedure for computing 𝑋 𝑁 is: 1) compute [A] ⊗𝑁 (see (4.16)); then, 2) construct the partitioned uMPL system generated by [A] ⊗𝑁 ; and, 3) compute the image of 𝑋 0 w.r.t. the obtained partitioned system. The complexity of this procedure is 𝒪([log 2 (𝑁 )]𝑛 3 + 𝑞 0 𝑁 3 ), the same as the one-shot procedure presented in section 3.1.1.

Example 5.7 Consider the autonomous uMPL system given by:

x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1), where 𝐴(𝑘) ∈ ⎛ ⎝ [4, 6] [3, 5] [3, 7] [4, 5] ⎞ ⎠ .
In example 4.11 this system was represented as a collection of DBM D = {𝐷 (1,1) , 𝐷 (2,1) , 𝐷 (2,2) }.

Given 𝑋 0 = {x ∈ R 2 𝑚𝑎𝑥 : 0 ≤ 𝑥 1 ≤ 1, 1 ≤ 𝑥 2 ≤ 3}
, the reach sets 𝑋 𝑘 for 𝑘 ∈ {1, 2} are computed in the following. Note that the set 𝑋 0 can be represented by the following DBM:

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 0 ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (-1, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (3, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2
To compute the reach set 𝑋 1 = ℐ [A] {𝑋 0 }, we must compute the image of 𝑋 0 w.r.t each component g of the partitioned uMPL system. According to algorithm 5.1, the image of 𝐷 (𝑋 0 ) w.r.t. the component g = (1, 1) can be computed as follows: first, we compute the Cartesian product of 𝐷 (R 2 ) (a DBM representing R 2 ) and 𝐷 (𝑋 0 ) :

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (R 2 ×𝑋 0 ) = 𝐷 (R 2 ) × 𝐷 (𝑋 0 ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (-1, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 (1, ≤) 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑥 1 (3, ≤) 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑥 2
Then, we compute the intersection of 𝐷 (R 2 ×𝑋 0 ) and 𝐷 (1,1) :

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (R 2 ×𝑋 0 ) ⊕ ℬ 𝐷 (1,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (-1, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (6, ≤) 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (7, ≤) 𝜀 ℬ 𝑥 ′ 2 (1, ≤) (-4, ≤) (-3, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (3, ≤) (-3, ≤) (-4, ≤) (1, ≤) 𝑒 ℬ 𝑥 2
Next, we compute the canonical form representation of the intersection:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑐𝑓 (𝐷 (R 2 ×𝑋 0 ) ⊕ ℬ 𝐷 (1,1) ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-4, ≤) (-5, ≤) 𝑒 ℬ (-1, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (7, ≤) 𝑒 ℬ (2, ≤) (6, ≤) (6, ≤) 𝑥 ′ 1 (8, ≤) (3, ≤) 𝑒 ℬ (7, ≤) (7, ≤) 𝑥 ′ 2 (1, ≤) (-4, ≤) (-4, ≤) 𝑒 ℬ 𝑒 ℬ 𝑥 1 (2, ≤) (-3, ≤) (-4, ≤) (1, ≤) 𝑒 ℬ 𝑥 2
Finally, we compute the orthogonal projection of the canonical form over the variables 𝑥 ′ 1 and 𝑥 ′ 2 . The image of 𝑋 0 w.r.t the component g = (1, 1) is noted by 𝑋 1 | g=(1,1) and represented by the following DBM.

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝐷 (𝑋 1 | g=(1,1) ) = 𝑐𝑓 (𝐷 (R 2 ×𝑋 0 ) ⊕ ℬ 𝐷 (1,1) )⌈ x ′ = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-4, ≤) (-5, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (7, ≤) 𝑒 ℬ (2, ≤) 𝑥 ′ 1 (8, ≤) (3, ≤) 𝑒 ℬ 𝑥 ′ 2
Applying the same procedure for 𝐷 (2,1) and 𝐷 (2,2) we obtain:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝐷 (𝑋 1 | g=(2,1) ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-4, ≤) (-5, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (8, ≤) 𝑒 ℬ (1, ≤) 𝑥 ′ 1 (8, ≤) (3, ≤) 𝑒 ℬ 𝑥 ′ 2 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝐷 (𝑋 1 | g=(2,2) ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-5, ≤) (-6, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (8, ≤) 𝑒 ℬ (1, ≤) 𝑥 ′ 1 (8, ≤) (2, ≤) 𝑒 ℬ 𝑥 ′ 2
The reach set 𝑋 1 is the union of the images of 𝑋 0 w.r.t. each component of partitioned uMPL system and it is represented by the collection of DBM given by D (𝑋 1 ) = {𝐷 (𝑋 1 | g=(1,1) ) , 𝐷 (𝑋 1 | g=(2,1) ) , 𝐷 (𝑋 1 | g=(2,2) ) }. However, note that,

𝐷 (𝑋 1 | g=(2,1) ) ⊕ ℬ 𝐷 (𝑋 1 | g=(2,2) ) = 𝐷 (𝑋 1 | g=(2,2) )
, and therefore, according to remark 2.22, 𝐷 (𝑋 1 | g=(2,1) ) ∪ 𝐷 (𝑋 1 | g=(2,2) ) = 𝐷 (𝑋 1 | g=(2,1) ) . Then, the DBM union set can be simplified to

D (𝑋 1 ) = {𝐷 (𝑋 1 | g=(1,1) ) , 𝐷 (𝑋 1 | g=(2,1) ) }. Therefore, 𝑋 1 = ℛ(𝐷 (𝑋 1 | g=(2,1) ) )∪ ℛ(𝐷 (𝑋 1 | g=(2,1) ) ) = {x ′ ∈ R 2 : 4 ≤ 𝑥 ′ 1 ≤ 7, 5 ≤ 𝑥 ′ 2 ≤ 8, -2 ≤ 𝑥 ′ 2 -𝑥 ′ 1 ≤ 3} ∪ {x ′ ∈ R 2 : 4 ≤ 𝑥 ′ 1 ≤ 8, 5 ≤ 𝑥 ′ 2 ≤ 8, -1 ≤ 𝑥 ′ 2 -𝑥 ′ 1 ≤ 3} The reach set 𝑋 2 is obtained by computing the image of each DBM in D (𝑋 1 ) w.r.t each DBM in D = {𝐷 (1,1) , 𝐷 (2,1) , 𝐷 (2,2) }, which yields 𝑋 2 = {x ′ ∈ R 2 : 8 ≤ 𝑥 ′ 1 ≤ 14, 9 ≤ 𝑥 ′ 2 ≤ 15, -3 ≤ 𝑥 ′ 2 -𝑥 ′ 1 ≤ 3}.
The reach sets 𝑋 1 and 𝑋 2 are shown in Figure 9.

Remark 5.8 In general, the uMPL systems are expansive in the sense that, given 𝑋 0 , the hyper-volume 3 of the reach sets 𝑋 𝑘 tends to increase with 𝑘 (see Figure 9 for instance).

In the following it is shown that under specific conditions the structure of the uMPL dynamics leads to savings for the computation of the reach tube. Consider a matrix of intervals [A] = [𝐴, 𝐴] such that: 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 is an irreducible matrix with cyclicity 𝑐 1 and

3 the hyper-volume of a set 𝑋 𝑘 ∈ R 𝑛 is given by 𝑉 = ∫ 𝑋 𝑘 𝑑x x 1 0 5 10 15 x 2 2 4 6 8 10 12 14 R u ( 1 , 1 ) X 2 R u ( 2 , 1 ) X 1 R u ( 2 , 2 ) X 0
Figure 9 -reach tube for 𝑘 ∈ {1, 2} (autonomous uMPL system).

max-plus eigenvalue 𝜆 1 ; and 𝐴 ∈ R 𝑛×𝑛 𝑚𝑎𝑥 is an irreducible matrix with cyclicity 𝑐 2 and max-plus eigenvalue 𝜆 2 . From equation (4.16), we have that:

[A] ⊗𝑘 = [𝐴 ⊗𝑘 , 𝐴 ⊗𝑘 ].
(5.13) From Proposition 2.13, there exist integers 𝐾 0 (𝐴) and 𝐾 0 (𝐴) such that:

𝑘 ≥ 𝐾 0 (𝐴) ⇒ 𝐴 ⊗(𝑘+𝑐 1 ) = 𝜆 ⊗𝑐 1 1 ⊗ 𝐴 ⊗𝑘 , (5.14) 𝑘 ≥ 𝐾 0 (𝐴) ⇒ 𝐴 ⊗(𝑘+𝑐 2 ) = 𝜆 ⊗𝑐 2 2 ⊗ 𝐴 ⊗𝑘 .
(5.15)

In the special case where 𝑐 1 = 𝑐 2 and 𝜆 1 = 𝜆 2 , there exists an integer 𝐾 0 (𝐴, 𝐴) = max{𝐾 0 (𝐴), 𝐾 0 (𝐴)} such that:

𝑘 ≥ 𝐾 0 (𝐴, 𝐴) ⇒ [A] ⊗(𝑘+𝑐 1 ) = [𝐴 ⊗(𝑘+𝑐 1 ) , 𝐴 ⊗(𝑘+𝑐 1 ) ] = [𝜆 ⊗𝑐 1 1 ⊗ 𝐴 ⊗𝑘 , 𝜆 ⊗𝑐 1 1 ⊗ 𝐴 ⊗𝑘 ] = 𝜆 ⊗𝑐 1 1 ⊗ [𝐴 ⊗𝑘 , 𝐴 ⊗𝑘 ] = 𝜆 ⊗𝑐 1 1 ⊗ [A] ⊗𝑘 .
(5.16) Therefore, in this special case, given a set of initial positions 𝑋 0 there exists 𝑘 0 (𝑋 0 ) =

𝑚𝑎𝑥{𝑘 0 (𝑥)} such that, 𝑘 ≥ 𝑘 0 (𝑋 0 ) ⇒ 𝑋 𝑘+𝑐 1 = 𝜆 𝑐 1 1 ⊗ 𝑋 𝑘 .
(5.17) Thus, in order do compute 𝑋 𝑁 , 𝑁 > 𝑘 0 (𝑋 0 ) + 𝑐 -1, it is only necessary to compute 𝑋 1 , ..., 𝑋 𝑘 0 (𝑋 0 )+𝑐-1 .

Example 5.9 Consider the uMPL system characterized by the following matrix of intervals:

[A] = ⎛ ⎝ [0, 2] 5 3 [0, 3] ⎞ ⎠ .
or equivalently,

[A] = [𝐴, 𝐴], where: 𝐴 = ⎛ ⎝ 0 5 3 0 ⎞ ⎠ and 𝐴 = ⎛ ⎝ 2 5 3 3 ⎞ ⎠ .
Both matrices, 𝐴 and 𝐴, have cyclicity 𝑐 = 2 and max-plus eigenvalue 𝜆 = 4 (see section 2.3). Moreover, as can be observed in Figure 10, given

𝑋 0 = {x ∈ R 2 : 0 ≤ 𝑥 1 ≤ 1, 1 ≤ 𝑥 2 ≤ 3}, for all 𝑘 ≥ 1 we have that 𝑋 𝑘+2 = 4 ⊗2 ⊗ 𝑋 𝑘 = 8 ⊗ 𝑋 𝑘 . x 1 0 5 10 15 20 25 x 2 5 10 15 20 25 X 6 X 5 X 4 X 3 X 2 X 1 X 0
Figure 10 -cyclic behavior of an uMPL system.

Remark 5.10 The column space or image of a matrix of intervals

[A] ∈ R 𝑛×𝑝 𝑚𝑎𝑥 can be defined as 𝐼𝑚 [A] = {x ′ = 𝐴⊗x : x ∈ R 𝑝 , 𝐴 ∈ [A]}. Note that, 𝐼𝑚 [A]
can be computed as the image of R 𝑝 𝑚𝑎𝑥 w.r.t. the partitioned uMPL system generated by [A]. According to algorithm 5.1, the image of R 𝑝 𝑚𝑎𝑥 w.r.t. each subsystem of the partitioned uMPL system can be calculated by computing the DBM 𝐷 (R 𝑛 ×R 𝑝 ) = 𝐷 (R 𝑛+𝑝 ) , which represents R 𝑛 × R 𝑝 (step 2); then computing 𝑐𝑓 (𝐷 (R 𝑛+𝑝 ) ⊕ ℬ 𝐷 (g) ) (steps 3 and 4); and finally projecting the canonical form over x ′ (step 5). However, note that 𝐷 (R 𝑛+𝑝 ) ⊕ ℬ 𝐷 (g) = 𝐷 (g) , then the image of [A] can be computed by computing the canonical form of each DBM representing the the partitioned uMPL system generated by [A] and then projecting the canonical form over x ′ .

Example 5.11 Consider the matrix

[A] = ⎛ ⎝ [4, 6] [3, 5] [3, 7] [4, 5] ⎞ ⎠ .
The partitioned uMPL system generated by this matrix is represented by the collection of DBM D = {𝐷 (1,1) , 𝐷 (2,1) , 𝐷 (2,2) }, computed in example 4.11.

The image of [A] is computed as follows: First we compute the canonical form of the DBM 𝐷 (1,1) , 𝐷 (2,1) and 𝐷 (2,2) :

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑐𝑓 (𝐷 (1,1) ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ (3, ≤) (6, ≤) 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ (3, ≤) 𝑒 ℬ (7, ≤) 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-4, ≤) (-3, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 𝜀 ℬ (-3, ≤) (-4, ≤) (1, ≤) 𝑒 ℬ 𝑥 2 , 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑐𝑓 (𝐷 (2,1) ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ (1, ≤) (7, ≤) (5, ≤) 𝑥 ′ 1 𝜀 ℬ (3, ≤) 𝑒 ℬ (7, ≤) (6, ≤) 𝑥 ′ 2 𝜀 ℬ (-4, ≤) (-5, ≤) 𝑒 ℬ (-1, ≤) 𝑥 1 𝜀 ℬ (-3, ≤) (-4, ≤) (2, ≤) 𝑒 ℬ 𝑥 2 , 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑐𝑓 (𝐷 (2,2) ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ (1, ≤) 𝜀 ℬ (5, ≤) 𝑥 ′ 1 𝜀 ℬ (2, ≤) 𝑒 ℬ 𝜀 ℬ (5, ≤) 𝑥 ′ 2 𝜀 ℬ (-5, ≤) (-6, ≤) 𝑒 ℬ (-2, ≤) 𝑥 1 𝜀 ℬ (-3, ≤) (-4, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2
.

Then, we project the canonical form over the variables x ′ :

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑐𝑓 (𝐷 (1,1) )⌈ x ′ = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ (3, ≤) 𝑥 ′ 1 𝜀 ℬ (3, ≤) 𝑒 ℬ 𝑥 ′ 2 , 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑐𝑓 (𝐷 (2,1) )⌈ x ′ = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ (1, ≤) 𝑥 ′ 1 𝜀 ℬ (3, ≤) 𝑒 ℬ 𝑥 ′ 2 , 𝑥 0 𝑥 1 𝑥 2 𝑐𝑓 (𝐷 (2,2) )⌈ x ′ = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ (1, ≤) 𝑥 1 𝜀 ℬ (2, ≤) 𝑒 ℬ 𝑥 2 . The image of [A] can be represented by D (𝐼𝑚[A]) = {𝑐𝑓 (𝐷 (1,1) )⌈ x ′ , 𝑐𝑓 (𝐷 (2,1) )⌈ x ′ , 𝑐𝑓 (𝐷 (2,2) )⌈ x ′ }. However, note that, 𝑐𝑓 (𝐷 (1,1) )⌈ x ′ ⊕ ℬ 𝑐𝑓 (𝐷 (2,1) )⌈ x ′ = 𝑐𝑓 (𝐷 (2,1) )⌈ x ′ and 𝑐𝑓 (𝐷 (1,1) )⌈ x ′ ⊕ ℬ 𝑐𝑓 (𝐷 (2,2) )⌈ x ′ = 𝑐𝑓 (𝐷 (2,2) )⌈ x ′ . Thus, D (𝐼𝑚[A]) = {𝑐𝑓 (𝐷 (1,1) )⌈ x ′ } (see remark 2.22). Then, 𝐼𝑚 [A] = {x ′ ∈ R 2 : -3 ≤ 𝑥 2 -𝑥 1 ≤ 3}.

Forward Reachability Analysis of Nonautonomous uMPL systems

For nonautonomous uMPL systems, forward reachability analysis can be performed by first representing the systems as an augmented autonomous uMPL system (see equation (4.3)), then given a nonempty set of initial conditions 𝑋 0 and the set of inputs 𝑈 𝑘 for each 𝑘 ∈ N, the reach set 𝑋 𝑘 at the event step 𝑘 can be recursively calculated as:

𝑋 𝑘 = ℐ [F] {𝑋 𝑘-1 × 𝑈 𝑘 } = {𝐹 ⊗ y : y ∈ 𝑋 𝑘-1 × 𝑈 𝑘 , 𝐹 ∈ [F]}.
(5.18)

where

[F] = ([A] [B]) and y = ( x 𝑇 u 𝑇 ) 𝑇 .
If 𝑋 𝑘-1 and 𝑈 𝑘 can be represented by a union of 𝑞 𝑘-1 and 𝑟 𝑘 DBM , respectively, then 𝑋 𝑘-1 × 𝑈 𝑘 can be represented by a union of q𝑘-1 = 𝑞 𝑘-1 𝑟 𝑘 DBM. Thus, from Corollary 5.2, 𝑋 𝑘 = ℐ [F] {𝑋 𝑘-1 × 𝑈 𝑘 } can be represented by a union of 𝑞 𝑘 DBM. By induction, it can be concluded that if 𝑋 0 can be represented by a union of 𝑞 0 DBM and 𝑈 𝑘 can be represented by a union of 𝑟 𝑘 DBM for each 𝑘 ∈ N, then 𝑋 𝑘 can be represented by a union of 𝑞 𝑘 DBM, for each 𝑘 ∈ N.

Given a nonautonomous uMPL system, the set of initial conditions 𝑋 0 and set of inputs 𝑈 𝑘 for each 𝑘 ∈ {1, ..., 𝑁 }, computing the reach tube for 𝑘 ∈ {1, ..., 𝑁 } can be done as follows: first, construct the partitioned uMPL system generated by [F] = ([A] [B]); then, for each 𝑘 ∈ {1, ..., 𝑁 }, compute the image of 𝑋 𝑘-1 × 𝑈 𝑘 w.r.t. the partitioned uMPL system. The worst-case complexity to compute ℐ 𝐹 {𝑋 𝑘-1 × 𝑈 𝑘 }, for each 𝑘 ∈ N is 𝒪(q 𝑘-1 (𝑛 + 𝑚) 𝑛+3 ) (see remark 5.3). Thus, the overall complexity is 𝒪((𝑛 + 𝑚) 𝑛+3 ∑ 𝑁 𝑘=1 q𝑘-1 ). The set of all states that can be reached in 𝑁 event steps can be computed using a one-shot procedure. Given a nonempty set of initial conditions 𝑋 0 , the reach set 𝑋 𝑁 at the event step 𝑁 is given by:

𝑋 𝑁 = ([A] ⊗𝑁 , [A] ⊗(𝑁 -1) ⊗ [B] , ..., [B]) ⊗ (𝑋 0 × 𝑈 1 × ... × 𝑈 𝑁 ).
(5.19) Given the matrices [A] and [B], a set of initial conditions 𝑋 0 (represented by a union of 𝑞 0 DBM) and a sequence of input sets 𝑈 1 , ..., 𝑈 𝑁 , a general procedure for computing 𝑋 𝑁 is given by: 1) generate the matrix ([A] ⊗𝑁 , [A] ⊗(𝑁 -1) ⊗ [B] , ..., [B]); then, 2) Construct the partitioned uMPL system generated by this matrix; and, 3) compute the image of 𝑋 0 × 𝑈 1 × ... × 𝑈 𝑁 w.r.t the obtained partitioned system. The complexity of steps 1, 2 and 3 is, respectively, 𝒪(𝑁 𝑛 3 + 𝑁 𝑛 2 𝑚), 𝒪((𝑛 + 𝑚𝑁 ) 𝑛+3 ) and 𝒪(𝑞 0 (𝑛 + 𝑚𝑁 ) 𝑛+3 ). Note that , this approach is not tractable for problems over long event horizons, since the maximum number of regions of the partitioned uMPL system is (𝑛 + 𝑚𝑁 ) 𝑛 and grows polynomially w.r.t. the event horizon 𝑁 .

Example 5.12 Consider the nonautonomous uMPL system given by:

x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1) ⊕ 𝐵(𝑘) ⊗ u(𝑘),
where,

𝐴(𝑘) ∈ ⎛ ⎝ 2 [2, 4] [3, 5] [3, 4] ⎞ ⎠ and 𝐵(𝑘) ∈ ⎛ ⎝ 𝑒 𝜀 ⎞ ⎠ .
In example 4.12 this system was represented as a collection of DBM D = {𝐷 (1,1) , 𝐷 (2,1) , 𝐷 (2,2) , 𝐷 (3,1) , 𝐷 (3,2) }.

Chapter 5. Reachability Analysis of uMPL systems

90 Given 𝑋 0 = {x ∈ R 2 𝑚𝑎𝑥 : 0 ≤ 𝑥 1 ≤ 1, 0 ≤ 𝑥 2 ≤ 3}
, and the sequence of controls 𝑢 1 (1) = 2.5 and 𝑢 1 (2) = 8, the reach sets 𝑋 𝑘 for 𝑘 ∈ {1, 2} are computed in the following.

The set of initial positions 𝑋 0 and the control input 𝑢 1 (1) can be represented by the following DBM:

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 0 ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ 𝑒 ℬ ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (3, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2 𝑥 0 𝑢 1 𝐷 (𝑈 1 ) = ⎛ ⎝ 𝑒 ℬ (-2.5, ≤) ⎞ ⎠ 𝑥 0 (2.5, ≤) 𝑒 ℬ 𝑢 1
To compute the reach set 𝑋 1 = ℐ [F] {𝑋 0 × 𝑈 1 }, we must to compute the image of 𝑋 0 × 𝑈 1 w.r.t each component g ∈ {𝐷 (1,1) , 𝐷 (2,1) , 𝐷 (2,2) , 𝐷 (3,1) , 𝐷 (3,2) } of the partitioned uMPL system generated by [F]. The Cartesian product 𝑋 0 × 𝑈 1 can be represented by:

𝑥 0 𝑥 1 𝑥 2 𝑥 3 𝐷 (𝑋 0 ×𝑈 1 ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ 𝑒 ℬ (-2.5, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 1 (3, ≤) 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑥 2 (2.5, ≤) 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑥 3
According to algorithm 5.1, the image of 𝐷 (𝑋 0 ×𝑈 1 ) w.r.t. the component g = (1, 1) can be computed as follows: first, we compute the Cartesian product of 𝐷 (R 2 ) (a DBM representing R 2 ) and 𝐷 (𝑋 0 ×𝑈 1 ) :

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (R 2 ×𝑋 0 ×𝑈 1 ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑒 ℬ (-2.5, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 (1, ≤) 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 1 (3, ≤) 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑥 2 (2.5, ≤) 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑢 1
Then, we compute the intersection of 𝐷 (R 2 ×𝑋 0 ×𝑈 1 ) and 𝐷 (1,1) :

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (R 2 ×𝑋 0 ×𝑈 1 ) ⊕ ℬ 𝐷 (1,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑒 ℬ (-2.5, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ (2, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (5, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 (1, ≤) (-2, ≤) (-3, ≤) 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 1 (3, ≤) (-2, ≤) (-3, ≤) (-2, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 2 (2.5, ≤) 𝑒 ℬ 𝜀 ℬ (2, ≤) 𝜀 ℬ 𝑒 ℬ 𝑢 1
Next, we compute the canonical form of the intersection:

𝑐𝑓 (𝐷 (R 2 ×𝑋 0 ×𝑈 1 ) ⊕ ℬ 𝐷 (1,1) ) = 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⊤ ℬ (-2, ≤) (-3, ≤) 𝑒 ℬ 𝑒 ℬ (-2.5, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (3, ≤) 𝑒 ℬ (-1, ≤) (2, ≤) (3, ≤) (0.5, ≤) 𝑥 ′ 1 (6, ≤) (3, ≤) 𝑒 ℬ (5, ≤) (6, ≤) (3.5, ≤) 𝑥 ′ 2 (1, ≤) (-2, ≤) (-3, ≤) 𝑒 ℬ (1, ≤) (-1.5, ≤) 𝑥 1 (-1, ≤) (-4, ≤) (-5, ≤) (-2, ≤) (-1, ≤) (-3., ≤) 𝑥 2 (2.5, ≤) 𝑒 ℬ (-1, ≤) (2, ≤) (2.5, ≤) 𝑒 ℬ 𝑢 1
Note that, this is an empty DBM due to the fact that the set 𝑋 0 × 𝑈 1 is not intersected with region 𝑅 𝑢 (1,1) (see example 4.9). Therefore, the image of 𝑋 0 w.r.t the component g = (1, 1) is empty. Now, let us compute the image of 𝑋 0 w.r.t the component g = (2, 1). The intersection of 𝐷 (R 2 ×𝑋 0 ×𝑈 1 ) and 𝐷 (2,1) is given by:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (R 2 ×𝑋 0 ×𝑈 1 ) ⊕ ℬ 𝐷 (2,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑒 ℬ (-2.5, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ (4, ≤) 𝜀 ℬ 𝑥 ′ 1 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ (5, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 (1, ≤) (-2, ≤) (-3, ≤) 𝑒 ℬ (2, ≤) 𝜀 ℬ 𝑥 1 (3, ≤) (-2, ≤) (-3, ≤) (1, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 2 (2.5, ≤) 𝑒 ℬ 𝜀 ℬ (5, ≤) (4, ≤) 𝑒 ℬ 𝑢 1
The canonical form of the intersection is:

𝑐𝑓 (𝐷 (R 2 ×𝑋 0 ×𝑈 1 ) ⊕ ℬ 𝐷 (1,1) ) = 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-2.5, ≤) (-3, ≤) 𝑒 ℬ 𝑒 ℬ (-2.5, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (6, ≤) 𝑒 ℬ (1, ≤) (5, ≤) (4, ≤) (3.5, ≤) 𝑥 ′ 1 (6, ≤) (3, ≤) 𝑒 ℬ (5, ≤) (6, ≤) (3.5, ≤) 𝑥 ′ 2 (1, ≤) (-2, ≤) (-3, ≤) 𝑒 ℬ (1, ≤) (-1.5, ≤) 𝑥 1 (2, ≤) (-2, ≤) (-3, ≤) (1, ≤) 𝑒 ℬ (-0.5, ≤) 𝑥 2 (2.5, ≤) 𝑒 ℬ (-5, ≤) (2.5, ≤) (2.5, ≤) 𝑒 ℬ 𝑢 1
The image of 𝑋 0 w.r.t the component g = (2, 1), noted by 𝑋 1 | g=(2,1) , is given by the orthogonal projection of the canonical form over the variables 𝑥 ′ 1 and 𝑥 ′ 2 , which is given by:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝐷 (𝑋 1 | g=(2,1) ) = 𝑐𝑓 (𝐷 (R 2 ×𝑋 0 ×𝑈 1 ) ⊕ ℬ 𝐷 (1,1) )⌈ x ′ = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-2.5, ≤) (-3, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (6, ≤) 𝑒 ℬ (1, ≤) 𝑥 ′ 1 (6, ≤) (3, ≤) 𝑒 ℬ 𝑥 ′ 2
The image of 𝑋 0 w.r.t the component g = (2, 2) can be computed by applying the same procedure, which yields:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝐷 (𝑋 1 | g=(2,2) ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-3, ≤) (-4, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (7, ≤) 𝑒 ℬ (1, ≤) 𝑥 ′ 1 (7, ≤) (2, ≤) 𝑒 ℬ 𝑥 ′ 2
The set 𝑋 0 × 𝑈 1 is not intersected with the regions 𝑅 𝑢 (3,1) and 𝑅 𝑢 (3,2) . Therefore, the image of 𝑋 0 w.r.t these components is the empty set.

Thus, the image of 𝑋 0 w.r.t uMPL system is represented by

D (𝑋 1 ) = {𝐷 (𝑋 1 | g=(2,1) ) , 𝐷 (𝑋 1 | g=(2,2) ) }. Therefore, we have that 𝑋 1 = ℛ(𝐷 (𝑋 1 | g=(2,1) ) ) ∪ ℛ(𝐷 (𝑋 1 | g=(2,2) ) ) = {x ′ ∈ R 2 : 2.5 ≤ 𝑥 ′ 1 ≤ 6, 3 ≤ 𝑥 ′ 2 ≤ 6, -1 ≤ 𝑥 ′ 2 -𝑥 ′ 1 ≤ 3} ∪ {x ′ ∈ R 2 : 3 ≤ 𝑥 ′ 1 ≤ 7, 4 ≤ 𝑥 ′ 2 ≤ 7, -1 ≤ 𝑥 ′ 2 -𝑥 ′ 1 ≤ 2}.
The reach set 𝑋 2 is obtained by computing the image of each DBM in D (𝑋 1 ) w.r.t each DBM in D = {𝐷 (1,1) , 𝐷 (2,1) , 𝐷 (2,2) , 𝐷 (3,1) , 𝐷 (3,2) }, which yields

𝑋 2 = {x ′ ∈ R 2 : 𝑥 ′ 1 = 8, 6 ≤ 𝑥 ′ 2 ≤ 10} ∪ {x ′ ∈ R 2 : 8 ≤ 𝑥 ′ 1 ≤ 11, 7 ≤ 𝑥 ′ 2 ≤ 12, -1 ≤ 𝑥 ′ 2 -𝑥 ′ 1 ≤ 3}.

Backward Reachability Analysis

Backward reachability analysis of uMPL systems concerns the computation of the set of all states that may lead to a given set of final positions via the uMPL dynamics, at a particular event step or over a set of consecutive events. The uMPL systems are defined in an uncertainty context in which the definitions of backward reach sets and backward reach tube are given by: Definition 5.13 (backward reach set) Given an uMPL system and a nonempty set of final positions 𝑋 0 ⊆ R 𝑛 , the backward reach set 𝑋 -𝑁 is the set of all states x(-𝑁 ) that may lead to 𝑋 0 in 𝑁 steps of the uMPL dynamics, possibly by application of controls. Definition 5.14 (backward reach tube) Given an uMPL system and a nonempty set of initial conditions 𝑋 0 ⊆ R 𝑛 , the reach tube is defined by the set-valued function 𝑘 ↦ → 𝑋 -𝑘 for any given 𝑘 > 0 where 𝑋 -𝑘 is defined.

Remark 5. 15 Note that the definition of backward reach set presented here differs from that presented in section 3.2 (see definition 3.7). Consider, for example, that 𝑋 -1 is the backward reach set of a given set of final positions 𝑋 0 . In the deterministic context (MPL systems), for all x ∈ 𝑋 -1 we have that 𝐴 ⊗ x ∈ 𝑋 0 , and therefore ℐ 𝐴 {𝑋 -1 } ⊆ 𝑋 0 . In the uncertain context (uMPL systems), for all x ∈ 𝑋 -1 it is assured that it is possible to reach 𝑋 0 from x, i.e., there is at least one 𝐴 ∈ [A] such that 𝐴 ⊗ x ∈ 𝑋 0 . However, in general, this does not hold for all 𝐴 ∈ [A], i.e, it may exists some 𝐴 ∈ [A] such that 𝐴 ⊗ x ̸ ∈ 𝑋 0 . Therefore, in the general case, we have that

ℐ [A] {𝑋 -1 } ̸ ⊆ 𝑋 0 .
Sections 5.2.1 and 5.2.2 present a procedure to compute the backward reach tube for autonomous and nonautonomous uMPL systems, respectively.

Backward Reachability Analysis of Autonomous uMPL systems

For autonomous uMPL systems, given a set of final positions 𝑋 0 , the backward reach set 𝑋 -𝑘 at the event step 𝑘 can be recursively calculated as the inverse image of the reach set 𝑋 -𝑘+1 w.r.t the uMPL dynamics:

𝑋 -𝑘 = ℐ -1 [A] {𝑋 -𝑘+1 } = {x ∈ R 𝑛 : ∃𝐴 ∈ [A] : 𝐴 ⊗ x ∈ 𝑋 -𝑘+1 }.
(5.20)

From Corollary 5.2 it can be shown that if 𝑋 0 can be represented by a union of 𝑞 0 DBM, then 𝑋 -𝑘 can be represented by a union of 𝑞 -𝑘 DBM, for each 𝑘 ∈ N.

Given the set of final conditions 𝑋 0 , computing the backward reach tube for 𝑘 ∈ {1, ..., 𝑁 } can be done as follows: first, construct the partitioned uMPL system generated by 𝐴(𝑘); then, for each 𝑘 ∈ {1, ..., 𝑁 }, compute the inverse image of 𝑋 𝑘-1 w.r.t. the partitioned uMPL system. The worst-case complexity to compute ℐ -1

[A] {𝑋 -𝑘+1 }, for each 𝑘 ∈ N is 𝒪(𝑞 -𝑘+1 𝑛 𝑛+3 ) (see remark 5.3). Thus, the overall complexity is 𝒪(𝑛 𝑛+3 ∑ 𝑁 𝑘=1 𝑞 -𝑘+1 ). The set of all states that may lead to a given set of final positions 𝑋 0 in 𝑁 event steps can be computed using a one-shot procedure. Given a nonempty set of final conditions 𝑋 0 , the backward reach set 𝑋 -𝑁 is given by:

𝑋 -𝑁 = ℐ -1 [A] ⊗𝑁 {𝑋 0 } = {x ∈ R 𝑛 : 𝒜 ∈ [A] ⊗𝑁 : 𝒜 ⊗ x ∈ 𝑋 0 }.
(5.21)

A general procedure for computing 𝑋 -𝑁 is: 1) compute [A] ⊗𝑁 ; then, 2) construct the partitioned uMPL system generated by [A] ⊗𝑁 ; and, 3) compute the inverse image of 𝑋 0 w.r.t. the obtained partitioned system.

Example 5.16 Consider the autonomous uMPL system given by: x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1), where 𝐴(𝑘) ∈ ⎛ ⎝ [4, 6] [3, 5] [3, 7] [4, 5] ⎞ ⎠ .

In example 4.11 this system was represented as a collection of DBM D = {𝐷 (1,1) , 𝐷 (2,1) , 𝐷 (2,2) }.

Given 𝑋 0 = {x ∈ R 2 𝑚𝑎𝑥 : 0 ≤ 𝑥 1 ≤ 1, 1 ≤ 𝑥 2 ≤ 3}
, the backward reach sets 𝑋 -𝑘 for 𝑘 ∈ {1, 2} are computed in the following. Note that the set 𝑋 0 can be represented by the following DBM:

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 0 ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (-1, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (3, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2
To compute the backward reach set 𝑋 -1 we must compute the inverse image of 𝑋 0 w.r.t each component g ∈ {(1, 1), (2, 1), (2, 2)} of the partitioned uMPL system. According to algorithm 5.2, the inverse image of 𝐷 (𝑋 0 ) w.r.t. a component g of the partitioned uMPL system can be computed as follows: first, we compute the Cartesian product of 𝐷 (𝑋 0 ×𝑈 1 ) and

𝐷 (R 2 ) : 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (𝑋 0 ×R 2 ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (-1, ≤) 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 1 (3, ≤) 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑥 1 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑥 2
Then we compute the intersection of 𝐷 (𝑋 0 ×R 2 ) and 𝐷 g ; next we compute the canonical form of the intersection and finally we project the canonical form over the state variables 𝑥 1 and 𝑥 2 . For the component g = (1, 1) we have that interserction of 𝐷 (𝑋 0 ×R 2 ) and 𝐷 (1,1) is given by:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝐷 (𝑋 0 ×R 2 ) ⊕ ℬ 𝐷 (1,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (-1, ≤) 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ 𝜀 ℬ (6, ≤) 𝜀 ℬ 𝑥 ′ 1 (3, ≤) 𝜀 ℬ 𝑒 ℬ (7, ≤) 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-4, ≤) (-3, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 𝜀 ℬ (-3, ≤) (-4, ≤) (1, ≤) 𝑒 ℬ 𝑥 2
The canonical form of the intersection is given by:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑐𝑓 (𝐷 (𝑋 0 ×R 2 ) ⊕ ℬ 𝐷 (1,1) ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (-1, ≤) (6, ≤) 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ 𝑒 ℬ (6, ≤) 𝜀 ℬ 𝑥 ′ 1 (3, ≤) (3, ≤) 𝑒 ℬ (7, ≤) 𝜀 ℬ 𝑥 ′ 2 (-3, ≤) (-4, ≤) (-4, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (-2, ≤) (-3, ≤) (-4, ≤) (1, ≤) 𝑒 ℬ 𝑥 2
And the orthogonal projection over the states variables 𝑥 1 and 𝑥 2 is given by:

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 -1 | g=(1,1) ) = 𝑐𝑓 (𝐷 (𝑋 0 ×R 2 ) ⊕ ℬ 𝐷 (1,1) )⌈ x = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (6, ≤) 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (-3, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (-2, ≤) (1, ≤) 𝑒 ℬ 𝑥 2
Applying the same procedure to the components g = (2, 1) and g = (2, 2) we obtain:

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 -1 | g=(2,1) ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (6, ≤) (5, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (-3, ≤) 𝑒 ℬ (-1, ≤) 𝑥 1 (-2, ≤) (2, ≤) 𝑒 ℬ 𝑥 2 𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 -1 | g=(2,2) ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ (4, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (-4, ≤) 𝑒 ℬ (-2, ≤) 𝑥 1 (-2, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2
Thus, the backward reach set 𝑋 -1 can be represented by the collection of DBM given by

D 𝑋 -1 = {𝐷 (𝑋 -1 | g=(1,1) ) , 𝐷 (𝑋 -1 | g=(2,1) ) , 𝐷 (𝑋 -1 | g=(2,2) ) }. Moreover, we have that 𝑋 -1 = ℛ(𝐷 (𝑋 -1 | g=(1,1) ) ) ∪ ℛ(𝐷 (𝑋 -1 | g=(2,1) ) ) ∪ ℛ(𝐷 (𝑋 -1 | g=(2,2) ) ) = {x ∈ R 2 : -6 ≤ 𝑥 1 ≤ -3, 𝑥 2 ≤ -2, 𝑥 2 -𝑥 1 ≤ 1} ∪ {x ∈ R 2 : -6 ≤ 𝑥 1 ≤ -3, -5 ≤ 𝑥 2 ≤ -2, 1 ≤ 𝑥 2 -𝑥 1 ≤ 2} ∪ {x ∈ R 2 : 𝑥 1 ≤ -4, -4 ≤ 𝑥 2 ≤ -2, 𝑥 2 -𝑥 1 ≥ 2}.
The backward reach set 𝑋 -2 can be obtained by computing the inverse image of each DBM representing 𝑋 -1 w.r.t each component g ∈ {(1, 1), (2, 1), (2, 2)} of the partitioned uMPL system, which yields

𝑋 -2 = {x ∈ R 2 : -12 ≤ 𝑥 1 ≤ -7, 𝑥 2 ≤ -6, 𝑥 2 -𝑥 1 ≤ 1} ∪ {x ∈ R 2 : -13 ≤ 𝑥 1 ≤ -7, -11 ≤ 𝑥 2 ≤ -6, 1 ≤ 𝑥 2 -𝑥 1 ≤ 2} ∪ {x ∈ R 2 : 𝑥 1 ≤ -8, -11 ≤ 𝑥 2 ≤ -6, 𝑥 2 -𝑥 1 ≥ 2}.
The backward reach sets 𝑋 -1 and 𝑋 -2 are shown in Figure 12.

x 1 -16 -14 -12 -10 -8 -6 -4 -2 0 2 x 2 -14 -12 -10 -8 -6 -4 -2 0 2 X 0 R ( 1 , 1 ) R ( 2 , 1 ) X -2 R ( 2 , 2 )
X -1

Figure 12 -backward reach tube for 𝑘 ∈ {1, 2} (autonomous uMPL system).

Backward Reachability Analysis of Nonautonomous uMPL systems

For non-autonomous uMPL systems, given a set of final conditions 𝑋 0 and the set of inputs 𝑈 -𝑘+1 for each 𝑘 ∈ N, the backward reach set 𝑋 -𝑘 at the event step 𝑘 can be recursively calculated as the inverse image of 𝑋 -𝑘+1 :

𝑋 -𝑘 = ℐ -1 𝐹 {𝑋 -𝑘+1 } = {x ∈ R 𝑛 : ∃u ∈ 𝑈 -𝑘+1 , ∃𝐹 ∈ [F] : 𝐹 ⊗ y ∈ 𝑋 -𝑘+1 }.
( Given 𝑋 -𝑘+1 and 𝑈 -𝑘+1 the backward reach set 𝑋 -𝑘 = ℐ -1

[F] {𝑋 -𝑘+1 } can be computed as follows: 1) compute de Cartesian product 𝑋 -𝑘+1 ×R 𝑛 ×𝑈 -𝑘+1 ; then, 2) intersect the Cartesian product with each component of the partitioned uMPL system generated by [F]; next, 3) compute the canonical form of the intersections, and finally, 4) project the canonical form over the state variables at event step -𝑘. The worst-case complexity to compute ℐ -1

[F] {𝑋 -𝑘+1 } critically depends on the canonical form computation (step 3) and is 𝒪(q -𝑘+1 (𝑛 + 𝑚) 𝑛+3 ), where: q-𝑘+1 = 𝑞 -𝑘+1 𝑟 -𝑘+1 ; and 𝑞 -𝑘+1 and 𝑟 -𝑘+1 are, respectively, the cardinality of the DBM union set representing 𝑋 -𝑘+1 and 𝑈 -𝑘+1 .

Remark 5.17 Note that, the Cartesian product of finitely many DBM is a collection of finitely many DBM, the intersection of finitely many DBM is a collection of finitely many DBM, the canonical form of a DBM is a DBM and the projection of a DBM onto a subset of its variables is a DBM. Therefore, if 𝑋 -𝑘+1 and 𝑈 -𝑘+1 can be represented by collections of finitely many DBM then 𝑋 -𝑘 can also be represented by a collection of finitely many DBM. By induction, if 𝑋 0 and 𝑈 -𝑘+1 , for each 𝑘 ∈ N, can be represented by collections of finitely many DBM, then 𝑋 -𝑘 can also be represented by a collection of finitely many DBM for all 𝑘 ∈ N.

Given 𝑋 0 and the set of control inputs 𝑈 -𝑘+1 for each 𝑘 ∈ N, the backward reach tube for 𝑘 ∈ {1, ..., 𝑁 } can be computed by calculating 𝑋 -𝑘 = ℐ -1

[F] {𝑋 -𝑘+1 } for 𝑘 = 1, 2, ..., 𝑁 . Thus, the overall complexity to compute backward reach tube is 𝒪((𝑛 + 𝑚) 𝑛+3 ∑ 𝑁 𝑘=1 q-𝑘+1 ). The following is an extension to uMPL systems of the one-shot procedure for computing the backward reach set 𝑋 -𝑁 presented in section 3.2.2. Given a nonempty set of final conditions 𝑋 0 , the set of all states that may lead to 𝑋 0 in 𝑁 event steps is given by:

𝑋 -𝑁 = {x(-𝑁 ) ∈ R 𝑛 : ∃u(-𝑁 + 1) ∈ 𝑈 -𝑁 +1 , ..., u(0) ∈ 𝑈 0 : ([A] ⊗𝑁 , [A] ⊗(𝑁 -1) ⊗ [B] , ..., [B]) ⊗ (x(-𝑁 ) 𝑇 u(-𝑁 + 1) 𝑇 u(0) 𝑇 ) 𝑇 ∈ 𝑋 0 }. (5.23)
Given the matrices [A] and [B], a set of final positions 𝑋 0 and a sequence of input sets 𝑈 -𝑁 +1 , ..., 𝑈 0 , a general procedure for computing 𝑋 -𝑁 is given by: 1) generate the matrix ([A] ⊗𝑁 , [A] ⊗(𝑁 -1) ⊗[B] , ..., [B]); then, 2) Construct the partitioned uMPL system generated by this matrix; and, 3) compute the inverse image of 𝑋 0 w.r.t the obtained partitioned system; 4) intersect the inverse image with R 𝑛 × 𝑈 1 × ... × 𝑈 𝑁 ; and finally, 5) project the intersection over the state variables. The complexity of this procedure is the same as the one-shot procedure for the forward case presented in section 5.1.2.

Example 5.18 Consider the nonautonomous uMPL system given by:

x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1) ⊕ 𝐵(𝑘) ⊗ u(𝑘),
where,

𝐴(𝑘) ∈ ⎛ ⎝ 2 [2, 4] [3, 5] [3, 4] ⎞ ⎠ and 𝐵(𝑘) ∈ ⎛ ⎝ 𝑒 𝜀 ⎞ ⎠ .
In example 4.12 this system was represented as a collection of DBM D = {𝐷 (1,1) , 𝐷 (2,1) , 𝐷 (2,2) , 𝐷 (3,1) , 𝐷 (3,2) }.

Given 𝑋 0 = {x ∈ R 2 𝑚𝑎𝑥 : 0 ≤ 𝑥 1 ≤ 1, 0 ≤ 𝑥 2 ≤ 3}
, and the sequence of controls 𝑢 1 (0) = -0.5 and 𝑢 1 (-1) = -7.5, the backward reach sets 𝑋 -𝑘 for 𝑘 ∈ {1, 2} are computed in the following.

The set of final positions 𝑋 0 and the control input 𝑢 1 (0) can be represented by the following DBM:

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 0 ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (-2, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (5, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2 𝑥 0 𝑢 1 𝐷 (𝑈 0 ) = ⎛ ⎝ 𝑒 ℬ (0.5, ≤) ⎞ ⎠ 𝑥 0 (-0.5, ≤) 𝑒 ℬ 𝑢 1
In order to compute 𝑋 -1 we must, first, compute the Cartesian product 𝑋 0 × R 2 × 𝑈 0 , which can be represented by:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (𝑋 0 ×R 2 ×𝑈 0 ) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (-2, ≤) 𝜀 ℬ 𝜀 ℬ (0.5, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 1 (5, ≤) 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 1 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝜀 ℬ 𝑥 2 (-0.5, ≤) 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝜀 ℬ 𝑒 ℬ 𝑢 1
Then, for each g ∈ {(1, 1), (2, 1), (2, 2), (3, 1), (3, 2)}, we compute the intersection of 𝐷 (𝑋 0 ×R 2 ×𝑈 0 ) and 𝐷 g , the DBM that represents the component g; next, we compute the canonical form representation of the intersection; and finally, we compute the orthogonal projection of the canonical form over the variables 𝑥 1 and 𝑥 2 .

For the component g = (1, 1) we have that the intersection of 𝐷 (𝑋 0 ×R 2 ×𝑈 0 ) and 𝐷 (1,1) is given by:

𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 𝐷 (𝑋 0 ×R 2 ×𝑈 0 ) ⊕ ℬ 𝐷 (1,1) = ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (-2, ≤) 𝜀 ℬ 𝜀 ℬ (0.5, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ 𝜀 ℬ (2, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 1 (5, ≤) 𝜀 ℬ 𝑒 ℬ (5, ≤) 𝜀 ℬ 𝜀 ℬ 𝑥 ′ 2 𝜀 ℬ (-2, ≤) (-3, ≤) 𝑒 ℬ 𝜀 ℬ 𝜀 ℬ 𝑥 1 𝜀 ℬ (-2, ≤) (-3, ≤) (-2, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 2 (-0.5, ≤) 𝑒 ℬ 𝜀 ℬ (2, ≤) 𝜀 ℬ 𝑒 ℬ 𝑢 1
The canonical form is given by:

𝑐𝑓 (𝐷 (𝑋 0 ×R 2 ×𝑈 0 ) ⊕ ℬ 𝐷 (1,1) ) = 𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝑥 1 𝑥 2 𝑢 1 ⎛ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ (-2, ≤) (2, ≤) 𝜀 ℬ (0.5, ≤) ⎞ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ (-1, ≤) (2, ≤) 𝜀 ℬ (1.5, ≤) 𝑥 ′ 1 (4, ≤) (3, ≤) 𝑒 ℬ (5, ≤) 𝜀 ℬ (4.5, ≤) 𝑥 ′ 2 (-1, ≤) (-2, ≤) (-3, ≤) 𝑒 ℬ 𝜀 ℬ (-0.5, ≤) 𝑥 1 (-3, ≤) (-4, ≤) (-5, ≤) (-2, ≤) 𝑒 ℬ (-2.5, ≤) 𝑥 2 (-0.5, ≤) (-0.5, ≤) (-2.5, ≤) (1.5, ≤) 𝜀 ℬ 𝑒 ℬ 𝑢 1
And the orthogonal projection of the canonical form over the state variables 𝑥 1 and 𝑥 2 is given by:

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 -1 | g=(1,1) ) = 𝑐𝑓 (𝐷 (𝑋 0 ×R 2 ×𝑈 0 ) ⊕ ℬ 𝐷 (1,1) )⌈ x = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (2, ≤) 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (-1, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (-3, ≤) (-2, ≤) 𝑒 ℬ 𝑥 2
Applying the same procedure to the components g = (2, 1), g = (2, 2), g = (3, 1) and g = (3, 2) we obtain:

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 -1 | g=(2,1) ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (3, ≤) (4, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (-1, ≤) 𝑒 ℬ (2, ≤) 𝑥 1 (-1, ≤) (1, ≤) 𝑒 ℬ 𝑥 2 𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 -1 | g=(2,2) ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝜀 ℬ (2, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (-2, ≤) 𝑒 ℬ (-1, ≤) 𝑥 1 (-1, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2 𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 -1 | g=(3,1) ) = ⎛ ⎜ ⎜ ⎜ ⎝ ⊤ ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (-1, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (-1, ≤) (1, ≤) 𝑒 ℬ 𝑥 2 𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 -1 | g=(3,2) ) = ⎛ ⎜ ⎜ ⎜ ⎝ ⊤ ℬ 𝜀 ℬ 𝜀 ℬ ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (-1, ≤) 𝑒 ℬ (-1, ≤) 𝑥 1 (-1, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2
Note that 𝐷 (𝑋 -1 | g=(3,1) ) and 𝐷 (𝑋 -1 | g=(3,2) ) are empty DBM, and therefore the inverse image of 𝑋 0 w.r.t. the components g = (3, 1) and g = (3, 2) is empty. Thus, the backward reach set 𝑋 -1 can be represented by the collection of DBM given by D

𝑋 -1 = {𝐷 (𝑋 -1 | g=(1,1) ) , 𝐷 (𝑋 -1 | g=(2,1) ) , 𝐷 (𝑋 -1 | g=(2,2) ) }. Moreover, we have that 𝑋 -1 = ℛ(𝐷 (𝑋 -1 | g=(1,1) ) )∪ℛ(𝐷 (𝑋 -1 | g=(2,1) ) )∪ ℛ(𝐷 (𝑋 -1 | g=(2,2) ) ) = {x ∈ R 2 : -2 ≤ 𝑥 1 ≤ -1, 𝑥 2 ≤ -3, 𝑥 2 -𝑥 1 ≤ -2} ∪ {x ∈ R 2 : -3 ≤ 𝑥 1 ≤ -1, -4 ≤ 𝑥 2 ≤ -1, -2 ≤ 𝑥 2 -𝑥 1 ≤ 1} ∪ {x ∈ R 2 : 𝑥 1 ≤ -2, -2 ≤ 𝑥 2 ≤ -1, 𝑥 2 -𝑥 1 ≥ 1}.
The backward reach set 𝑋 -2 can be obtained by computing the inverse image of each DBM representing 𝑋 -1 w.r.t each component g ∈ {(1, 1), (2, 1), (2, 2), (3, 1), (3, 2)} of the partitioned uMPL system, which yields

𝑋 -2 = {x ∈ R 2 : -7 ≤ 𝑥 1 ≤ -4, 𝑥 2 ≤ -4, 𝑥 2 -𝑥 1 ≤ 0} ∪ {x ∈ R 2 : 𝑥 1 ≤ -4, -7 ≤ 𝑥 2 ≤ -4, 𝑥 2 -𝑥 1 ≥ 0}.
The backward reach sets 𝑋 -1 and 𝑋 -2 are shown in Figure 13.

x 1 -10 -8 -6 -4 -2 0 x 2 -10 -5 0 5 X 0 X -2 X -1
Figure 13 -backward reach tube for 𝑘 ∈ {1, 2} (nonautonomous uMPL system).

Image and inverse image of a Point

Every point in R 𝑛 can be represented by a DBM in ℬ (𝑛+)×(𝑛+1) , and therefore the procedures presented in sections 5.1 and 5.2 can be used to compute the image and the inverse image of a point w.r.t. an uMPL system. However computing the image and the inverse image of a point w.r.t. an uMPL system can be done by considering a less expensive approach.

In the following sections, we present alternative procedures to compute the image and the inverse image of a point w.r.t. a generic uMPL system given by:

z(𝑘) = 𝐴 ⊗ x(𝑘 -1), 𝐴 ∈ [A] , 𝐴 ∈ R 𝑛×𝑝
(5.24)

Image of a Point

In section 4.1 it was demonstrated that given x(𝑘 -1) then 𝑧 𝑖 (𝑘) is in the interval defined by:

[z 𝑖 ] (𝑘) = ⎡ ⎣ 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)}, 𝑝 ⨁ 𝑗=1 {𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 (𝑘 -1)} ⎤ ⎦ .
Therefore, it is straightforward to see that the image of a point x w.r.t the uMPL system is given by:

ℐ [A] {x} = 𝑛 ⋂ 𝑖=1 ⎧ ⎨ ⎩ z ∈ R 𝑛 : 𝑝 ⨁ 𝑗=1 𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 ≤ 𝑧 𝑖 ≤ 𝑝 ⨁ 𝑗=1 𝑎 𝑖𝑗 ⊗ 𝑥 𝑗 ⎫ ⎬ ⎭ (5.25) Or equivalently, ℐ [A] {x} = { z ∈ R 𝑛 : 𝐴 ⊗ x ≤ z ≤ 𝐴 ⊗ x } (5.26)
Remark 5.19 Note that the image of a point w.r.t an uMPL system is a hyperrectangle. Although this kind of set can be represented and manipulated using a simpler data structure, we will keep the DBM. This can be useful if we have a set of initial positions 𝑋 0 given by a single point and we want to compute a reach set for some 𝑘 > 1. In this case we could compute the reach set 𝑋 1 using equation (5.25) and the next reach sets would be calculated using the procedure presented in section 5.1.

Example 5.20 Consider the following uMPL system:

x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1), 𝐴(𝑘) ∈ [A] ,
where

[A] = ⎛ ⎝ [1, 3] 2 [2, 4] [3, 6] ⎞ ⎠ .
Given x(0) = (0 0) 𝑇 , we have that,

ℐ [A] {x(0)} = { x ∈ R 2 : (1 ⊗ 0) ⊕ (2 ⊗ 0) ≤ 𝑥 1 ≤ (3 ⊗ 0) ⊕ (2 ⊗ 0) } ∩ { x ∈ R 2 : (2 ⊗ 0) ⊕ (3 ⊗ 0) ≤ 𝑥 2 ≤ (4 ⊗ 0) ⊕ (6 ⊗ 0) } = { x ∈ R 2 : 2 ≤ 𝑥 1 ≤ 3 } ∩ { x ∈ R 2 : 3 ≤ 𝑥 2 ≤ 6 }
Moreover, this set can be represented by the following DBM:

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 1 ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-2, ≤) (-3, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (3, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (6, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2

Inverse Image of a Point

The inverse image of a given point z w.r.t. an uMPL system is defined as:

ℐ -1 [A] {z} = {x ∈ R 𝑝 : ∃𝐴 ∈ [A] : 𝐴 ⊗ x = z}.
(5.27)

Equivalently, it can be stated that x ∈ ℐ -1

[A] {z} if and only if z is in the image of x w.r.t the uMPL system , i.e.,

x ∈ ℐ -1 [A] {z} ⇔ 𝐴 ⊗ x ≤ z ≤ 𝐴 ⊗ x.
(5.28)

Thus, x has to satisfy two restictions:

𝐴 ⊗ x ≤ z, (5.29) 𝐴 ⊗ x ≥ z.
(5.30)

Then, the inverse image of a point z can be represented by the intersection of two sets:

ℐ -1 [A] {z} = 𝑈 ∩ 𝐿 (5.31)
where 𝑈 is the set of all x that satisfies (5.29) and 𝐿 is the set of all x that satisfies (5.30).

By using residuation (see section 2.2), it can be demonstrated that the set 𝑈 is given by:

𝑈 = {x ∈ R 𝑝 : x ≤ 𝐴∖ ∘z} .
(5.32)

where ∖ ∘ is the residuation operator.

On the other hand, the set 𝐿 can be expressed as: .33) where 𝐴 [𝑖, :] is the 𝑖-th row of matrix 𝐴.

𝐿 = 𝑛 ⋂ 𝑖=1 { x ∈ R 𝑝 : 𝑧 𝑖 ≤ 𝐴[𝑖, :] ⊗ x } , ( 5
We seek for a representation of 𝐿 in which x is not implicit. In this sense, we compute the complement of 𝐿, which is given by:

𝐿 𝑐 = 𝑛 ⋃ 𝑖=1 { x ∈ R 𝑝 : 𝐴[𝑖, :] ⊗ x < 𝑧 𝑖 } (5.34)
By using residuation we have that:

𝐿 𝑐 = 𝑛 ⋃ 𝑖=1 { x ∈ R 𝑝 : x < 𝑋 (𝑖) } (5.35)
where,

𝑋 (𝑖) = 𝐴[𝑖, :]∖ ∘𝑧 𝑖 .
(5.36)

Equivalently, equation (5.35) can be expressed as:

𝐿 𝑐 = 𝑛 ⋃ 𝑖=1 ⎛ ⎝ 𝑝 ⋂ 𝑗=1 { x ∈ R 𝑝 : 𝑥 𝑗 < 𝑋 (𝑖) 𝑗 } ⎞ ⎠ .
(5.37)

The set 𝐿 can be obtained by computing the complement of 𝐿 𝑐 , i.e., 𝐿 = (𝐿 𝑐 ) 𝑐 . The complement of 𝐿 𝑐 is computed in the following.

Consider the intersection of 𝑛 sets noted by ⋂ 𝑛 𝑗=1 𝒜 𝑗 . The complement of the intersection is given by:

⎛ ⎝ 𝑛 ⋂ 𝑗=1 𝒜 𝑗 ⎞ ⎠ 𝑐 = 𝑛 ⋃ 𝑗=1 𝒜 𝑐 𝑗 .
(5.38)

However, if we want to represent the complement by a union of pairwise disjoint sets, equation (5.38) can be expressed as:

⎛ ⎝ 𝑛 ⋂ 𝑗=1 𝒜 𝑗 ⎞ ⎠ 𝑐 = 𝒜 𝑐 1 ∪ [𝒜 1 ∩ 𝒜 𝑐 2 ] ∪ [𝒜 1 ∩ 𝒜 2 ∩ 𝒜 𝑐 3 ] ∪ • • • ∪ [( 𝑛-1 ⋂ 𝑘=1 𝒜 𝑘 ) ∩ 𝒜 𝑐 𝑛 ] = 𝑛 ⋃ 𝑗=1 ⎡ ⎣ ⎛ ⎝ 𝑗-1 ⋂ 𝑘=1 𝒜 𝑘 ⎞ ⎠ ∩ 𝒜 𝑐 𝑗 ⎤ ⎦ .
(5.39)

where

⋂ 0 𝑘=1 𝒜 𝑘 is set to R 𝑝 .
Example 5.21 Let us compute the complement of the set {x ∈ R

3 : x < ( 0 0 0 ) 𝑇 }. This set can be expressed as {x ∈ R 3 : 𝑥 1 < 0} ⏟ ⏞ 𝒜 1 ∩ {x ∈ R 3 : 𝑥 2 < 0} ⏟ ⏞ 𝒜 2 ∩ {x ∈ R 3 : 𝑥 3 < 0} ⏟ ⏞ 𝒜 3
. Thus, according to (5.39), we have that:

{x ∈ R 3 : x < ( 0 0 0 ) 𝑇 } 𝑐 = {x ∈ R 3 : 𝑥 1 ≥ 0} ∪ [ {x ∈ R 3 : 𝑥 1 < 0} ∩ {x ∈ R 3 : 𝑥 2 ≥ 0} ] ∪ [ {x ∈ R 3 : 𝑥 1 < 0} ∩ {x ∈ R 3 : 𝑥 2 < 0} ∩ {x ∈ R 3 : 𝑥 3 ≥ 0} ]
Therefore, according to (5.39), the complement each term of union (5.37) can be computed as:

⎛ ⎜ ⎜ ⎜ ⎝ 𝑝 ⋂ 𝑗=1 { x ∈ R 𝑝 : 𝑥 𝑗 < 𝑋 (𝑖) 𝑗 } ⏟ ⏞ 𝒜 𝑗 ⎞ ⎟ ⎟ ⎟ ⎠ 𝑐 = 𝑝 ⋃ 𝑗=1 ⎡ ⎢ ⎢ ⎢ ⎣ ⎛ ⎜ ⎜ ⎝ 𝑗-1 ⋂ 𝑘=1 { x ∈ R 𝑝 : 𝑥 𝑘 < 𝑋 (𝑖) 𝑘 } ⏟ ⏞ 𝒜 𝑘 ⎞ ⎟ ⎟ ⎠ ∩ { x ∈ R 𝑝 : 𝑥 𝑗 ≥ 𝑋 (𝑖) 𝑗 } ⏟ ⏞ 𝒜 𝑐 𝑗 ⎤ ⎥ ⎥ ⎥ ⎦
(5.40) where

⋂ 0 𝑘=1 { x ∈ R 𝑝 : 𝑥 𝑘 < 𝑋 (𝑖) 𝑘 } is set to R 𝑝 .
Then, the complement of 𝐿 𝑐 is: .42) we have that:

𝐿 = (𝐿 𝑐 ) 𝑐 = ⎡ ⎣ 𝑛 ⋃ 𝑖=1 ⎛ ⎝ 𝑝 ⋂ 𝑗=1 { x ∈ R 𝑝 : 𝑥 𝑗 < 𝑋 (𝑖) 𝑗 } ⎞ ⎠ ⎤ ⎦ 𝑐 = 𝑛 ⋂ 𝑖=1 ⎡ ⎣ ⎛ ⎝ 𝑝 ⋂ 𝑗=1 { x ∈ R 𝑝 : 𝑥 𝑗 < 𝑋 (𝑖) 𝑗 } ⎞ ⎠ 𝑐 ⎤ ⎦ = 𝑛 ⋂ 𝑖=1 ⎛ ⎝ 𝑝 ⋃ 𝑗=1 ⎡ ⎣ ⎛ ⎝ 𝑗-1 ⋂ 𝑘=1 { x ∈ R 𝑝 : 𝑥 𝑘 < 𝑋 (𝑖) 𝑘 } ⎞ ⎠ ∩ { x ∈ R 𝑝 : 𝑥 𝑗 ≥ 𝑋 (𝑖) 𝑗 } ⎤ ⎦ ⎞ ⎠ (5.41) Defining: 𝑠𝑒𝑡 𝑖 𝑗 = 𝑗-1 ⋂ 𝑘=1 { x ∈ R 𝑝 : 𝑥 𝑘 < 𝑋 (𝑖) 𝑘 } ∩ { x ∈ R 𝑝 : 𝑥 𝑗 ≥ 𝑋 (𝑖) 𝑗 } , ( 5
𝐿 = 𝑛 ⋂ 𝑖=1 𝑝 ⋃ 𝑗=1 𝑠𝑒𝑡 𝑖 𝑗 = ( 𝑠𝑒𝑡 1 1 ∪ • • • ∪ 𝑠𝑒𝑡 1 𝑝 ) ∩ ( 𝑠𝑒𝑡 2 1 ∪ • • • ∪ 𝑠𝑒𝑡 2 𝑝 ) ∩ • • • ∩ ( 𝑠𝑒𝑡 𝑚 1 ∪ • • • ∪ 𝑠𝑒𝑡 𝑛 𝑝 ) = ( 𝑠𝑒𝑡 1 1 ∩ 𝑠𝑒𝑡 2 1 ∩ • • • ∩ 𝑠𝑒𝑡 𝑛 1 ) ∪ ( 𝑠𝑒𝑡 1 1 ∩ 𝑠𝑒𝑡 2 1 ∩ • • • ∩ 𝑠𝑒𝑡 𝑛 2 ) ∪ • • • ∪ ( 𝑠𝑒𝑡 1 𝑝 ∩ 𝑠𝑒𝑡 2 𝑝 ∩ • • • ∩ 𝑠𝑒𝑡 𝑛 𝑝 )
(5.43) where 𝑈 is defined by (5.32).

Note that, the inverse image of a point w.r.t. an uMPL system can be represented by a collection of pairwise disjoint hyperrectangles.

Example 5.22 Consider the autonomous uMPL system given by:

x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1),
where,

𝐴(𝑘) ∈ ⎛ ⎝ [1, 4] [2, 3] [1, 2] [0, 4] ⎞ ⎠ . Given x(1) = (5, 4) 𝑇 , let us compute 𝑋 0 = ℐ -1 [A] {x(1)} = ⋃ g∈{1,2} 2 (𝑆𝐸𝑇 g ∩ 𝑈 )
. According to equation (5.32), the set 𝑈 is given by: 𝑈 = {x ∈ R 2 : x ≤ 𝐴∖ ∘x(1)} , where,

𝐴∖ ∘x(1) = ⎛ ⎝ 1 2 1 0 ⎞ ⎠ ∖ ∘ ⎛ ⎝ 5 4 ⎞ ⎠ = ⎛ ⎝ (5 -1) ∧ (4 -1) (5 -2) ∧ (4 -0) ⎞ ⎠ = ⎛ ⎝ 3 3 ⎞ ⎠ .
Thus, 𝑈 = {x ∈ R 2 : 𝑥 1 ≤ 3, 𝑥 2 ≤ 3}. In order to compute the sets 𝑠𝑒𝑡 𝑖 𝑗 , 𝑖, 𝑗 ∈ {1, 2} , we must compute first 𝑋 (𝑖) = 𝐴[𝑖, :]∖ ∘𝑥 𝑖 (1), for 𝑖 ∈ {1, 2}:

𝑋 (1) = 𝐴[1, :]∖ ∘𝑥 1 (1) = ( 4 3 ) ∖ ∘ ( 5 ) = ⎛ ⎝ (5 -4) (5 -3) ⎞ ⎠ = ⎛ ⎝ 1 2 ⎞ ⎠ 𝑋 (2) = 𝐴[2, :]∖ ∘𝑥 2 (1) = ( 2 4 ) ∖ ∘ ( 4 ) = ⎛ ⎝ (4 -2) (4 -4) ⎞ ⎠ = ⎛ ⎝ 2 0 ⎞ ⎠ .
According to (5.42), the sets 𝑠𝑒𝑡 𝑖 𝑗 , 𝑖, 𝑗 ∈ {1, 2}, are given by:

𝑠𝑒𝑡 1 1 = { x ∈ R 2 : 𝑥 1 ≥ 1 } 𝑠𝑒𝑡 1 2 = { x ∈ R 2 : 𝑥 1 < 1, 𝑥 2 ≥ 2 } 𝑠𝑒𝑡 2 1 = { x ∈ R 2 : 𝑥 1 ≥ 2 } 𝑠𝑒𝑡 2 2 = { x ∈ R 2 : 𝑥 1 < 2, 𝑥 2 ≥ 0 } Now, for each g ∈ {1, 2} 2 = {(1, 1), (1, 2), ( 2
, 1), (2, 2)} we compute the sets 𝑆𝐸𝑇 g as follows:

𝑆𝐸𝑇 (1,1) = 𝑠𝑒𝑡 1 1 ∩ 𝑠𝑒𝑡 2 1 = { x ∈ R 2 : 𝑥 1 ≥ 2 } , 𝑆𝐸𝑇 (1,2) = 𝑠𝑒𝑡 1 1 ∩ 𝑠𝑒𝑡 2 2 = { x ∈ R 2 : 1 ≤ 𝑥 1 < 2, 𝑥 2 ≥ 0 } , 𝑆𝐸𝑇 (2,1) = 𝑠𝑒𝑡 1 2 ∩ 𝑠𝑒𝑡 2 1 = ∅, 𝑆𝐸𝑇 (2,2) = 𝑠𝑒𝑡 1 2 ∩ 𝑠𝑒𝑡 2 2 = { x ∈ R 2 : 𝑥 1 < 1, 𝑥 2 ≥ 2 } .
Finally we compute 𝑋 0 = ⋃ g∈{1,...,𝑝} 𝑛 (𝑆𝐸𝑇 g ∩ 𝑈 ) (see (5.46)):

𝑋 0 = (𝑆𝐸𝑇 (1,1) ∩ 𝑈 ) ∪ (𝑆𝐸𝑇 (1,2) ∩ 𝑈 ) ∪ (𝑆𝐸𝑇 (2,2) ∩ 𝑈 ) = { x ∈ R 2 : 2 ≤ 𝑥 1 ≤ 3, 𝑥 2 ≤ 3 } ∪ { x ∈ R 2 : 1 ≤ 𝑥 1 < 2, 0 ≤ 𝑥 2 ≤ 3 } ∪ { x ∈ R 2 : 𝑥 1 < 1, 2 ≤ 𝑥 2 ≤ 3 }
The invserse image of x(1) can be observed in Figure 14. Note that 𝑋 0 is a union of pairwise disjoint hyperrectangles.

Remark 5.23 Back to the discussion presented in remark 5.19, we will keep the DBM data structure to represent the hyperrectangles. If a DBM 𝐷 ∈ ℬ 𝑛×𝑛 represent a hyperrectangle then all non-redundant constraints are in its first row/column. In this case, the checking for emptiness can be performed by verifying if exists an 𝑖 ∈ {1, ..., 𝑛} such that4 𝑑 1𝑖 ⊗ ℬ 𝑑 𝑖1 ≻ ℬ 𝑒 ℬ . If so, there will be a constraint 𝑥 𝑖 ≤ 𝑥 𝑖 ≤ 𝑥 𝑖 such that 𝑥 𝑖 > 𝑥 𝑖 and therefore the DBM represents an empty region. Note that if a DBM represents a hyperrectangle the checking for emptiness does not require the computation of the canonical form representation, therefore the complexity reduces from cubic to linear w.r.t. its dimension. Furthermore, the intersection of two DBM representing a hyperrectangle can be done with linear complexity w.r.t. its dimension, instead of the quadratic complexity for general DBM.

Algorithm 5.3 describes a general procedure for computing the inverse image of a point w.r.t an uMPL system using the DBM data structure. The worst-case complexity of the Algorithm critically depends on step 18 and is calculated as follows: the worst-case complexity of step 19 is 𝒪(𝑝 𝑛 ), the complexity of steps 21 and 22 amounts to 𝒪(𝑛𝑝) and the complexity of step 25 is 𝒪(𝑝) (see remark 5.23). Therefore, the worst-case complexity of the Algorithm is 𝒪(𝑛𝑝 𝑛+1 ).

x 1 -3 -2 -1 0 1 2 3 4 x 2 -3 -2 -1 0 1 2 3 4 SET (1,1) ∩ U SET (1,2) ∩ U SET (2,2) ∩ U
Remark 5. [START_REF] Chua | Canonical piecewise-linear representation[END_REF] For autonomous uMPL systems, parameter 𝑝 equals 𝑛, and therefore the worst-case complexity of Algorithm 5.3 is 𝒪(𝑛 𝑛+2 ). For nonautonomous uMPL systems, parameter 𝑝 equals 𝑛 + 𝑚, and therefore the worst-case complexity is 𝒪(𝑛(𝑛 + 𝑚) 𝑛+1 ). Note that the worst case complexity of computing the inverse image of a DBM w.r.t a partitioned uMPL system generated by an uMPL system is 𝒪(𝑛 𝑛+3 ) for autonomous uMPL systems and 𝒪((𝑛 + 𝑚) 𝑛+3 ) for nonautonomous uMPL systems (see Remark 5.3).

Application: Conditional Reachability Analysis of uMPL Systems

This chapter presents an application of reachability analysis of uMPL systems. We define the conditional reachability problem and then we show that this problem can be solved by using the results presented in chapter 5.

The Conditional Reachability Problem

Bayesian methods provide a rigorous general framework for dynamic state estimation problems [START_REF] Gordon | Novel approach to nonlinear/non-gaussian bayesian state estimation[END_REF]. Consider the following system:

x(𝑘) = 𝑓 𝑘-1 (x(𝑘 -1), w(𝑘)) , (6.1) z(𝑘) = ℎ 𝑘 (x(𝑘), v(𝑘)) . (6.2)

Where x ∈ R 𝑛 and z ∈ R 𝑙 are, respectively, the state and measurement vectors; w ∈ R 𝑚 and v ∈ R 𝑟 are independent identically distributed (iid) process noise sequence; 𝑓 𝑘-1 : R 𝑛 ×R 𝑚 → R 𝑛 is, in general, a nonlinear transition function and ℎ 𝑘 : R 𝑛 × R 𝑟 → R 𝑙 is the measurement function.

In the Bayesian approach, one aims to construct the posterior Probability Density Function (PDF) 𝑝(x 𝑘 |z 1 , ..., z 𝑘 ), which is the PDF of the states x(𝑘) given all the available information z(1), ..., z(𝑘) at the event step 𝑘. The posterior PDF may be obtained recursively in two stages: prediction and update [START_REF] Gordon | Novel approach to nonlinear/non-gaussian bayesian state estimation[END_REF]. In the prediction stage it is assumed that the required PDF 𝑝(x 𝑘-1 |z 1 , ..., z 𝑘-1 ) is available at the event step 𝑘 -1. Using the system model and the Chapman-Kolmogorov equation it is possible to obtain the prior PDF 𝑝(x 𝑘 |z 1 , ..., z 𝑘-1 ) based on all information available at the event step 𝑘-1. In the update stage, the required PDF 𝑝(x 𝑘 |z 1 , ..., z 𝑘 ) is obtained by updating the prior PDF, via the Bayes rule, based on the new available information z 𝑘 and on the measurement model.

In this work, the system described by equations (6.1) and (6.2) are assumed to be an uMPL system, i.e: The elements of matrices 𝐴(𝑘) ∈ R 𝑛×𝑛 and 𝐶(𝑘) ∈ R 𝑙×𝑛 are associated to stochastic processes with supports in real intervals. No further assumptions are made on these processes.

The calculation of the support of 𝑝(x 𝑘 |z 1 , ..., z 𝑘 ) is closely related to the conditional reachability problem. The conditional reachability analysis concerns the computation of the set of all states that may be reached from a set of initial states, conditioned to a sequence of measures. This set will be called the conditional reach set and is formally defined as follows:

Definition 6.1 (conditional reach sets) Given a set of initial positions 𝑋 0 and a sequence of measures {z(1), ..., z(𝑁 )}, the conditional reach set 𝑋 𝑁 |𝑁 , at event step 𝑁 , is the set of all states that may be reached from 𝑋 𝑁 -1|𝑁 -1 (the conditional reach set at 𝑁 -1) via the uMPL transition model (6.3) and that may lead to z(𝑁 ) via the uMPL measurement model in one event step(6.4).

Note that the conditional reach set 𝑋 𝑘|𝑘 , at event step 𝑘, corresponds to the exact support of 𝑝(x 𝑘 |z 1 , ..., z 𝑘 ). Moreover, note that the conditional reachability problem is not stochastic since it does not lead to an estimate (in the estimation theory sense) of any probabilistic parameter. Although not stochastic, the conditional reachability analysis could come in handy, for instance, in the improvement of particle filtering algorithms. Particle Filters, or Sequential Monte Carlo methods, are suboptimal Bayesian algorithms based on weightedparticles approximation of probability densities [START_REF] Arulampalam | A tutorial on particle filters for online nonlinear/non-gaussian bayesian tracking[END_REF][START_REF] Doucet | On sequential monte carlo sampling methods for bayesain filtering[END_REF]. Particle filters applied to Max Plus systems have been studied in (SILVA et al., 2011;[START_REF] Cândido | Particle filter for max-plus systems[END_REF]CÂNDIDO;MENDES, 2014). In the particle filtering process is common to obtain a set of weighted-particles representing an approximation for a PDF, in which several particles have null weight. These particles does not contribute to the approximation of the PDF. Indeed, particles with null weight are characterized to be outside the support of the PDF. In this context, conditional reachability analysis could be used in the development of procedures to obtain particles inside the support of the PDF, which improves the approximation quality.

As will be shown in the following section it is possible to compute the conditional reach sets by using reachability analysis of uMPL systems.

The Solution

Assuming that conditional reach set 𝑋 𝑘-1|𝑘-1 is known at the event step 𝑘 -1, and given the measurement z(𝑘), the conditional reach set 𝑋 𝑘|𝑘 can be calculated in two stages: In the first stage it is computed the image of 𝑋 𝑘-1|𝑘-1 w.r.t. the uMPL transition model, which can be calculated via (5.11) for autonomous uMPL sytems: In this sense, the first stage can be associated to the prediction stage of the Bayesian approach.

𝑋 𝑘|𝑘-1 = ℐ [A] {𝑋 𝑘-1|𝑘-1 } = {𝐴 ⊗ x : x ∈ 𝑋 𝑘-1|𝑘-1 , 𝐴 ∈ [A]}, ( 6
The second stage is subdivided in two sub-stages: In the first sub-stage, it is computed the inverse image of z(𝑘) w.r.t. the uMPL measurement model, which can be calculated via (5. Remark 6.3 Note that X𝑘|𝑘 is the set of all states that may lead to z 𝑘 via the measurement model in one event step.

In the second sub-stage, the conditional reach set 𝑋 𝑘|𝑘 is obtained by intersecting the sets 𝑋 𝑘|𝑘-1 and X𝑘|𝑘 , thus: (6.8) This intersection can be calculated by computing the canonical form representation of the intersection of each DBM representing 𝑋 𝑘|𝑘-1 with each DBM representing X𝑘|𝑘 .

𝑋 𝑘|𝑘 = 𝑋 𝑘|𝑘-1 ∩ X𝑘|𝑘 .
Remark 6.4 In the second stage the new information z 𝑘 is used to update the set 𝑋 𝑘|𝑘-1 . This can be associated to the update stage of the Bayesian approach.

If the set 𝑋 𝑘-1|𝑘-1 can be represented by union of 𝑞 𝑘-1|𝑘-1 DBM, then 𝑋 𝑘|𝑘-1 can be represented by a union of 𝑞 𝑘|𝑘-1 DBM. The inverse image of a point z 𝑘 can always be represented by a union of q𝑘|𝑘 DBM (see section 5.3.2). Moreover, the intersection of two sets represented by the union of finitely many DBM is again a union of finitely many DBM. Therefore, 𝑋 𝑘|𝑘 can be represented by a union of 𝑞 𝑘|𝑘 DBM. Therefore, it can be proved that if 𝑋 0 can be represented by a union of finitely many DBM, then 𝑋 𝑘|𝑘 can also be represented by a union of 𝑞 𝑘|𝑘 DBM for each 𝑘 ∈ N.

The complexity of each stage is given in the following. The worst-case complexity to compute 𝑋 𝑘|𝑘-1 is 𝒪(𝑞 𝑘-1|𝑘-1 𝑛 𝑛+3 ) for autonomous systems and 𝒪(q 𝑘-1|𝑘-1 (𝑛 + 𝑚) 𝑛+3 ) for nonautonomous systems (see section 5.1). The worst-case complexity to compute X𝑘|𝑘 is 𝒪(𝑙(𝑙 + 𝑛) 𝑙+1 ) (see section 5.3.2). Given 𝑋 𝑘|𝑘-1 and X𝑘|𝑘 , assumed to be represented by a union of 𝑞 𝑘|𝑘-1 and q𝑘|𝑘 DBM, respectively, the worst-case complexity to compute 𝑋 𝑘|𝑘 via equation (6.8) is 𝒪(𝑞 𝑘|𝑘-1 q𝑘|𝑘 𝑛 3 ). Example 6.5 In this example the conditional reach sets of an uMPL system is computed. The system considered is described by: x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1),

z(𝑘) = 𝐶(𝑘) ⊗ x(𝑘).

Where, The simulated1 state and measurement sequences are given in Table 3. Using the measurement sequence and the set of initial positions 𝑋 0 = {x ∈ R 2 : 0 ≤ 𝑥 1 ≤ 1, 0 ≤ 𝑥 2 ≤ 1, }, the conditional reach set 𝑋 1|1 is computed in the following. First, note that the set of initial positions 𝑋 0 and the measurement z(1) can be represented by the following DBM: In the first stage we compute 𝑋 1|0 = ℐ [A] {𝑋 0 }, which can be represented by the collection of DBM given by D (𝑋 1|0 ) = {𝐷 (𝑋 1 1|0 ) }, where:

𝐴(𝑘) ∈

𝑥 0 𝑥 1 𝑥 2 𝐷 (𝑋 0 ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ 𝑒 ℬ 𝑒 ℬ ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (1, ≤) 𝑒 ℬ 𝜀 ℬ 𝑥 1 (1, ≤) 𝜀 ℬ 𝑒 ℬ 𝑥 2 𝑥 0 𝑧 1 𝑧 2 𝐷 (𝑍 1 ) = ⎛ ⎜ ⎜ ⎜ ⎝
𝑥 0 𝑥 ′ 1 𝑥 ′ 2 𝐷 (𝑋 1 1|0 ) = ⎛ ⎜ ⎜ ⎜ ⎝ 𝑒 ℬ (-3, ≤) (-2, ≤) ⎞ ⎟ ⎟ ⎟ ⎠ 𝑥 0 (5, ≤) 𝑒 ℬ (2, ≤) 𝑥 ′ 1 (5, ≤) (1, ≤) 𝑒 ℬ 𝑥 ′ 2
In the second stage we compute X1|1 = ℐ -1

[C] {z 1 }, which can be represented by the collection of DBM given by D ( X1|1 ) = {𝐷 Note that, the conditional reach sets corresponding to System 1 clearly expand with 𝑘 while System 2 seems to be nonexpansive. However, a question remains to be answered: under which conditions the system will be guaranteed nonexpansive? A sufficient condition is that the transition matrix [A] = [𝐴, 𝐴] be cyclic, i.e., the matrices of lower and upper bounds, 𝐴 and 𝐴, respectively, must to be irreducible matrices with the same cyclicity and max-plus eigenvalue (see section 5.1.1). However, it may not be a necessary condition as can be observed in Example 6.5, where the matrix [A] is not cyclic and the system seems to be nonexpansive.

7 Conclusion

Reachability analysis of MPL systems can be assessed by characterizing the system as PWA systems, which can be fully represented by DBM. DBM provide a simple and computationally advantageous representation of the MPL dynamics. Furthermore DBM are useful in reachability analysis of MPL systems since they can used to represent reach and backward reach sets. The main contribution of this thesis is to present a procedure to partition the state space of an uMPL system into components that can be completely represented by DBM. This has lead us to be able to present a procedure for computing the image and the inverse image of a DBM w.r.t. each component of the partitioned uMPL system which is similar to the procedure of computing the image and the inverse image of a DBM w.r.t. each component of a PWA system generated by a MPL system. Consequently, most of the previous results on reachability analysis of MPL systems could be extended to uMPL systems. The algorithms proposed have the same worst-case complexity as the algorithms proposed in (ADZKIYA et al., 2014b;ADZKIYA et al., 2014a;ADZKIYA et al., 2015), with the advantage of handling a broader class of MPL systems. We shall note that, although the DBM-approach may be computationally expensive, it yields the exact reach sets. Therefore, it can be used as a benchmark to more conservatives and less expensive approaches.

In Chapter 6, we have presented an application of reachability analysis of uMPL systems. The forward and backward reachability analysis were used to solve the conditional reachability problem. Closely related to conditional reachability is the filtering problem, where one aims to construct the the posterior Probability Density Function (PDF) of the states based on all information available. The conditional reachability analysis corresponds to the support calculation of the posterior PDF.

As future work we aim to use the conditional reachability analysis to develop efficient filtering procedures for uMPL systems. Moreover, it seems viable the design of state-feedback controllers for uMPL systems, based on the knowledge of the support of the posterior PDF of the uMPL systems states. --------------------------------------------------------------------------------------------------------Abstract Discrete Event Dynamic Systems (DEDS) are discretestate systems whose dynamics are entirely driven by the occurrence of asynchronous events over time. Linear equations in the max-plus algebra can be used to describe DEDS subjected to synchronization and time delay phenomena. The reachability analysis concerns the computation of all states that can be reached by a dynamical system from an initial set of states. The reachability analysis problem of Max Plus Linear (MPL) systems has been properly solved by characterizing the MPL systems as a combination of Piece-Wise Affine (PWA) systems and then representing each component of the PWA system as Difference-Bound Matrices (DBM). The main contribution of this thesis is to present a similar procedure to solve the reachability analysis problem of MPL systems subjected to bounded noise, disturbances and/or modeling errors, called uncertain MPL (uMPL) systems. First, we present a procedure to partition the state space of an uMPL system into components that can be completely represented by DBM. Then we extend the reachability analysis of MPL systems to uMPL systems. Moreover, the results on reachability analysis of uMPL systems are used to solve the conditional reachability problem, which is closely related to the support calculation of the probability density function involved in the stochastic filtering problem.

Key Words

Reachability Analysis; Conditional Reachability Analysis; Max Plus Linear Systems; Piece-Wise Affine Systems; Difference-Bound Matrices. ----------------------------------------------------------------------------------------------------------

Figure 1 -

 1 Figure 1 -Railway network model (precedence graph). . . . . . . . . . . . . . . . . Figure 2 -The precedence graph of 𝐴 (left) and corresponding critical graph (right).Figure 3 -Region (left) and directed graph representation (right) of 𝐷 . . . . . . . Figure 4 -Directed graph representation of 𝐷 (left) and its canonical form (right).Figure 5 -A PWA system generated by an MPL system. . . . . . . . . . . . . . . . Figure 6 -reach tube for 𝑘 = {1, 2, 3} and backward reach tube for 𝑘 = {1, 2}. . . . Figure 7 -Railway network model with uncertain travel times. . . . . . . . . . . . Figure 8 -A partitioned uMPL system. . . . . . . . . . . . . . . . . . . . . . . . .Figure9-reach tube for 𝑘 ∈ {1, 2} (autonomous uMPL system). . . . . . . . . . . Figure10-cyclic behavior of an uMPL system. . . . . . . . . . . . . . . . . . . . . Figure11-reach tube for 𝑘 ∈ {1, 2} (nonautonomous uMPL system). . . . . . . . . Figure12-backward reach tube for 𝑘 ∈ {1, 2} (autonomous uMPL system). . . . . Figure13-backward reach tube for 𝑘 ∈ {1, 2} (nonautonomous uMPL system). . . Figure 14 -Inverse image of x(1). . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 15 -conditional reach sets. The circles represent the real state values obtained via simulation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 16 -Conditional reach sets for 𝑘 ∈ {1, ..., 59}. . . . . . . . . . . . . . . . . .

Figure 3 -

 3 Figure 1 -Railway network model (precedence graph). . . . . . . . . . . . . . . . . Figure 2 -The precedence graph of 𝐴 (left) and corresponding critical graph (right).Figure 3 -Region (left) and directed graph representation (right) of 𝐷 . . . . . . . Figure 4 -Directed graph representation of 𝐷 (left) and its canonical form (right).Figure 5 -A PWA system generated by an MPL system. . . . . . . . . . . . . . . . Figure 6 -reach tube for 𝑘 = {1, 2, 3} and backward reach tube for 𝑘 = {1, 2}. . . . Figure 7 -Railway network model with uncertain travel times. . . . . . . . . . . . Figure 8 -A partitioned uMPL system. . . . . . . . . . . . . . . . . . . . . . . . .Figure9-reach tube for 𝑘 ∈ {1, 2} (autonomous uMPL system). . . . . . . . . . . Figure10-cyclic behavior of an uMPL system. . . . . . . . . . . . . . . . . . . . . Figure11-reach tube for 𝑘 ∈ {1, 2} (nonautonomous uMPL system). . . . . . . . . Figure12-backward reach tube for 𝑘 ∈ {1, 2} (autonomous uMPL system). . . . . Figure13-backward reach tube for 𝑘 ∈ {1, 2} (nonautonomous uMPL system). . . Figure 14 -Inverse image of x(1). . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 15 -conditional reach sets. The circles represent the real state values obtained via simulation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 16 -Conditional reach sets for 𝑘 ∈ {1, ..., 59}. . . . . . . . . . . . . . . . . .

Figure 14 -

 14 Figure 1 -Railway network model (precedence graph). . . . . . . . . . . . . . . . . Figure 2 -The precedence graph of 𝐴 (left) and corresponding critical graph (right).Figure 3 -Region (left) and directed graph representation (right) of 𝐷 . . . . . . . Figure 4 -Directed graph representation of 𝐷 (left) and its canonical form (right).Figure 5 -A PWA system generated by an MPL system. . . . . . . . . . . . . . . . Figure 6 -reach tube for 𝑘 = {1, 2, 3} and backward reach tube for 𝑘 = {1, 2}. . . . Figure 7 -Railway network model with uncertain travel times. . . . . . . . . . . . Figure 8 -A partitioned uMPL system. . . . . . . . . . . . . . . . . . . . . . . . .Figure9-reach tube for 𝑘 ∈ {1, 2} (autonomous uMPL system). . . . . . . . . . . Figure10-cyclic behavior of an uMPL system. . . . . . . . . . . . . . . . . . . . . Figure11-reach tube for 𝑘 ∈ {1, 2} (nonautonomous uMPL system). . . . . . . . . Figure12-backward reach tube for 𝑘 ∈ {1, 2} (autonomous uMPL system). . . . . Figure13-backward reach tube for 𝑘 ∈ {1, 2} (nonautonomous uMPL system). . . Figure 14 -Inverse image of x(1). . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 15 -conditional reach sets. The circles represent the real state values obtained via simulation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Figure 16 -Conditional reach sets for 𝑘 ∈ {1, ..., 59}. . . . . . . . . . . . . . . . . .

  ∈ 𝑆 𝑎 ⊕ 𝑏 = 𝑏 ⊕ 𝑎 Axiom 2.3 (Distributivity of multiplication w.r.t addition) ∀𝑎, 𝑏, 𝑐 ∈ 𝑆 𝑏) ⊗ 𝑐 = (𝑎 ⊗ 𝑐) ⊕ (𝑏 ⊗ 𝑐) 𝑐 ⊗ (𝑎 ⊕ 𝑏) = (𝑐 ⊗ 𝑎) ⊕ (𝑐 ⊗ 𝑏) Axiom 2.4 (Existence of a zero element 𝜀 and an identity element 𝑒) ∃𝜀 ∈ 𝑆 : ∀𝑎 ∈ 𝑆, 𝑎 ⊕ 𝜀 = 𝑎 ∃𝑒 ∈ 𝑆 : ∀𝑎 ∈ 𝑆, 𝑎 ⊗ 𝑒 = 𝑎 Axiom 2.5 (Absorbing zero element) ∀𝑎 ∈ 𝑆, 𝑎 ⊗ 𝜀 = 𝜀 ⊗ 𝑎 = 𝜀 Axiom 2.6 (Idempotency of addition) ∀𝑎 ∈ 𝑆, 𝑎 ⊕ 𝑎 = 𝑎

Figure 1 -

 1 Figure 1 -Railway network model (precedence graph).

  system can be transformed into an augmented autonomous MPL model by considering 𝐹 = (𝐴 𝐵) ∈ R𝑛×(𝑛+𝑚) 𝑚𝑎𝑥 and y(𝑘 -1) = ( x(𝑘 -1) 𝑇 u(𝑘) 𝑇

Figure 2 -

 2 Figure 2 -The precedence graph of 𝐴 (left) and corresponding critical graph (right).

Figure 3 -

 3 Figure 3 -Region (left) and directed graph representation (right) of 𝐷 .

Figure 4 -

 4 Figure 4 -Directed graph representation of 𝐷 (left) and its canonical form (right).

Figure 5

 5 Figure 5 depicts the PWA system generated by 𝐴.

  Proposition 3.1 (ADZKIYA et al., 2015, Th. 1) The image and the inverse image of a set represented by a DBM w.r.t. a subsystem of a PWA system generated by an MPL system is a set that can be represented by a DBM.

  Corollary 3.2 (ADZKIYA et al., 2015, Cor. 5) The image of a union of finitely many DBM w.r.t. a PWA system generated by an MPL model is a union of finitely many DBM.

  Definition 3.4 (reach set (ADZKIYA et al., 2014b, Def. 3) ) Given an MPL system and a nonempty set of initial conditions 𝑋 0 ⊆ R 𝑛 , the reach set 𝑋 𝑁 at the event step 𝑁 > 0 is the set of all states {x(𝑁 ) : x(0) ∈ 𝑋 0 } obtained via the MPL dynamics, possibly by application of controls. Definition 3.5 (reach tube (ADZKIYA et al., 2014b, Def. 4) ) Given an MPL system and a nonempty set of initial conditions 𝑋 0 ⊆ R 𝑛 , the reach tube is defined by the set-valued function 𝑘 ↦ → 𝑋 𝑘 for any given 𝑘 > 0 where 𝑋 𝑘 is defined.

  reach set (ADZKIYA et al., 2014a, Def. 7) ) Given an MPL system and a nonempty set of final positions 𝑋 0 ⊆ R 𝑛 , the backward reach set 𝑋 -𝑁 is the set of all states x(-𝑁 ) that leads to 𝑋 0 in 𝑁 steps of the MPL dynamics, possibly by application of controls. Definition 3.8 (backward reach tube (ADZKIYA et al., 2014a, Def. 8) ) Given an MPL system and a nonempty set of initial conditions 𝑋 0 ⊆ R 𝑛 , the reach tube is defined by the set-valued function 𝑘 ↦ → 𝑋 -𝑘 for any given 𝑘 > 0 where 𝑋 -𝑘 is defined.

  .10) Given a nonautonomous MPL system, the set of final conditions 𝑋 0 and set of inputs 𝑈 -𝑘 for each 𝑘 ∈ {0, ..., 𝑁 -1}, computing the backward reach tube for 𝑘 ∈ {1, ..., 𝑁 } can be done as follows: first, construct the PWA system generated by [F] = ([A] [B]); then, for each 𝑘 ∈ {1, ..., 𝑁 }, compute the inverse image of 𝑋 𝑘-1 w.r.t. the PWA system; next, intersect the inverse image with R 𝑛 × 𝑈 -𝑘+1 ; and finally, project the intersection over the state variables.

  .1) where the entries of 𝐴(𝑘) ∈ R 𝑛×𝑛 𝑚𝑎𝑥 are considered to be in a real interval at each event step 𝑘, i.e., 𝑎 𝑖𝑗 (𝑘) ∈ [𝑎 𝑖𝑗 , 𝑎 𝑖𝑗 ]. Remark 4.1 To assure the FIFO (first in, first out) rule the matrix 𝐴(𝑘) must satisfy 𝐴(𝑘) ⪰ 𝑒.

Figure 7 -

 7 Figure 7 -Railway network model with uncertain travel times.

  [x] ∪ [y] = [min{𝑥, 𝑦}, max{𝑥, 𝑦}]. Consider the intervals: [x] = [0, 4], [y] = [2, 5] and [z] = [5, 7]. Then,

  [x] ⪰ [y] ⇔ [x] = [x] ⊕ [y] ⇔ 𝑥 ⪰ 𝑦 and 𝑥 ⪰ 𝑦. (4.17) In particular, [x] = [y] ⇔ 𝑥 = 𝑦 and 𝑥 = 𝑦. (4.18)

Figure 11 -

 11 Figure 11 -reach tube for 𝑘 ∈ {1, 2} (nonautonomous uMPL system).

Figure 14 -

 14 Figure 14 -Inverse image of x(1).

  x(𝑘) = 𝐴(𝑘) ⊗ x(𝑘 -1), 𝐴(𝑘) ∈ [A] , (6.3) z(𝑘) = 𝐶(𝑘) ⊗ x(𝑘), 𝐶(𝑘) ∈ [C] .(6.4)

  .5) and via (5.18) for nonautonomous uMPL systems:𝑋 𝑘|𝑘-1 = ℐ [F] {𝑋 𝑘-1|𝑘-1 × 𝑈 𝑘 } = {𝐹 ⊗ y : y ∈ 𝑋 𝑘-1|𝑘-1 × 𝑈 𝑘 , 𝐹 ∈ [FNotethat the set 𝑋 𝑘|𝑘-1 corresponds to the support of the prior PDF 𝑝(x 𝑘 |z 1 , ..., z 𝑘-1 ).

  [START_REF] Gazarik; Michael | Reachability and observability of linear systems over max-plus[END_REF] :X𝑘|𝑘 = ℐ -1 [C] {z 𝑘 } = {x ∈ R 𝑝 : ∃𝐶 ∈ [C] : 𝐶 ⊗ x = z(𝑘)}.(6.7)

2

  compute 𝑋 1|1 = 𝑋 1|0 ∩ X1|1 . This can be done by computing the canonical form representation of the intersection of each DBM in D (𝑋 1|0 ) with each DBM in D ( X1|1 ) , which yields:147, <) (1, ≤) 𝑒 ℬ 𝑥 ′The conditional reach sets 𝑋 𝑘|𝑘 for 𝑘 ∈ {1, 2, 3, 4, 496, 497, 498, 499} are shown in Figure15. Note that the conditional reach set 𝑋 29|29 can be represented by a single DBM which illustrates that the number of DBM does not necessarily increases with 𝑘.

Figure 16 -

 16 Figure 16 -Conditional reach sets for 𝑘 ∈ {1, ..., 59}.

Résumé

  Les Systèmes à Evénements Discrets (SED) peuvent être définis comme des systèmes dans lesquels les variables d'état changent sous l'occurrence d'évènements au fil du temps. Les SED mettant en jeu des phénomènes de synchronisation peuvent être modélisés par des équations linéaires dans les algèbres de type (max,+). L'analyse d'atteignabilité est une problématique majeure pour les systèmes dynamiques. L'objectif est de calculer l'ensemble des états atteignables d'un système dynamique pour toutes les valeurs admissibles d'un ensemble d'états initiaux. Le problème de l'analyse d'atteignabilité pour les systèmes Max-Plus Linéaire (MPL) a été, proprement, résolu en décomposant le système MPL en une combinaison de systèmes affines par morceaux où les composantes affines du système sont représentées par des matrices de différences bornées (Difference Bound Matrix, DBM). La contribution principale de cette thèse est de présenter une procédure similaire pour résoudre le problème de l'atteignabilité pour des systèmes MPL incertains (uMPL), c'est-à-dire des systèmes MPL soumis à des bruits bornés, des perturbations et/ou des erreurs de modélisation. Tout d'abord, nous présentons une procédure permettant de partitionner l'espace d'état d'un système uMPL en parties représentables par des DBM. Ensuite, nous étendons l'analyse d'atteignabilité des systèmes MPL aux systèmes uMPL. Enfin, les résultats sur l'analyse d'atteignabilité sont mis en oeuvre pour résoudre le problème d'atteignabilité conditionnelle, qui est étroitement lié au calcul du support de la densité de probabilité impliquée dans le problème de filtrage stochastique.Mots clésSystèmes Max-Plus linéaires, Algèbre Max-Plus, Analyse d'atteignabilité, Matrices de différences bornées, condition d'atteignabilité conditionnelle, Théorie de la résiduation, , Graphes d'événements temporisés, Systèmes Affines par Morceaux

Table 1 -

 1 Idempotent Semirings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Table 2 -computation time to partition an uMPL system (average over 10 experiments) Table 3 -Simulated state and measurement sequences. . . . . . . . . . . . . . . . . Table 4 -Two uMPL systems. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Table 1 -

 1 Idempotent Semirings

	𝑆	⊕	⊗	𝜀	𝑒	Application Notation
	R ∪ {+∞}	min	+ +∞	0	shortest path

Definition 2.3 (Distributive dioid (BACCELLI et al., 1992, Def. 4.39)

) A dioid 𝑆 is distributive if it is complete and, for all subsets 𝐶 of 𝑆, ∀𝑎 ∈ 𝑆,

  14) Equation (2.14) admits a solution if and only if 𝑏 ⪯ 𝑑 and, even in this case, existence and uniqueness are not guaranteed. However, if 𝑏 ⪯ 𝑑, it is possible to find the greatest subsolution of equation (2.14). A subsolution of equation (2.14) is an x such that 𝑎⊗x⊕𝑏 ⪯ 𝑑.

  ). Let 𝐴 ∈ 𝑆 𝑛×𝑝 and 𝐵 ∈ 𝑆 𝑛×𝑚 , then:(𝐴∖ ∘𝐵) 𝑖𝑗 = Note that computing 𝐴∖ ∘𝐵 corresponds to perform a kind of matrix product 𝐴 𝑇 ⊙ 𝐵, where 𝐴 𝑇 is the transpose of 𝐴 and ⊙ is a new matrix product where the operations ⊕ and ⊗ are replaced by ∧ and ∖

	𝑛
	⋀	𝑎 𝑘𝑖 ∖ ∘𝑏 𝑘𝑗 .	(2.27)
	𝑘=1
	Remark 2.6

  regions (2.54) 𝑔 𝑖 ) ← 1, 𝑓 g (𝑖) ← 𝑎 𝑖𝑔 𝑖 ; // see equations (2.56) and (2.57)

	7	end for
	9	end for
	10

8

𝐴 g (𝑖,

  The assignment 𝑑𝑏𝑚𝑁 𝑢𝑙𝑙(•, •) generates a matrix of specified dimension, with entries 𝑑 𝑖𝑗 = 𝜀 ℬ .

input : 𝐴 ∈ R 𝑛×𝑝 𝑚𝑎𝑥 output: D // A collection of DBM representing the PWA system; 1 D ← ∅ ; 2 for all g ∈ {1, ..., 𝑝} 𝑛 do 3 𝑅 g ← 𝑑𝑏𝑚𝐸𝑦𝑒(𝑛), 𝑑𝑦𝑛𝑆𝑢𝑝 ← 𝑑𝑏𝑚𝑁 𝑢𝑙𝑙(𝑛, 𝑝), 𝑑𝑦𝑛𝐼𝑛𝑓 ← 𝑑𝑏𝑚𝑁 𝑢𝑙𝑙(𝑝, 𝑛); 4 for all 𝑖 ∈ {1, ..., 𝑛} do 5 if 𝑎 𝑖,𝑔 𝑖 ̸ = 𝜖 then 6 for all 𝑗 ∈ {1, ..., 𝑛} do 7

  the intersection (see remark 2.21).

4 𝐷

( X𝑘 )

← 𝑐𝑓 (𝐷

( X𝑘 )

) // compute the canonical form (see section 2.4.1). 5 𝐷 (𝑋 𝑘 |g) ← 𝐷 ( X𝑘 ) ⌈ 𝑥 ′ 1 ,...,𝑥 ′ 𝑛 // compute the orthogonal projection over x(𝑘) (see section 2.4.2).

Algorithm 3.2:

Computing the inverse image of a DBM w.r.t a PWA system generated by an MPL system input :

  .4) From Corollary 3.2, if 𝑋 𝑘-1 can be represented by a union of 𝑞 𝑘-1 DBM, then 𝑋 𝑘 = ℐ 𝐴 {𝑋 𝑘-1 } can be represented by a union of 𝑞 𝑘 DBM. Thus, by induction, it can be concluded that if 𝑋 0 can be represented by a union of 𝑞 0 DBM, then 𝑋 𝑘 can be represented by a union of 𝑞 𝑘 DBM, for each 𝑘 ∈ N.

6 end if 7 end for 8 end for 9 for all g

  The assignment 𝑑𝑏𝑚𝑁 𝑢𝑙𝑙(•, •) generates a matrix of specified dimension, with entries 𝑑 𝑖𝑗 = 𝜀 ℬ . 𝑖] ← (-𝑎 𝑖𝑗 , ≤)// represents 𝑧 𝑖 ≥ 𝑥 𝑗 + 𝑎 𝑖𝑗 ∈ {1, ..., 𝑝} 𝑛 do

		𝑛×𝑝 input : [A] = [𝐴, 𝐴], where 𝐴, 𝐴 ∈ R 𝑚𝑎𝑥
		output: D
	1 D ← ∅, 𝑑𝑦𝑛𝐼𝑛𝑓 ← 𝑑𝑏𝑚𝑁 𝑢𝑙𝑙(𝑛, 𝑛) ;
	2 for all 𝑖 ∈ {1, ..., 𝑛} do
	3	for all 𝑗 ∈ {1, ..., 𝑝} do
	4	if 𝐴[𝑖, 𝑗] ̸ = 𝜖 then
	5	𝑑𝑦𝑛𝐼𝑛𝑓 [𝑗, 𝑅 𝑢
		g , see
		(4.29)

g ← 𝑑𝑏𝑚𝐸𝑦𝑒(𝑛), 𝑑𝑦𝑛𝑆𝑢𝑝 ← 𝑑𝑏𝑚𝑁 𝑢𝑙𝑙

(𝑛, 𝑝)

;

for all 𝑖 ∈ {1, ..., 𝑛} do if 𝑎 𝑖𝑔 𝑖 ̸ = 𝜖 then 𝑑𝑦𝑛𝑆𝑢𝑝[𝑖, 𝑔 𝑖 ] ← (𝑎 𝑖𝑔 𝑖 , ≤) // represents 𝑧 𝑖 ≤ 𝑥 𝑔 𝑖 + 𝑎 𝑖𝑔 𝑖 for all 𝑗 ∈ {1, ..., 𝑝} do if 𝑎 𝑖,𝑗 ̸ = 𝜖 then 𝑅 𝑢 g [𝑖, 𝑔 𝑖 ] ← (min { 𝑅 𝑢 g [𝑖, 𝑔 𝑖 ], 𝑎 𝑖𝑔 𝑖 -𝑎 𝑖𝑗

}

, ≤) // define 𝑅 𝑢

end if end for end if end for if 𝑅 𝑢 g is not empty then

Table 2 -

 2 computation time to partition an uMPL system (average over 10 experiments)

	𝑛 number of regions time to generate the DBM representation
	10	7.16 × 10 2	0.17(𝑠)
	12	2.92 × 10 3	0.75 (𝑠)
	14	1.05 × 10 4	3.05 (𝑠)
	16	4.66 × 10 4	14.64 (𝑠)
	18	2.05 × 10 5	71.82 (𝑠)
	20	6.13 × 10 5	4.41 (𝑚𝑖𝑛)

Table 3 -

 3 Simulated state and measurement sequences.

		𝑘 = 0	𝑘 = 1	𝑘 = 2	𝑘 = 3	𝑘 = 4
	x(𝑘)	(	0.019 0.661 ) ( 3.635 3.783 ) ( 6.999 7.121 ) ( 10.160 9.791	13.362 ) ( 13.146 )
	z(𝑘)		-	( 6.148 ) ( 9.530 ) ( 13.001 6.349 8.555 11.160	) ( 15.351 14.629

)

Table 4 -

 4 Two uMPL systems.

			System 1	System 2
	[A]	(	[3, 5] 𝜀	𝜀 [1, 11]

The longest path in ℬ (see remark

2.17)

Notation: x ′ ≡ x(𝑘) and x ≡ x(𝑘 -1)

Notation: x ′ ≡ x(𝑘), x ≡ x(𝑘 -1) and u ≡ u(𝑘)

This model considers an additional equation corresponding to the artificial variable: 𝑥 0 = 0 + 𝑥 0

A stripe is an unbounded region, i.e., for each 𝑗, -∞ ≤ 𝑥 𝑗 ≤ ∞ (see definition 2.24).

The complete set of periodic behaviors is given by the eigenspace of 𝐴 ⊗𝑐 , i.e. 𝐸(𝐴 ⊗𝑐 ) where 𝑐 is the cyclicity of the critical graph of 𝐴 (recall the definition of eigenspace in Proposition 2.12)

Notation: x ′ ≡ x(𝑘) and x ≡ x(𝑘 -1).

Notation: x ′ ≡ x(𝑘) and x ≡ x(𝑘 -1).

Notation: x ′ ≡ x(𝑘) and y ≡ y(𝑘 -1).

Note that 𝑑𝑦𝑛𝐼𝑛𝑓 is not a DBM because it is not a square matrix.

𝑑𝑦𝑛𝑆𝑢𝑝 is not a DBM.

Note that the complexity of the algorithm critically depends on the number of regions and the regions only depends on the upper bounds of the matrix entries then setting the lower bounds to 0 does not interfere in the results of the experiment.

From the interval analysis theory:[x] -[y] = [𝑥 -𝑦, 𝑥 -𝑦]

The order ≻ in ℬ coincides with the usual lexicographic order < (see remark 2.17)

For the simulation, it was considered that the entries of the matrices 𝐴(𝑘) and 𝐶(𝑘) are uniformly distributed in the given intervals. For example, for each 𝑘, the element 𝑎 11 (𝑘) is uniformly distributed between 1 and 3.

Acknowledgements

I thank you God for this amazing journey of personal and professional growth. For putting amazing people in my path, whom I also owe thanks to.

I thank my supervisors Rafael, Laurent and Mehdi for giving me the precious opportunity to go to France to pursue my PhD, for the efforts they have made to solve all bureaucratic issues, for the priceless reception in France, for the valuable comments and discussions that helped me develop my research and, of course, for the great dinners we had, the French cuisine is really wonderful.

begin // Compute the set 𝑈 and represent it as the DBM 𝐷 (𝑈 ) ;

for 𝑗 ∈ {1, ..., 𝑝} do 𝐷 (𝑈 ) for all 𝑔 ∈ {1, ..., 𝑝} 𝑛 do

end for As discussed in remark 5.8, the uMPL systems are expansive, i.e., the hyper-volume of the reach sets 𝑋 𝑘 tends to increase with 𝑘. However, the conditional reachability analysis uses the measurement model as a feedback mechanism which may avoid a potential explosion in the hyper-volume of the conditional reach sets. For the system considered in Example 6.5, for instance, it seems that the potential explosion will not happen (see Figure 15). However, as illustrated in Example 6.6, it is not the case for all systems.

Example 6.6 Consider two uMPL systems characterized by the matrices presented in Table 4

Considering 𝑋 0 = {x ∈ R 2 𝑚𝑎𝑥 : 0 ≤ 𝑥 1 ≤ 1, 0 ≤ 𝑥 2 ≤ 1}, the conditional reach sets 𝑋 𝑘|𝑘 , for 𝑘 ∈ {1, ..., 59}, were computed (for both systems). In order to observe if the conditional reach sets expand with 𝑘, they were plotted in Figure 16.