• Aucun résultat trouvé

3.3 Expressivit´e

3.3.2 Composition des ipTPN

La composition de r´eseaux est tr`es utile et permet la conception de syst`emes de mani`ere incr´ementa-le. Nous allons d´ecrire ici deux op´erateurs de fusion, l’un de places, l’autre de transitions, qui nous permettront de d´efinir une op´eration de composition que nous utiliserons partiellement dans un premier temps afin d’´etudier l’expressivit´e desipTPN en comparant la composition parall`ele (par transitions) des TPN et des ipTPN. Dans un deuxi`eme temps, cette composition nous servira `a assembler les blocs s´emantique du langage d´edi´e aux syst`emes de tˆaches temps r´eel propos´e dans cette th`ese dans le chapitre 5.

D´efinition 17 Soit N = hP , T ,Pre,Post, m0i un r´eseau de Petri, et deux ensembles A ⊆ P et B ⊆P tel queA∩B =∅.

La fusion des places de A et B de N donne le r´eseau N =hP, T,Pre,Post, m0i, avec : P = (P \(A∪B))∪(A×B)1

(∀p∈P\(A∪B))(∀t∈T)(Pre(t)(p) =Pre(t)(p)∧Post(t)(p) =Post(t)(p))

(∀p= (a, b)∈A×B)(∀t∈T)(Pre(t)(p) =Pre(t)(a) +Pre(t)(b)∧Post(t)(p) =Post(t)(a) +

Post(t)(b))

(∀p∈P\(A∪B))(m0(p) =m0(p))

(∀p= (a, b)∈A×B)(m0(p) =m0(a) +m0(b))

L’op´eration est not´eeA

B(N) =N

(a) Un r´eseau de Petri N (b) Le r´eseau{{p1,p2p3,p4}}(N)

Fig.3.6 – Exemple de transformation par la fusion de place⊕

Intuitivement, l’op´eration ⊕{{p1,p2p3,p4}}(N), dont le r´esultat est donn´e par la figure 3.6 (b), fusionne les places de {p1, p2} avec les places de{p3, p4} par le produit cart´esien de ces ensembles. Ainsi, les places p1 et p2 ne sont pas destin´ees `a ˆetre fusionn´ees entre elles, mais avec l’une et puis l’autre des placesp3 etp4.

Il est plus facile de comprendre cette op´eration en consid´erant que les places des deux ensembles

A et B sont deux interfaces de «composants» `a inter-connecter. Bien qu’il ne soit pas question ici de plusieurs composants, nous verrons plus tard qu’il suffit d’une op´eration de r´eunion de r´eseaux

1

par soucis de concision, nous confondrons l’ensembleA×Bavec la fonction associant un symbole (dansT) `a chacun de ses ´el´ements deA×B

disjoints pour que⊕devienne applicable en tant que deuxi`eme ´etape lors de la d´efinition de l’op´eration de composition de r´eseaux.

Mˆeme si l’op´eration permet bien plus, le cas typique d’application d’une telle op´eration est donn´e par la figure 3.7, o`u l’on peut distinguer deux «composants» (en admettant qu’ils ont ´et´e r´eunis au sein du mˆeme r´eseau par une op´eration de r´eunion de r´eseaux), que l’on enchaˆıne `a l’aide de la fusion

{{p2p3}}(R), en fusionnant les places p2 et p3.

(a) R´eseau R (b) R´eseau{{p2p3}}(R)

Fig. 3.7 – Cas d’utilisation typique de⊕

Il est `a remarquer que la fusion par place ne prend en compte que les informations ayant trait aux places : marquages, pr´econditions, postconditions. Ceci implique que toute extension ne modifiant pas ces structures n’est pas influenc´ee (du moins directement) par la composition par place. C’est le cas desTPN et desipTPN. Il n’est donc pas n´ecessaire de la red´efinir pour ces deux formalismes.

D´efinition 18 Soit N = hP , T ,Pre,Post, m0i un r´eseau de Petri, et deux ensembles A ⊆ T et B⊆T tel que A∩B =∅.

La fusion des transitions de A et B de N donne le r´eseau N =hP, T,Pre,Post, m0i, avec : T =T \(A∪B)∪(A×B)

(∀t∈T\(A∪B))(∀p∈P)(Pre(t)(p) =Pre(t)(p)∧Post(t)(p) =Post(t)(p))

(∀t= (a, b)∈A×B)(∀p∈P)(Pre(t)(p) =Pre(a)(p) +Pre(b)(p)∧Post(t)(p) =Post(a)(p) +

Post(b)(p))

L’op´eration est not´ee pn⊗A

B(N) =N

(a) Le r´eseau pn⊗{{t1,t2t3} }(N) (b) Le r´eseaupn⊗{{t1,t3t2} }(N)

Fig. 3.8 – Exemples de transformation par la fusion de transitions pn⊗

L’op´eration de fusion de transitions pn⊗ est tr`es similaire `a ⊕. La fusion de transitions s’op`ere ´egalement d’apr`es le produit cart´esien des ensemblesAetB de l’op´eration pn⊗A

B(x). Et de la mˆeme fa¸con, cette op´eration doit ˆetre comprise comme une partie de l’op´eration de composition que nous d´efinirons plus tard, permettant de fusionner les transitions `a l’interface de deux composants qui auront ´et´e au pr´ealable r´eunis en un seul r´eseau.

