Méthodes pour la validation de modèles formels pour la ... - ISAE
Méthodes pour la validation de modèles formels pour la ... - ISAE
Méthodes pour la validation de modèles formels pour la ... - ISAE
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
2.3 Sémantique du <strong>la</strong>ngage AltaRica : les automates <strong>de</strong> mo<strong>de</strong> 45<br />
– L’évaluation ˆF in [e 2 ← failed] est ˆF in [e 2 ← failed] = (ok, failed, failed).<br />
En notant A = (D, dom, S, F in , F out , Σ, δ, σ, I) un automate <strong>de</strong> mo<strong>de</strong>, i ∈ F in et<br />
o ∈ F out , o est dite indépendante <strong>de</strong> i, noté i ⊥ 0, lorsque :<br />
∀Ŝ ∈ dom(S), ∀ ˆF ∈ dom(F in ), ∀c ∈ dom(i), σ(Ŝ, ˆF)[o] = σ(Ŝ, ˆF[i ← c])[o]<br />
En termes plus in<strong>formels</strong>, o est dite indépendante <strong>de</strong> i si <strong>la</strong> valeur <strong>de</strong> o ne varie pas quelle que<br />
soit <strong>la</strong> valeur <strong>de</strong> i et ce<strong>la</strong> <strong>pour</strong> toutes les évaluations <strong>de</strong>s variables d’état et d’entrée. L’indépendance<br />
entre <strong>de</strong>ux variables <strong>de</strong> flux est cependant, en appliquant cette définition, couteuse à démontrer.<br />
Pour s’affranchir <strong>de</strong> cette difficulté, il est suffisant (mais pas nécessaire) <strong>de</strong> s’assurer que ni i 2 , ni<br />
i 3 n’interviennent dans le calcul <strong>de</strong> o 1 (il n’est par exemple pas impossible <strong>de</strong> connecter o 2 et i 1 ).<br />
En complément <strong>de</strong> l’indépendance entre variables, il est également indispensable que le<br />
domaine <strong>de</strong> <strong>la</strong> variable <strong>de</strong> sortie soit inclus dans celui <strong>de</strong>s variables d’entrée avec lesquelles elle est<br />
connectée.<br />
Définition 2.5 : Connexion d’automate <strong>de</strong> mo<strong>de</strong><br />
Donnons maintenant une définition formelle <strong>de</strong> <strong>la</strong> connexion d’automate <strong>de</strong> mo<strong>de</strong>. Nous<br />
rappelons qu’une opération <strong>de</strong> composition parallèle d’automates <strong>de</strong> mo<strong>de</strong> précè<strong>de</strong> toute opération<br />
<strong>de</strong> connexion d’automate <strong>de</strong> mo<strong>de</strong> ; le principe <strong>de</strong> <strong>la</strong> connexion est alors, à l’intérieur d’un automate<br />
<strong>de</strong> mo<strong>de</strong>, <strong>de</strong> contraindre <strong>de</strong>s variables d’entrée à être égales à <strong>de</strong>s variables <strong>de</strong> sortie (afin d’assurer<br />
l’absence <strong>de</strong> définition circu<strong>la</strong>ire dans l’automate résultant <strong>de</strong> <strong>la</strong> connexion, on <strong>de</strong>vra s’assurer lors<br />
d’une telle opération que les variables reliées sont indépendantes [Définition 2.4]).<br />
Soient un automate <strong>de</strong> mo<strong>de</strong> A = (D, dom, S, F in , F out , Σ, δ, σ, I), o ∈ F out et f 1 , ...,<br />
f k ∈ F in telles que ∀i ∈ [1, k], o ⊥ f i et dom(o) ⊆ dom(f i ).<br />
Soient Fς<br />
in = F in − {f i } i=1,..,k , Ŝ ∈ dom(S) et ˆF ∈ dom(Fς in ).<br />
[ ˆF[v] si v ∈ F<br />
in<br />
Notons ˆFŜ,o/f1,...,o/f k<br />
[v] =<br />
ς<br />
σ(Ŝ, ˆF ′ )[o] sinon<br />
où ˆF ′ ∈ dom(F in ) est une extension quelconque <strong>de</strong> ˆF (Fς in ⊂ F in ).<br />
L’automate <strong>de</strong> mo<strong>de</strong> dans lequel <strong>la</strong> sortie o est connectée aux entrées f 1 , ..., f k est noté<br />
A o/f1,...,o/f k<br />
= (D, dom, S, Fς<br />
in , Fς<br />
out , Σ, δ ′ , σ ′ , I) où Fς out , δ ′ et σ ′ sont définis par :<br />
– Fς out = F out − {o} ;<br />
– ∀Ŝ ∈ dom(S), ∀ ˆF ∈ dom(Fς<br />
in ), ∀e ∈ Σ, si δ(Ŝ, ˆFŜ,o/f1,...,o/f k<br />
, e) est défini, alors<br />
δ ′ (Ŝ, ˆF, e) = δ(Ŝ, ˆFŜ,o/f1,...,o/f k<br />
, e) ;<br />
<br />
– ∀Ŝ ∈ dom(S), ∀ ˆF ∈ dom(F in<br />
ς ), σ ′ (Ŝ, ˆF) = σ(Ŝ, ˆFŜ,o/f1,...,o/f k<br />
).<br />
En pratique, ce<strong>la</strong> revient à substituer les valeurs <strong>de</strong>s entrées connectées f 1 ,..., f k par <strong>la</strong><br />
valeur <strong>de</strong> <strong>la</strong> sortie o <strong>pour</strong> tous les jeux d’évaluation <strong>de</strong>s états et <strong>de</strong>s entrées. <br />
Exemple : Sur <strong>la</strong> figure 2.10, l’opération <strong>de</strong> connexion consistera à :