# Kleene Algebra to Compute Invariant Sets of Dynamical Systems
## 5 Application to Dynamical Systems
### Cover and Automorphism  
In this section, we define the automorphism \(\overrightarrow{f}\) that we will use to solve our problems involving invariant sets. It will be based on the notion of cover that we now define. A _cover_\(\mathcal{P}\) is a collection of open boxes of \(\mathbb{R}^{n}\) whose union is \(\mathbb{R}^{n}\). Denote by \(\mathcal{P}(\mathbf{x})\) the union of all boxes of \(\mathcal{P}\) containing \(\mathbf{x}\). **Proposition 6**: _If \(\mathbb{A}\) is closed, we have_  
\[\mathbf{a}\in\mathit{Inv}^{+}(\mathbb{A})\Rightarrow\boldsymbol{\
abla}_{ \boldsymbol{\gamma}|\mathcal{P}(\mathbf{a})}(\mathbf{a})\subset\mathbb{A}.\]  
_where \(\mathit{Inv}^{+}(\mathbb{A})\) is the largest positive invariant set included in \(\mathbb{A}\)._  
We have  
\[ \begin{array}{rcl}\mathbf{a}\in\mathit{Inv}^{+}(\mathbb{A})&\Rightarrow& \forall t\geq 0,\boldsymbol{\varphi}_{\boldsymbol{\gamma}}(t,\mathbf{a}) \in\mathbb{A}\\ &\Rightarrow&\forall t\geq 0,\boldsymbol{\varphi}_{\boldsymbol{\gamma}| \mathcal{P}(\mathbf{a})}(t,\mathbf{a})\in\mathbb{A}\\ &\Rightarrow&\boldsymbol{\
abla}_{\boldsymbol{\gamma}|\mathcal{P}(\mathbf{a })}(\mathbf{a})\subset\mathbb{A}\end{array} \]  
Consider the system \(\mathcal{S}:\dot{\mathbf{x}}(t)=\boldsymbol{\gamma}(\mathbf{x}(t))\), a closed set \(\mathbb{A}\), and a cover \(\mathcal{P}\) of the state space. The set-valued function defined by  
\[\overrightarrow{f}(\mathbb{A}) = \Big{\{}\mathbf{x}|\boldsymbol{\
abla}_{\boldsymbol{\gamma}| \mathcal{P}(\mathbf{x})}(\mathbf{x})\subset\mathbb{A}\Big{\}} \tag{27}\]  
is an automorphism. We call \(\overrightarrow{f}(\mathbb{A})\) the forward Eulerian predictor, since it predicts where the state will go for one step. Now, the step is not temporal (as for Lagrangian predictors) but spacial and related to the cover \(\mathcal{P}\). First, note that we have \(\overrightarrow{f}(\mathbb{R}^{n})=\mathbb{R}^{n}\). Moreover,  
\[ \begin{array}{rcl}\overrightarrow{f}(\mathbb{A}\cap\mathbb{B})&=&\Big{\{} \mathbf{x}|\boldsymbol{\
abla}_{\boldsymbol{\gamma}|\mathcal{P}(\mathbf{x})}( \mathbf{x})\subset\mathbb{A}\cap\mathbb{B}\Big{\}}\\ &=&\Big{\{}\mathbf{x}|\Big{(}\boldsymbol{\
abla}_{\boldsymbol{\gamma}| \mathcal{P}(\mathbf{x})}(\mathbf{x})\subset\mathbb{A}\Big{)}\\ &&\text{and }\Big{(}\boldsymbol{\
abla}_{\boldsymbol{\gamma}|\mathcal{P}( \mathbf{x})}(\mathbf{x})\subset\mathbb{B}\Big{)}\Big{\}}\\ &=&\Big{\{}\mathbf{x}|\boldsymbol{\
abla}_{\boldsymbol{\gamma}|\mathcal{P}( \mathbf{x})}(\mathbf{x})\subset\mathbb{A}\Big{\}}\\ &&\cap\Big{\{}\mathbf{x}|\boldsymbol{\
abla}_{\boldsymbol{\gamma}|\mathcal{P}( \mathbf{x})}(\mathbf{x})\subset\mathbb{B}\Big{\}}\\ &=&\overrightarrow{f}(\mathbb{A})\cap\overrightarrow{f}(\mathbb{B}).\end{array}  \tag{28}\]  
This is illustrated by Figure 5 in the case where \(\boldsymbol{\gamma}(\mathbf{x})\), represented by its blue arrow vector field, is constant and oriented to the right. The polygonal set on the first sub-figure represents \(\mathbb{A}\). In this figure, the cover is made with two boxes, which are open and overlap (just a little) on their boundaries. Now, this overlapping is not represented for the sake of clarity. In the figure \(\mathbf{a}\in\mathbb{A}\), \(\mathcal{P}(\mathbf{a})\) is made with a single box (the left one). The set \(\boldsymbol{\
abla}_{\boldsymbol{\gamma}|\mathcal{P}(\mathbf{a})}(\mathbf{a})\) is represented by the blue dotted segment starting from \(\mathbf{a}\). Since \(\boldsymbol{\
abla}_{\boldsymbol{\gamma}|\mathcal{P}(\mathbf{a})}(\mathbf{a})\) is not a subset of \(\mathbb{A}\), \(\mathbf{a}\
otin\overrightarrow{f}(\mathbb{A})\). It means from Proposition 6 that \(\mathbf{a}\
otin\mathrm{Inv}^{+}(\mathbb{A})\), and this is why it can be removed. We have \(\mathbf{b}\in\mathbb{A}\) and \(\boldsymbol{\
abla}_{\boldsymbol{\gamma}|\mathcal{P}(\mathbf{b})}(\mathbf{b})\) is the dotted segment starting from \(\mathbf{b}\). Since \(\mathbf{b}\in\overrightarrow{f}(\mathbb{A})\).