3.3. Expressivit´e 47 A l’inverse de l’op´eration⊕, l’op´erationpn⊗est sous-sp´ecifi´ee pour les r´eseaux de Petri temporels, car elle ne sp´ecifie pas quel doit ˆetre l’intervalle de tir de la fusion de deux transitions portant un intervalle de tir non trivial.

D´efinition 19 Soit N = hP, T,Pre,Post, m0, Isi un r´eseau de Petri temporel, et deux ensembles A⊆T et B⊆T tel que A∩B =∅.

La fusion des transitions de A et B de N donne le r´eseau de Petri temporel suivant : N =

hP, T,Pre,Post, m0, Isi avec

T, Pre et Post suivent la r`egle de composition pn⊗A

B(hP, T,Pre,Post, m0i) (∀t∈T \(A∪B))(∀p∈P)(Is(t) =Is(t)) (∀t= (a, b)∈A×B)(∀p∈P)(I s(t) =I s(a)∩I s(b))

L’op´eration est not´ee tpn⊗A

B(N) =N

Cette d´efinition ne pose pas de difficult´e majeure. Elle n’est pas d´efinie dans le cas o`uIs(a)∩Is(b) =

∅. Une illustration de cette intersection d’intervalle lors de la fusion partpn⊗est donn´ee par la figure 3.9 o`u l’op´eration plus g´en´erale ⊗est utilis´ee.

En ajoutant les deux nouvelles relationsF etAauxTPN, la fusion de transitions s’en trouve bien ´evidemment affect´ee :

D´efinition 20 SoitN =hP, T,Pre,Post, m0, Is, F, Aiun r´eseau de Petri temporel `a inhibitions/permis-sions, et deux ensembles A⊆T et B⊆T tel que A∩B =∅.

Soit B : T → P(T), la fonction associant `a une transition de T un ensemble de transition deT, de telle sorte que :

(∀t∈T \(A∪B))(B(t) ={t})

(∀t∈A∪B)(B(t) ={(a, b) |(a, b)∈A×B∧(a=t∨b=t)}

La fusion des transitions de A et B de N donne le r´eseau de Petri temporel suivant : N =

hP, T,Pre,Post, m0, Is, F, Ai avec

T, Pre et Post suivent la r`egle de composition pn⊗A

B(hP, T,Pre,Post, m0i)

Is suit la r`egle de composition tpn⊗A

B(hP, T,Pre,Post, m0, Isi)

(∀f ∈ {F, A})((t1, t2)∈f ⇒(∀u, v∈ B(t1)× B(t2))((u, v) ∈f))

L’op´eration est not´eeA

B(N) =N

(a) Le r´eseauN

(b) Le r´eseau⊗{{t1,t2t3} }(N)

Fig. 3.9 – Exemple de transformation par la fusion de transitions⊗

La fonction B(t) associe `a la transition t(appartenant au r´eseau avant transformation) l’ensemble des transitions fusionn´ees pour lesquelles t a particip´e. Ainsi, pour le r´eseau N de la figure 3.9 (a), on obtient :

– B(t1) ={(t1, t3)}

– B(t2) ={(t2, t3)}

Par ailleurs, on a (t1, t2) ∈ F et (t1, t3) ∈ A et comme B(t1) (resp. B(t2)) est l’ensemble des transitions fusionn´ees pour lesquelles t1 (resp. t2) a particip´e, alors les transitions de B(t1) inhibent les transitions de B(t2). D’o`u B(t1) × B(t2) ∈ F, c’est-`a-dire que (t1, t3)−◦ (t2, t3). Et le mˆeme raisonnement est utilis´e pour la relation A : B(t1)× B(t3) ∈ A, c’est-`a-dire (t1, t3)−•(t1, t3)1 et (t1, t3)−• (t2, t3).

En vue de la d´efinition de la composition des r´eseaux ipTPN, nous allons nous servir d’une op´eration de r´eunion de r´eseau, qui, comme nous l’avons d´ej`a dit permettra d’utiliser les op´erations de fusion que nous venons de d´efinir.

D´efinition 21 r´eunion de r´eseaux Soient deux ipTPN

Na=hPa, Ta,Prea,Posta, ma 0, Ia s, Fa, Aaǫ a,Lai et Nb=hPb, Tb,Preb,Postb, mb 0, Ib s, Fb, Abǫ b,Lbi avec Pa∩Pb=∅ etTa∩Tb =∅.

La r´eunion des deux r´eseauxNaetNbest le r´eseauNa◦Nb =hPa∪Pb, Ta∪Tb,Prea∪Preb,Posta∪ Postb, ma0∪mb0, Isa∪Isb, Fa∪Fb, Aa∪Aba∪Σb∪ {ǫ},La∪ Lbi.

L’op´eration de composition de r´eseaux va utiliser l’´etiquetage des r´eseaux qui est donn´e par une fonction d’´etiquetage applicable aussi bien sur les places que sur les transitions du r´eseau (utiliser un mˆeme label sur une place et une transition ne signifie rien de sp´ecial). Les places et les transitions qui portent la mˆeme ´etiquette dans des r´eseaux diff´erents sont combin´ees comme d´ecrit dans la d´efinition 23 ci-dessous.

Les fonctions d’´etiquetages peuvent retourner la valeur neutreǫ signifiant par l`a que l’´el´ement ne porte pas d’´etiquette. Nous nous servirons donc d’une ´egalit´e modifi´ee pour tenir compte de cela, en ne consid´erant que les ´etiquettes diff´erentes deǫ. Ainsi, deux ´etiquettes ne seront consid´er´ees comme

ǫ-´egales que si elles sont effectivement ´egales mais ´egalement diff´erentes deǫ.

D´efinition 22 ǫ-´egalit´e

Soit Σun alphabet quelconque contenant ǫet a, b∈Σ. a=ǫb ssi a=b6=ǫ. D´efinition 23 composition de r´eseaux

Soient deux r´eseaux de Petri temporels `a inhibitions/permissions ´etiquet´es Na=hPa, Ta,Prea,Posta, ma 0, Ia s, Fa, Aaǫ a,Lai et Nb=hPb, Tb,Preb,Postb, mb0, Isb, Fb, Abǫb,Lbi. SoientX Y ={S ⊆X|(∀(x, y)∈S2)(La(x) =ǫLa(y)∧(∃y∈Y)(La(x) =ǫLb(y))} etX Y ={y∈Y|(∀x∈X)(La(x) =ǫLb(y))}

La composition des deux r´eseaux ´etiquet´es est donn´ee par :

Na⊙Nb = ∇x T b O x∈∆T a T b ∇x P b M x∈∆P a P b (Na◦Nb) (3.1)

La d´efinition est dense et requiert quelques commentaires. Tout d’abord, il convient de pr´eciser que

f(x) O x∈A N =⊗f(x1) x1 ...⊗f(xn) xn (N) avec A= n [ i=1 {xi} (3.2) f(x) M x∈A N =⊕fx1(x1)...⊕f(xn) xn (N) avec A= n [ i=1 {xi} (3.3) 1

3.3. Expressivit´e 49 ∆X

Y donne la partition de l’ensemble X selon l’´equivalence =ǫ, sous la condition que les ´el´ements de ces partitions poss`edent au moins un ´el´ement ´equivalent dans Y. Par ∆XY on r´ecup`ere ainsi les ensembles de transitions qui vont servir `a la fusion des transitions de X avec les transitions deY. On peut aussi dire que chaque partie de ∆X

Y est une classe d’´equivalence pour =ǫ dansX, conditionn´ee par l’existence d’´el´ements ´equivalents dans Y.

X

Y d´efinie l’ensemble des ´el´ements de Y qui sont ´equivalents `a des ´el´ements de X. L’ensemble

x

Tb donne ainsi les ´el´ements de Tb qui portent une ´etiquette commune avec des ´el´ements de x. La composition s’op`ere alors par la fusion de places — puis de transitions — ´equivalentes, de mani`ere incr´ementale, en partant de la r´eunion des deux r´eseaux.

Fig.3.10 – R´eseau R

Fig.3.11 – R´eseau R

Fig. 3.12 – R´eseau R⊙R

La premi`ere ´etape du calcul de la compositionR⊙R est de d´eterminer ∆Ta

Tb : c’est la partition de l’ensembleTatelle que les ´el´ements de chaque partie portent la mˆeme ´etiquette (sontǫ-´egaux), en enle-vant les parties qui n’ont pas d’´equivalents dansTb. La partition deTaselon =ǫ est{{t1},{t2},{t3}}, mais la partie {t3}, dont le seul ´el´ement t3 est ´etiquet´e par C n’a pas d’´equivalent dans Tb. D’o`u ∆TTab ={{t1},{t2}}.

Pour chaque partie de ∆Ta

Tb, il faut d´eterminer l’ensemble des ´el´ements (de mˆeme nature : ici des transitions) ´equivalents : c’est ce qui est donn´e par ∇{Tt1b} = {t4} et ∇{Tt2b} ={t6}. On fait de mˆeme pour les places : ∆Pa

Pb = {{p1},{p2}}, ∇{Pp1b} = {p6} et ∇{Pp2b} = {p7}. L’op´eration R⊙R peut ˆetre alors compl`etement d´evelopp´ee :