th`ese de doctorat m€¦ · ecole centrale de nantes universit´e de nantes´ e´ cole doctorale...

194
´ Ecole Centrale de Nantes Universit´ e de Nantes ´ ECOLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MAT ´ ERIAUX Ann´ ee 2007 Th` ese de Doctorat pour l’obtention du Diplˆ ome de Docteur de l’ ´ Ecole Centrale de Nantes et de l’Universit´ e de Nantes Sp´ ecialit´ e: Automatique et Informatique Appliqu´ ee Pr´ esent´ ee et soutenue publiquement par : Morgan MAGNIN le 13 d´ ecembre 2007 ` a l’ ´ Ecole Centrale de Nantes eseaux de Petri ` a chronom` etres Temps dense et temps discret JURY Rapporteurs G. Juanole Professeur ´ em´ erite ` a l’Universit´ e Paul Sabatier, LAAS, Toulouse P. Moreaux Professeur ` a Polytech’Savoie, LISTIC, Annecy Examinateurs B. erard Professeur ` a l’Universit´ e Paris-Dauphine, LAMSADE, Paris H. Boucheneb Professeur ` a l’ ´ Ecole Polytechnique de Montr´ eal, Canada O. (H.) Roux Maˆ ıtre de Conf´ erences HDR ` a l’IUT de Nantes, IRCCyN P. Molinaro Maˆ ıtre de Conf´ erences ` a l’ ´ Ecole Centrale de Nantes, IRCCyN Membre invit´ e J-P. Elloy Professeur ` a l’ ´ Ecole Centrale de Nantes, IRCCyN Directeur de th` ese : Olivier (H.) Roux Laboratoire / Composante : IRCCyN / IUT de Nantes Co-encadrant : Pierre Molinaro Laboratoire / Composante : IRCCyN / ´ Ecole Centrale de Nantes Th` ese n ED

Upload: others

Post on 07-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Ecole Centrale de Nantes Universite de Nantes

ECOLE DOCTORALESCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES

MATERIAUX

Annee 2007

These de Doctorat

pour l’obtention du Diplome deDocteur de l’Ecole Centrale de Nantes et de l’Universite de Nantes

Specialite : Automatique et Informatique Appliquee

Presentee et soutenue publiquement par :

Morgan MAGNIN

le 13 decembre 2007a l’Ecole Centrale de Nantes

Reseaux de Petri a chronometres–

Temps dense et temps discret

JURY

Rapporteurs G. Juanole Professeur emerite a l’Universite Paul Sabatier, LAAS, Toulouse

P. Moreaux Professeur a Polytech’Savoie, LISTIC, Annecy

Examinateurs B. Berard Professeur a l’Universite Paris-Dauphine, LAMSADE, Paris

H. Boucheneb Professeur a l’Ecole Polytechnique de Montreal, Canada

O. (H.) Roux Maıtre de Conferences HDR a l’IUT de Nantes, IRCCyN

P. Molinaro Maıtre de Conferences a l’Ecole Centrale de Nantes, IRCCyN

Membre invite J-P. Elloy Professeur a l’Ecole Centrale de Nantes, IRCCyN

Directeur de these : Olivier (H.) RouxLaboratoire / Composante : IRCCyN / IUT de NantesCo-encadrant : Pierre MolinaroLaboratoire / Composante : IRCCyN / Ecole Centrale de Nantes

These n° ED

Page 2: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese
Page 3: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Table des matieres

1 Introduction 11.1 Verification formelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.2 Systemes temps reel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3 Extension des domaines d’application des methodes formelles . . . . . . . . . 31.4 Enjeux du model-cheking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.5 Les modeles temporises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.5.1 Les automates temporises . . . . . . . . . . . . . . . . . . . . . . . . . 41.5.2 Extensions temporelles des reseaux de Petri . . . . . . . . . . . . . . . 41.5.3 Modeles a chronometres . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.6 Temps dense ou temps discret ? . . . . . . . . . . . . . . . . . . . . . . . . . . 61.7 Temps discret et extensions temporelles des reseaux de Petri . . . . . . . . . 71.8 Notre contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.8.1 Definition des modeles a chronometres en temps dense et en temps discret 81.8.2 Classification des modeles . . . . . . . . . . . . . . . . . . . . . . . . . 81.8.3 Verification des modeles a chronometres en temps discret . . . . . . . 8

1.9 Organisation du manuscrit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

2 Preliminaires 112.1 Ensembles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.2 Alphabets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.3 Systemes de transitions temporises . . . . . . . . . . . . . . . . . . . . . . . . 14

2.3.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.3.2 Langage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.4 Bisimulations et expressivite de modeles temporises . . . . . . . . . . . . . . . 152.4.1 Bisimulation non temporisee . . . . . . . . . . . . . . . . . . . . . . . 162.4.2 Bisimulation temporelle . . . . . . . . . . . . . . . . . . . . . . . . . . 162.4.3 Bisimulation via une abstraction du temps . . . . . . . . . . . . . . . 172.4.4 Expressivite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.4.5 Quotient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.4.6 Composition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.5 Polyedres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.5.1 Presentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.5.2 Matrices de differences bornees . . . . . . . . . . . . . . . . . . . . . . 202.5.3 Complexite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212.5.4 Discretisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Page 4: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

ii TABLE DES MATIERES

3 Modeles temporels 233.1 Reseaux de Petri temporels . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.1.1 Presentation informelle . . . . . . . . . . . . . . . . . . . . . . . . . . 253.1.2 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.1.3 Semantiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.1.4 Principaux resultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.1.5 Arcs de reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

4 Modeles temporels a chronometres 354.1 Reseaux de Petri a chronometres . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.1.1 Presentation informelle . . . . . . . . . . . . . . . . . . . . . . . . . . 384.1.2 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404.1.3 Semantiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.1.4 Principaux resultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.2 Expression de proprietes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.2.1 Observateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.2.2 Logiques temporelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

4.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5 Expressivite comparee de classes de reseaux de Petri 475.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.1.1 Produit synchronise de reseaux de Petri . . . . . . . . . . . . . . . . . 495.2 Equivalence entre les SwPN bornes et 1-saufs . . . . . . . . . . . . . . . . . . 52

5.2.1 Traduction structurelle des reseaux de Petri a chronometres bornes versles reseaux de Petri a chronometres 1-saufs . . . . . . . . . . . . . . . 52

5.2.2 Consequences des resultats precedents . . . . . . . . . . . . . . . . . . 625.2.3 Expressivite des arcs de reset . . . . . . . . . . . . . . . . . . . . . . . 63

5.3 Equivalence entre les RdPT en temps discret et les RdP . . . . . . . . . . . . 685.3.1 Traduction structurelle des RdPT en temps discret vers les RdP . . . 685.3.2 Consequences des resultats precedents . . . . . . . . . . . . . . . . . . 70

5.4 Equivalence entre les SwPN en temps discret et les RdP . . . . . . . . . . . . 715.4.1 Traduction structurelle des SwPN en temps discret vers les RdP . . . 715.4.2 Consequences des resultats precedents . . . . . . . . . . . . . . . . . . 735.4.3 Synthese sur les equivalences en termes de bisimulation temporelle et

d’acceptation de langage temporise . . . . . . . . . . . . . . . . . . . . 745.5 Bilan sur la classification des modeles . . . . . . . . . . . . . . . . . . . . . . 775.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

6 Decidabilite pour les problemes de verification sur les SwPN 816.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

6.1.1 Reseaux de Petri non temporises . . . . . . . . . . . . . . . . . . . . . 836.1.2 Reseaux de Petri temporels . . . . . . . . . . . . . . . . . . . . . . . . 836.1.3 Reseaux de Petri a chronometres . . . . . . . . . . . . . . . . . . . . . 83

6.2 Resultats de decidabilite sur les reseaux non-bornes . . . . . . . . . . . . . . . 846.3 Resultats de decidabilite sur les reseaux bornes . . . . . . . . . . . . . . . . . 856.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

Page 5: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

TABLE DES MATIERES iii

7 Calcul de l’espace d’etats 877.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 897.2 Determination de l’espace d’etats des reseaux de Petri temporels . . . . . . . 89

7.2.1 Methode du graphe des classes d’etats pour les reseaux de Petri tem-porels en temps dense . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

7.2.2 Calcul de l’espace d’etats d’un reseau de Petri temporel borne en tempsdiscret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

7.2.3 Liens entre l’espace d’etats d’un reseau de Petri temporel borne entemps dense et l’espace d’etats du reseau associe en temps discret . . 94

7.3 Determination de l’espace d’etats des reseaux de Petri a chronometres . . . . 957.3.1 Calcul de l’espace d’etats d’un reseau de Petri a chronometres borne en

temps dense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957.3.2 Calcul de l’espace d’etats d’un reseau de Petri a chronometres borne en

temps discret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1057.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

8 Calcul enumeratif de l’espace d’etats des SwPN en temps discret 1078.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1098.2 Traduction des reseaux de Petri en temps discret vers des reseaux non-temporises110

8.2.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108.2.2 Exemple d’analyse de l’espace d’etats . . . . . . . . . . . . . . . . . . 111

8.3 Traduction des modeles en temps discret vers des systemes a compteurs . . . 1128.3.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1128.3.2 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1128.3.3 Techniques basees sur l’acceleration . . . . . . . . . . . . . . . . . . . 1138.3.4 Techniques basees sur la theorie de l’apprentissage . . . . . . . . . . . 1148.3.5 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

8.4 Comparaison des performances . . . . . . . . . . . . . . . . . . . . . . . . . . 1178.4.1 Comparaison des performances entre le calcul en temps dense assure

par Romeo et le calcul en temps discret effectue par Markg . . . . . . 1188.4.2 Comparaison des performances entre le calcul en temps dense assure

par Romeo et le calcul en temps discret effectue par Markg, FAST etLever . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

8.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

9 Calcul symbolique de l’espace d’etats des SwPN en temps discret 1239.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1259.2 Calcul de l’espace d’etats de modeles en temps discret . . . . . . . . . . . . . 1269.3 Espace d’etats symbolique des reseaux de Petri temporels en temps discret . 127

9.3.1 References bibliographiques . . . . . . . . . . . . . . . . . . . . . . . . 1279.3.2 Discretisation de l’espace d’etats des reseaux de Petri temporels en

temps dense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1279.3.3 Approche symbolique pour le calcul de l’espace d’etats des reseaux de

Petri temporels en temps discret . . . . . . . . . . . . . . . . . . . . . 1289.4 Espace d’etats symbolique des SwPN en temps discret . . . . . . . . . . . . . 128

9.4.1 Differences entre semantique en temps dense et semantique en tempsdiscret en termes d’accessibilite de marquage et de langage non temporise128

Page 6: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

iv TABLE DES MATIERES

9.4.2 Une condition suffisante pour que la discretisation de l’espace d’etatsdu reseau en temps dense et l’espace d’etats du reseau en temps discretcoıncident . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

9.4.3 Approche symbolique pour le calcul de l’espace d’etats des reseaux dePetri a chronometres en temps discret . . . . . . . . . . . . . . . . . . 136

9.5 Verification de proprietes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1389.5.1 Vision informelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1389.5.2 Procedure formelle pour la verification de formules TCTL sur les reseaux

de Petri a chronometres en temps discret . . . . . . . . . . . . . . . . 1409.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

10 Implementation : Romeo et Markg 14310.1 Romeo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

10.1.1 Modeles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14510.1.2 Detail des fonctionnalites de Romeo . . . . . . . . . . . . . . . . . . . 14510.1.3 Notre contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14610.1.4 Valorisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

10.2 Markg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14710.2.1 Modeles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14710.2.2 Fonctionnalites et principe . . . . . . . . . . . . . . . . . . . . . . . . . 14810.2.3 Notre contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

11 Conclusions et Perspectives 151

A Correction de la traduction des SwPN bornes vers SwPN 1-saufs 163

B Correction de la traduction des RdPT en temps discret vers les RdP 167

C Correction de la traduction des SwPN en temps discret vers les RdP 173

D Verification de formules TCTL 181D.1 Notations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181D.2 Intervalles TCTL de la forme [a, b] . . . . . . . . . . . . . . . . . . . . . . . . 181D.3 Intervalles TCTL de la forme [a,∞[ . . . . . . . . . . . . . . . . . . . . . . . 182D.4 Reponse bornee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183D.5 Preuve formelle du theoreme 9.9 . . . . . . . . . . . . . . . . . . . . . . . . . 183

Page 7: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Chapitre 1

Introduction

Depuis le milieu du vingtieme siecle, les systemes informatiques occupent une place crois-sante dans notre quotidien. Autrefois cantonnes au domaine militaire (on n’oubliera pasqu’Internet est le descendant d’Arpanet, un reseau developpe sous l’egide du DepartementAmericain de la Defense), ils se logent desormais dans le moindre recoin de nos vies, dutelephone portable au refrigerateur en passant par les regulateurs de vitesse de nos voitures.

En voyant leur nombre et leur importance augmenter, les reseaux informatiques sontdevenus des elements centraux de systemes a haute criticite. Leur mauvais fonctionnementpeut mettre en peril de nombreuses vies humaines ou des investissements financiers colossaux.Les manuscrits de theses dans le domaine de la verification formelle fourmillent d’exemplesde dysfonctionnements informatiques qui auraient pu etre evites si des procedures strictes deverification avaient ete mises en place.

L’echec du premier vol de la fusee Ariane V en 1996 en est sans doute l’illustration laplus emblematique [Bou02]. Si l’auto-destruction de la fusee s’est enclenchee une quarantainede secondes apres l’allumage, c’est par la faute d’un module concu et verifie pour Ariane IV,mais dont le fonctionnement n’avait pas ete verifie pour Ariane V. Ce module connut unedefaillance de par la conjonction de deux evenements anormaux sur l’une de ses fonctions.D’une part, la fonction en cause aurait du etre desactivee lors du decollage car elle n’etaitutile que lorsque la fusee etait sur la plate-forme de lancement, D’autre part, elle assurait laconversion d’un flottant code sur 64 bits vers un entier signe code sur 16 bits. Sur Ariane IV, lalimite des 16 bits de l’entier n’avait jamais ete atteinte. Mais, sur Ariane V, l’architecture tantmaterielle que logicielle etait fondamentalement differente, ce qui conduisit a un depassementde cette limite.

Cette fois-ci, aucune vie humaine ne fut mise en danger. Cela n’est malheureusement pastoujours vrai et l’histoire de l’informatique regorge d’evenements tragiques lies a des erreurslogicielles. A commencer par les defaillances de l’appareil medical Therac-25 qui, entre 1985et 1987, injecta des doses mortelles de radiations a des patients venus suivre un traitementanti-cancereux [Fle02].

Au quotidien, les rappels reguliers de vehicules automobiles par leurs constructeurs sontla pour nous rappeler les problemes que posent l’integration de systemes electroniques etinformatiques [Gar05].

Il est, de fait, primordial de verifier a priori le bon fonctionnement des systemes informa-tiques embarques. Il convient ainsi de developper des formalismes permettant d’ecrire et devalider les interactions entre les activites des processeurs et les reseaux de communication.

Page 8: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

2 Introduction

1.1 Verification formelle

Meme mene avec une grande rigueur, le developpement d’une application informatiquecomporte un certain nombre d’etapes cruciales susceptibles d’engendrer des erreurs. Lesrisques apparaissent des l’ecriture du cahier des charges. Celui-ci est generalement ecrit enlangage naturel, il decrit les fonctionnalites attendues par le maıtre d’ouvrage. Rien ne ga-rantit que les specifications alors mises en evidence soient completes ou meme qu’elles nesoient pas contradictoires ; les recherches pour pallier ce probleme font justement l’objet d’uninteret croissant de la part des acteurs du monde industriels [Rak05]. Mais la n’est pas laseule difficulte. En effet, les specifications sont sujettes a diverses interpretations (principale-ment au moment de la redaction du cahier des charges et de sa mise en application par lesdeveloppeurs) qui sont autant de sources d’erreurs potentielles.

Autre point clef, cette fois-ci lors de la phase de conception : plus le nombre de lignes decode est important, plus il est difficile d’apprehender l’integralite des interactions possiblesentre composants. L’ampleur des programmes deployes interdit desormais une verification dela correction de l’ensemble par un « operateur » humain.

Le facteur humain et la complexite croissante des systemes apparaissent ainsi commedeux elements critiques dans le developpement de logiciels. Ils sont a l’origine de la necessitede recourir a un langage non ambigue : les mathematiques. Les methodes formelles visentjustement a fournir un cadre precis et strict (c’est-a-dire mathematique) permettant de decrireles systemes informatiques a elaborer.

Le concept de methode formelle englobe principalement trois grands types de demarche.

Le test est la methode la plus usitee pour verifier un logiciel. Les travaux de recherche ac-tuels dans le domaine portent sur une formalisation de cette demarche, a travers la generationautomatique de tests pertinents [BT01]. L’objectif est le suivant : etant donnees une specificationformelle du systeme et une propriete a tester, il s’agit d’elaborer un ensemble de scenariiinteressants pour la validation du logiciel. La faiblesse principale de la methode est inherenteau concept meme de test : il est impossible d’envisager tous les cas possibles. Le test est tresutile pour montrer l’existence de bogues mais il ne permettra jamais d’en demontrer l’absence.

La preuve assistee consiste a partir d’un systeme et d’une propriete exprimes dansun meme langage et a prouver que la propriete est verifiee ou non, en utilisant des reglesde deduction logique [Rus01]. S’il n’est pas possible de construire un demonstrateur au-tonome assurant l’ensemble de la preuve (comme en atteste un corollaire du theoreme deGodel, etablissant qu’il n’existe pas d’algorithme qui puisse enumerer toutes les preuves del’arithmetique), des « assistants de preuve » sont toutefois apparus. Ils permettent de prouverou d’exprimer certains lemmes intermediaires.

Enfin, la verification de modeles (ou model-checking) repose sur la construction d’unmodele S du comportement du systeme etudie, la formalisation de la propriete attendue dansune logique adequate (propriete ϕ) et l’utilisation d’un algorithme d’exploration partielle ouexhaustive de l’espace d’etats pour verifier si S satisfait ϕ (ce qui, dans la litterature, se noteS |= ϕ).

Aucune de ces methodes ne suffit a garantir le bon fonctionnement d’un systeme informa-tique. La distance entre le comportement du systeme reel et celui du modele en est une desprincipales raisons. Le systeme reel va evoluer dans un environnement dont le modele peine

Page 9: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

1.2 Systemes temps reel 3

a retranscrire toute la richesse. Une preuve formelle ne peut donc pas, seule, assurer uneanalyse serieuse du systeme. Elle doit, dans tous les cas, etre associee a des tests classiquespermettant de connaıtre le comportement du systeme en conditions reelles.

1.2 Systemes temps reel

Les systemes temps reel constituent un domaine d’exploitation privilegie des methodes for-melles. Ils regroupent les programmes informatiques qui pilotent une application en reagissanta des stimuli recus d’un environnement evolutif. Par « temps reel », nous entendons le faitque les systemes soient capables de repondre a des sollicitations de l’environnement en destemps de reponse en relation avec la constante de temps dominante dans cet environnement.Les architectures embarquees necessitent ainsi generalement que les calculs soient executes entemps reel.

La verification de ces systemes passe non seulement par l’etude de proprietes telles que « lesportes du metro se ferment toujours apres que la sonnerie a retenti » mais aussi d’aspectstemporels quantitatifs tels que « les portes du metro se ferment toujours en moins de 3secondes apres que la sonnerie a retenti ». Le systeme et les proprietes a verifier necessitentalors d’etre exprimes dans des formalismes dedies.

1.3 Extension des domaines d’application des methodes for-melles

Au cours des vingt dernieres annees, les demarches de verification par model-checking ontconnu un essor croissant dans le domaine de la verification des systemes temporises tels qu’onles rencontre dans l’univers des systemes embarques. Avec le temps, les domaines d’applicationde ces methodes formelles ont gagne en variete. L’ingenierie systeme, entre autres, est ainsidevenue fortement demandeuse de tels formalismes [SLRM06].

La certitude d’avoir « construit un bon systeme » (verification) et celle d’avoir « construit lebon systeme » (validation) sont au cœur du processus d’ingenierie systeme [IEE94]. Ces pointssont d’autant plus importants que la problematique actuelle de developpement de systemestoujours plus complexes, concernant des applications civiles ou militaires, met en avant lanecessite cruciale d’une « conception sure ». A l’heure actuelle, la methode la plus courantepour verifier qu’un systeme satisfait a ses specifications ou pour detecter les comportementsimprevus et problematiques consiste a realiser des simulations sur le modele. Cette approchetrouve ses limites dans le fait qu’il est, bien entendu, impossible d’etre exhaustif et de testercompletement le systeme. C’est pourquoi le besoin de recourir aux methodes formelles, etplus particulierement au model-checking, s’est fait sentir. Il s’agit toutefois d’un sujet d’etudeencore emergent.

Ainsi, dans [Sei06], l’auteur montre que tres peu d’outils de modelisation de haut-niveaudu domaine de l’ingenierie systeme ou du developpement de logiciels se pretent « facilement »a des verifications formelles par model-checking via une traduction vers un modele dedie. Lesrecherches en la matiere constituent donc, pour les annees a venir, un vaste terrain d’investi-gation, a la fois fertile et (partiellement) vierge. Ce champ d’application est particulierementprometteur pour la large diffusion des techniques et des logiciels de model-checking au seindu tissu industriel.

Page 10: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

4 Introduction

1.4 Enjeux du model-cheking

Une demarche de model-checking se compose de deux etapes.

La premiere consiste a modeliser le systeme reel. Etant donnee une propriete a verifier surun systeme, un modele est construit comme une abstraction du systeme telle que le systeme etson modele ont le meme comportement vis-a-vis de la propriete consideree. Un modele n’estdonc valable que pour une classe de proprietes considerees : il ne depeint pas l’integralite descomportements reels du systeme. C’est une limite importante a conserver en memoire.

La seconde etape consiste a concevoir des algorithmes de verification de proprietes surles modeles. Ils reposent sur une exploration, partielle ou totale, de l’espace d’etats.

Generalement, l’expressivite d’un modele (nous entendons par la sa capacite a representerun nombre important de caracteristiques du systeme) et sa simplicite en termes de verification(decidabilite et complexite algorithmique) s’opposent. Neanmoins, il est souvent importantde choisir un modele suffisamment expressif car nous evitons ainsi le pessimisme eventueld’un modele surevaluant le comportement reel du systeme. Ce pessimisme peut en effet avoirdeux effets pervers : d’une part, conduire a considerer une propriete fausse sur le modele alorsqu’elle est vraie sur le systeme reel et, d’autre part, mener a un espace d’etats infini alors quecelui d’un modele plus fin serait fini. Le modele discret d’une application peut notammentaboutir a un espace d’etats infini alors qu’un modele plus precis, enrichi des caracteristiquestemporelles de l’application, bornera le nombre d’etats du modele (en restreignant l’ensembledes comportements possibles) et en facilitera la verification.

De plus, il est necessaire, pour verifier certains types d’application (par exemple, cellesfaisant intervenir des problematiques d’ordonnancement de taches), de prendre en compte laduree separant certaines transitions ou actions. Pour ce faire, le temps logique, habituellementcapture par des modeles de type automate fini, n’est plus suffisant.

C’est pour ces raisons que nous nous interessons a des modeles temporises dans lesquelsle temps est manipule explicitement.

1.5 Les modeles temporises

1.5.1 Les automates temporises

Les automates temporises etendent les automates finis classiques avec des horloges expli-cites [AD94]. Des gardes associees aux transitions discretes precisent les instants de tir destransitions. De plus, chaque transition discrete peut se voir adjoindre un ensemble d’horlogesqui seront reinitialisees lors du franchissement de cette transition. Enfin, des invariants as-socies aux localites indiquent les conditions sous lesquelles le temps peut s’ecouler dans unelocalite de l’automate.

1.5.2 Extensions temporelles des reseaux de Petri

Les deux principales extensions temporelles des reseaux de Petri sont les reseaux de Petritemporises [Ram74] et les reseaux de Petri temporels [Mer74]. Dans les premiers, le temps estrepresente par un delai minimal (ou exact, dans le cas d’un fonctionnement « au plus tot »

Page 11: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

1.5 Les modeles temporises 5

du reseau) permettant l’occurrence d’un evenement. Les reseaux temporises constituent uneclasse de reseaux incluse dans les reseaux de Petri temporels. Le temps est integre au sein deces derniers sous la forme d’un intervalle contraignant les instants de tir des transitions.

Differents types de reseaux temporels ont ete introduits. Ils different par l’element auquelest associee la notion de temps : il peut tout aussi bien s’agir des arcs (reseaux de PetriA-temporels [AN01, dFRA00]), des places (reseaux de Petri P-temporels [Kha92]) ou destransitions (reseaux de Petri T-temporels [Mer74]). Une etude complete de l’expressivite deces modeles a ete proposee dans [BR07]. Nous en retenons notamment qu’en apparence, lesreseaux de Petri A-temporels et P-temporels sont tres proches, leur regle de tir etant liee ala conjonction d’horloges locales tandis que, pour les reseaux de Petri T-temporels, seule laderniere horloge est prise en compte. Theoriquement, il s’avere qu’en semantique forte (i.e.toute transition doit etre tiree lorsque la borne temporelle superieure de sa condition de tir estatteinte), les reseaux T-temporels et P-temporels sont incomparables, tandis que les reseauxA-temporels sont plus expressifs que les reseaux P-temporels et les reseaux T-temporels. Enrevanche, l’article met en evidence que la synchronisation par rendez-vous necessite des motifscomplexes lorsqu’on travaille sur des reseaux A ou P-temporels, alors qu’elle est relativementfacile a exprimer avec des reseaux T-temporels.

C’est pourquoi ce modele (et ses extensions a chronometres) constitue un formalisme par-ticulierement adapte pour exprimer le parallelisme et pour modeliser des applications tempsreel au sein de systemes embarques. De fait, au cours de cette these, nous nous focaliseronssur ce modele, que nous designerons simplement par le terme de reseau de Petri temporel.

1.5.3 Modeles a chronometres

Les modeles temporises classiques ne sont generalement pas suffisants pour modeliseret verifier des applications temps reel avec ordonnancement preemptif. En effet, dans cesmodeles, le temps s’ecoule de facon identique pour toutes les composantes du systeme. Cemecanisme permet de modeliser des politiques d’ordonnancement non preemptives, mais ilechoue a representer des politiques d’ordonnancement telles que l’execution d’une tache estinterrompue et reprise au meme endroit plus tard. C’est pourquoi il est necessaire d’etendreces formalismes, sous la forme de « modeles a chronometres ».

Plusieurs modeles integrant la notion de chronometre ont ete definis.

Ainsi, dans [CL00b], Cassez et Larsen ont propose une extension des automates tempo-rises : les automates a chronometres. Ils sont definis comme une sous-classe des automateshybrides lineaires pour laquelle les derivees par rapport au temps des variables ne peuventprendre que deux valeurs exprimant la progression (1) ou la suspension (0) du temps. Leprobleme de l’accessibilite a ete prouve indecidable sur ce modele.

Plus repandus que les automates a chronometres, les automates hybrides etendent les au-tomates temporises classiques a l’aide de variables continues dont les dynamiques d’evolutionsont specifiees dans chaque localite a l’aide d’une equation differentielle. L’accessibilite, etdonc la plupart des problemes classiques de verification, sont indecidables sur ce modele[Hen96].

Dans le cas des reseaux de Petri temporels, plusieurs extensions ont vu le jour : lesScheduling-TPNs [RD01], les Preemptive-TPNs [BFSV04] (ces deux modeles ajoutent res-sources et priorites au formalisme des reseaux de Petri temporels) et les reseaux de Petri

Page 12: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

6 Introduction

temporels a hyperarcs inhibiteurs (RdPTI) [RL04]. Les RdPTI introduisent des arcs inhibi-teurs qui controlent la progression temporelle des transitions. Ces trois modeles appartiennenta la classe des reseaux de Petri a chronometres (SwPN) [BLRV07]. Il a ete prouve qu’en tempsdense, l’accessibilite d’etat et de marquage sont des problemes indecidables sur ces reseaux,meme lorsqu’ils sont bornes. De fait, le calcul de l’espace d’etats pour ces modeles passe pardes semi-algorithmes surapproximant [LR03a, BLRV07].

1.6 Temps dense ou temps discret ?

Lors de la modelisation d’un systeme, se pose la question du choix d’un temps dense oud’un temps discret. La premiere approche consiste a considerer le temps comme une grandeurdense (c’est-a-dire que le systeme peut changer d’etat a n’importe quel moment) tandis quela seconde l’assimile a une grandeur discrete (la progression du temps est assuree par l’oc-currence de tics d’horloge et le systeme ne peut alors evoluer qu’a des instants precis). Lesapplications physiques (procedes) evoluent par rapport au temps physique qui est continu ;toutefois, l’evolution du procede n’est en general observee par le systeme informatique qui lepilote qu’a des instants particuliers (echantillonnage ou observations sporadiques).

Par ailleurs, le systeme de pilotage est compose de taches qui sont executees sur un (ouplusieurs) processeur(s) dont le temps physique est discret. Le temps dense constitue doncune surapproximation du systeme reel. Au niveau du modele, cela peut se traduire par l’ajoutde comportements par rapport au systeme reel. L’importance de cet ajout sera alors fonctionde la granularite temporelle du systeme de pilotage. Il en resulte, lors d’une procedure deverification, un risque d’etre excessivement pessimiste par rapport au comportement d’unsysteme (si, par exemple, un etat interdit appartient justement aux etats ajoutes par lasurapproximation que constitue le temps dense).

Cette objection quant a la pertinence d’un modele en temps dense par rapport au systemereel est generalement ecartee par deux arguments. Le premier consiste a rappeler que lecomportement effectif du systeme sera inclus dans le comportement donne par le modele entemps dense. C’est tout a fait juste, mais le temps dense induit souvent l’indecidabilite denombreux problemes de verification formelle qui sont a contrario decidables lorsqu’on posel’hypothese d’une semantique de temps discret. Le second argument repose sur le fait que rienn’empeche, avec un modele en temps dense, de discretiser temporellement le comportementdu systeme de pilotage. Dans leur discussion autour des merites respectifs des approches entemps dense et en temps discret, les auteurs de [HMP92] comparent la validite de problemesde model-checking suivant la semantique consideree : autrement dit, etant donne un systemeen temps dense satisfaisant une certaine specification Φ (pouvant etre exprimee valablementen temps dense et en temps discret), dans quelles conditions est-il correct d’affirmer que lememe systeme dote, cette fois-ci, d’une semantique de temps discret satisfait la proprieteΦ (et reciproquement) ? Nous nous placons dans la continuite de ces travaux. Nous verronsprecisement, dans ce manuscrit, que s’il est possible, dans le cadre de modeles temporelsclassiques, de discretiser temporellement le comportement du systeme de pilotage, la demarcheest fausse des que nous nous interessons a des modeles representant des actions susceptiblesd’etre suspendues puis relancees.

A cette discussion autour des semantiques de temps dense et de temps discret s’ajoutentdes considerations pratiques portant sur l’efficacite du calcul de l’espace d’etats du modele en

Page 13: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

1.7 Temps discret et extensions temporelles des reseaux de Petri 7

fonction de la semantique. Il existe, en temps dense, des methodes symboliques qui consistenta regrouper un ensemble (fini ou non) d’etats en classes d’etats. Elles permettent ainsi decontenir l’explosion combinatoire de l’espace d’etats. Des structures de donnees recentes,basees sur les Diagrammes de Decision Binaires (Binary Decision Diagram ou BDD), ontcertes vu le jour pour ameliorer les performances des algorithmes enumeratifs en temps discret[WB98, WB00, MDR02]. Toutefois, elles ne suffisent pas toujours a concurrencer les bonsresultats obtenus par les algorithmes symboliques, tant en termes de temps de calcul qued’espace memoire.

Des semantiques de temps dense et de temps discret, aucune ne rassemble tous les ar-guments en sa faveur. Il convient donc de developper a leur egard une approche nuanceeet de disposer de criteres de comparaisons objectifs concernant leur pertinence. A cette fin,nous nous attacherons, dans la suite de ce document, a etablir des resultats theoriques liesa l’expressivite des modeles consideres et a la decidabilite de problemes lies a la verification.Ces travaux, menes en amont, permettent d’identifier le modele approprie a une applicationdonnee. Nous proposerons en outre des methodes pratiques pour un calcul performant del’espace d’etats des modeles etudies. Nous definirons notamment une methode symboliquepermettant de calculer l’espace d’etats d’un modele en temps discret en adaptant les tech-niques habituellement reservees au temps dense.

1.7 Temps discret et extensions temporelles des reseaux dePetri

Rares sont les travaux portant sur les extensions temporelles des reseaux de Petri dans lecas d’une semantique de temps discret. Pour expliquer cette tendance, il faut rappeler que lecalcul de l’espace d’etats des reseaux de Petri temporels bornes est decidable et beneficie destructures de donnees appropriees : les Matrices de Differences Bornees (Difference BoundsMatrix, ou DBM). Dans ces conditions, la necessite de recourir a une semantique de tempsdiscret ne s’est pas fait sentir. Si des travaux en matiere de temps discret ont ete menes surles reseaux de Petri temporels, c’est pour ameliorer le calcul de l’espace d’etats du modele entemps dense. Popova a ainsi prouve qu’il suffit de disposer du comportement d’un reseau enses « etats entiers » (c’est-a-dire des etats pour lesquels un marquage est associe a des valeursd’horloges toutes entieres) pour connaıtre l’integralite du comportement du reseau [Pop91b].

Bui Thanh et al. ont adopte une approche radicalement differente [Pom02, BTKP03] :ils choisissent de representer l’ecoulement temporel explicitement alors qu’habituellement, letemps enrichit le modele des reseaux de Petri via l’ajout, au sein du modele, d’une variableexterne. La progression du temps est alors exprimee par l’occurrence d’un evenement dedie,baptise tick. Ce tick d’horloge permet de specifier des contraintes temporelles entre deuxevenements. Mais plutot que de travailler directement sur les reseaux de Petri, les auteurspreferent etudier un modele de plus haut niveau : les M-nets, qui constituent une classe dereseaux de Petri colores composables. Une extension de ces reseaux permettant la suspensionet la reprise d’actions est en outre introduite. Toutefois, travailler avec des modeles de hautniveau ne resout pas le probleme de l’explosion combinatoire de l’espace d’etats a laquelle lesauteurs de ces recherches sont, eux aussi, confrontes.

Page 14: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

8 Introduction

1.8 Notre contribution

Les travaux de cette these s’inscrivent dans le cadre de la verification formelle de systemestemporises via une demarche de model-checking. Le modele auquel nous interessons est celuides reseaux de Petri. Nous supposons posseder un modele et un cahier des charges du systeme,exprimes dans des formalismes mathematiques. La mise au point des methodologies permet-tant de construire le modele a partir du cahier des charges et la conception des proceduresindiquant comment passer du modele a une implantation pratique constituent de vastes etimportants sujets de travail. Elles vont toutefois bien au-dela de l’objet de notre etude et nousne detaillerons donc pas ces aspects.

Nous souhaitons proposer des elements de reflexion, tant theoriques que pratiques, pourle choix d’une semantique de temps dense ou de temps discret lors de la modelisation dusysteme. Pour ce faire, nous desirons, d’une part, connaıtre les resultats de decidabilite pourles principaux problemes de model-checking sur ces modeles. Nous souhaitons, d’autre part,disposer de methodes efficaces de verification par model-checking.

Au final, nos recherches peuvent etre dissociees en trois parties.

1.8.1 Definition des modeles a chronometres en temps dense et en tempsdiscret

Dans un premier temps, nous donnons les elements theoriques indispensables pour apprehenderles reseaux de Petri temporels et les reseaux de Petri a chronometres en temps dense et entemps discret.

1.8.2 Classification des modeles

La connaissance d’une classification precise des modeles est importante pour identifier lemodele approprie a l’analyse d’un probleme donne. Les deux principales classes d’expressivitesont l’expressivite en termes de bisimulation et celle en termes d’acceptation de langage (l’ex-pressivite en termes de bisimulation impliquant l’expressivite en termes de langage). C’estpourquoi, dans un deuxieme temps, nous nous sommes attaches a etendre certains resultatsconnus, en temps dense, sur les reseaux de Petri temporels au cas des reseaux de Petri a chro-nometres. Nous nous sommes ensuite concentres sur l’expressivite des modeles en temps dis-cret et avons etabli des resultats importants reliant reseaux de Petri non temporises, reseauxde Petri temporels en temps discret et reseaux de Petri a chronometres en temps discret. Cesrecherches se manifestent generalement par l’elaboration de traductions (preservant les com-portements) d’un modele vers un autre. Les idees sous-jacentes a ces traductions sont utilespour etablir de nouveaux resultats de decidabilite sur les modeles. Nous determinons ainsi siplusieurs problemes importants de la verification formelle sont decidables sur les reseaux dePetri a chronometres dotes d’une semantique de temps discret.

1.8.3 Verification des modeles a chronometres en temps discret

Forts de ces resultats theoriques, nous nous efforcons, dans un troisieme temps, de presenterdes methodes pratiques pour l’analyse des reseaux de Petri a chronometres. La verificationd’une propriete sur un modele passant par l’exploration, totale ou partielle, de l’espace d’etatsdu modele, nous nous concentrons sur les algorithmes de determination de l’espace d’etatsdes modeles. Dans le cas du temps dense, nous proposons une amelioration significative de

Page 15: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

1.9 Organisation du manuscrit 9

l’algorithme de calcul de l’espace d’etats d’un reseau de Petri a chronometres. Nous nousfocalisons ensuite sur le temps discret et definissons plusieurs procedures pour le calcul del’espace d’etats des reseaux. La premiere voie envisagee revient a enumerer l’ensemble desetats accessibles du modele : nous recourons a des traductions des reseaux a chronometres entemps discret vers des modeles pour lesquels il existe des logiciels efficaces de determinationde l’espace d’etats. Ceux-ci sont notamment bases sur des structures de donnees appropriees,a l’instar d’extensions des BDD. La seconde demarche consideree repose sur un calcul sym-bolique (inspire des methodes habituellement utilisees en temps dense) de l’espace d’etats.Cette approche consiste a partitionner l’espace d’etats en un nombre fini de classes d’etatspartageant une ou plusieurs proprietes « interessantes » (par exemple, le meme marquage oul’accessibilite par la meme sequence de transitions discretes). Les algorithmes ainsi concussont integres dans Romeo et Markg, outils logiciels assurant, respectivement, l’analyse desreseaux de Petri temporels (et d’une de leurs extensions a chronometres) et le calcul du graphedes marquages des reseaux de Petri non temporises. Nous pouvons ainsi mettre en exerguel’interet pratique des differentes demarches que nous avons exposees.

1.9 Organisation du manuscrit

Le manuscrit se decompose en 5 parties, reparties en 11 chapitres. La presente introductionconstitue la premiere partie de cette these.

La deuxieme partie se focalise sur les modeles temporels que nous etudions et donne leursprincipales caracteristiques.

Le chapitre 2 presente en preliminaires le cadre temporise dans lequel nos travauxprennent place. Nous y introduisons les principales notations et definitions utilisees dansla suite du document. Nous detaillons notamment les differents types de bisimulations qui,plus loin, nous permettront de comparer l’expressivite de differents modeles.

Dans le chapitre 3, nous presentons les reseaux de Petri temporels. Nous donnons leursemantique de temps dense, mais aussi leur semantique de temps discret. Nous rappelons lesprincipales methodes permettant le calcul de l’espace d’etats de ces modeles lorsque c’est unesemantique de temps dense qui est consideree.

Le chapitre 4 s’interesse a une extension des reseaux de Petri temporels qui permet demodeliser des actions susceptibles d’etre suspendues puis relancees : les reseaux de Petri achronometres. Nous decrivons leur semantique de temps dense et leur semantique de tempsdiscret. Nous donnons, dans le contexte du temps dense, un semi-algorithme permettant decalculer leur espace d’etats plus efficacement que les methodes exposees jusque la.

Dans la troisieme partie de ce manuscrit, nous etablissons un ensemble de resultatstheoriques, tant en termes d’expressivite que de decidabilite, sur les reseaux de Petri tempo-rels et les reseaux de Petri a chronometres. La connaissance de ces proprietes est importanteau moment de modeliser le systeme afin de choisir le formalisme et la semantique les mieuxadaptes.

Dans le chapitre 5, nous nous attachons a completer la classification des modeles exis-tante, que ce soit en temps dense ou en temps discret. Nous y decrivons plusieurs traductions

Page 16: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

10 Introduction

preservant la bisimulation : l’une, valable en temps dense et en temps discret, transformetout reseau de Petri a chronometres borne en reseau de Petri a chronometres 1-sauf ; lesdeux autres, dediees au temps discret, construisent un reseau de Petri non temporise a partird’un reseau de Petri temporel ou d’un reseau de Petri a chronometres. Nous en deduisons denombreux resultats d’expressivite sur les modeles.

Le chapitre 6 tire profit des traductions introduites precedemment pour obtenir de nou-veaux resultats de decidabilite sur les modeles dotes d’une semantique de temps discret.

La quatrieme partie porte sur l’elaboration de methodes de verification efficaces sur lesreseaux de Petri a chronometres.

Nous presentons, dans le chapitre 7, les principales methodes existantes de calcul del’espace d’etats des reseaux de Petri temporels et des reseaux de Petri a chronometres. Nousintroduisons une amelioration significative de l’algorithme de calcul de l’espace d’etats existantpour les modeles a chronometres en temps dense. Les travaux sur le temps discret, qui ontconstitue le cœur de nos recherches, font, quant a eux, l’objet des deux chapitres suivants.

Nous commencons par nous concentrer, dans le chapitre 8, sur des approches enumerativesde calcul de l’espace d’etats. Nous tirons profit des traductions exhibees au chapitre 5 pour cal-culer, via un outil d’analyse des reseaux de Petri non temporises, l’espace d’etats des reseauxa chronometres en temps discret. Nous generalisons ensuite cette demarche en proposant unetraduction vers les systemes a compteurs.

Confrontes aux limites des methodes enumeratives, nous adaptons, dans le chapitre 9,les algorithmes de calcul symbolique habituellement utilises pour la determination de l’espaced’etats des modeles en temps dense au cas particulier du temps discret.

Le chapitre 10 presente brievement Romeo, l’atelier logiciel pour la modelisation etla verification de reseaux de Petri temporels dans lequel nous avons implante les differentsalgorithmes developpes dans cette these. Nous decrivons egalement Markg, l’outil auquel nousavons contribue pour calculer l’espace d’etats de reseaux de Petri non temporises.

La derniere partie est composee d’un seul chapitre, le chapitre 11. Nous y dressons unbilan des travaux realises et concluons sur nos perspectives de recherche qui s’inscrivent enpartie dans la continuite de cette these.

Page 17: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Chapitre 2

Preliminaires

ResumeCe chapitre presente les principales notations mathematiques utilisees dans ce manus-

crit ainsi que les notions de base relatives a la manipulation de systemes de contraintes surdes variables (horloges et chronometres). Il traite notamment des concepts de systemes detransitions temporises, de polyedres et de DBM.

Page 18: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

12 Preliminaires

Sommaire

2.1 Ensembles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.2 Alphabets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.3 Systemes de transitions temporises . . . . . . . . . . . . . . . . . . 14

2.3.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.3.2 Langage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.4 Bisimulations et expressivite de modeles temporises . . . . . . . 152.4.1 Bisimulation non temporisee . . . . . . . . . . . . . . . . . . . . . . 162.4.2 Bisimulation temporelle . . . . . . . . . . . . . . . . . . . . . . . . . 162.4.3 Bisimulation via une abstraction du temps . . . . . . . . . . . . . . 172.4.4 Expressivite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.4.5 Quotient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.4.6 Composition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.5 Polyedres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.5.1 Presentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192.5.2 Matrices de differences bornees . . . . . . . . . . . . . . . . . . . . . 202.5.3 Complexite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212.5.4 Discretisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Page 19: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

2.1 Ensembles 13

2.1 Ensembles

N et Z designent les ensembles des entiers naturels et relatifs. R, R+ et R∗+ (respectivementQ, Q+ et Q∗+) designent respectivement l’ensemble des reels, reels positifs et reels strictementpositifs (respectivement l’ensemble des rationnels, rationnels positifs et rationnels strictementpositifs). L’ensemble des booleens est, quant a lui, note B.

Soit E un ensemble fini, nous notons |E| son cardinal.

Soient A et X deux ensembles, nous notons AX l’ensemble des applications de X dans A.Si X est fini et si |X| = n, alors un element de AX est aussi un vecteur de An.

Soit ν ∈ AX une valuation et d ∈ A, ν+d represente le vecteur tel que ∀x ∈ X, (ν+d)(x) =ν(x) + d. Pour X ′ ⊆ X, ν[X ′ 7→ 0] designe la valuation ν ′ ou ν ′(x) = 0 pour x ∈ X ′ etν ′(x) = ν(x) sinon.

Soit E un ensemble quelconque d’elements muni des relations d’ordre <, ≤, =. Soient vet w deux vecteurs de dimension n de E (v, w ∈ En), nous noterons v < w (respectivementv ≤ w, v = w) si et seulement si pour tout indice i entre 1 et n vi < wi (respectivementvi ≤ wi, vi = wi).

∧ designe l’operateur logique et, ∨ l’operateur logique ou et ¬ l’operateur logique non.

Un intervalle I de R+ est un Q+-intervalle si et seulement si son extremite gauche ap-partient a Q+ et son extremite droite a Q+ ∪ {∞}. Nous definissons la fermeture inferieure(respectivement fermeture superieure) de I comme etant l’ensemble I(ti)↓ = {x|x ≤ y poury ∈ I} (respectivement I(ti)↑ = {x|x ≥ y pour y ∈ I}). Nous notons I(Q+) l’ensemble desQ+-intervalles de R+.

Soit X un ensemble de variables. Une contrainte atomique sur X est une formule dela forme x ∼ c, avec x ∈ X, c ∈ Q+ et ∼∈ {<,≤,≥, >}. Nous notons C(X) l’ensembledes contraintes sur l’ensemble de variables X constitue de la conjonction des contraintesatomiques sur X. De plus, nous notons Cdbm(X) l’ensemble des combinaisons booleennes(avec les operateurs logiques ∨, ∧ et ¬) de termes de la forme x − x′ ∼ c ou x ∼ c, avecx, x′ ∈ X, ∼∈ {<,≤,=,≥, >} et c ∈ Q.

Soit D un polyedre dont les variables prennent leurs valeurs dans R+, nous noterons [[D]]l’ensemble de ses solutions.

2.2 Alphabets

Soit K un ensemble, K∗ (respectivement Kω) designe l’ensemble des suites finies (respec-tivement infinies) d’elements de K. Un mot fini (respectivement infini) est une suite d’actionsfinie (respectivement infinie) d’un alphabet K (a1, . . . , an) de K∗ (respectivement Kω). Unmot pourra aussi etre note a1 · a2 . . . an−1 · an.

Tout au long de notre manuscrit, Σ representera un alphabet fini d’actions. Nous notonsε une action (lettre) particuliere dite silencieuse ou non observable, non incluse dans Σ (∀a ∈Σ ∪ {ε} : εa = aε = a). L’ensemble Σ ∪ {ε} sera note σε.

Page 20: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

14 Preliminaires

2.3 Systemes de transitions temporises

2.3.1 Definitions

Les reseaux de Petri temporels peuvent etre consideres comme des generateurs de systemesde transitions temporises [LPY95]. Leur semantique, ainsi que les outils permettant d’expri-mer des proprietes sur ces modeles (i.e. les logiques temporelles), seront exprimes a l’aide dece formalisme.

Un systeme de transitions temporise peut etre vu comme un systeme de transitions pourlequel deux types de transitions sont possibles : des transitions d’actions (ou transitionsdiscretes) et des transitions de temps, modelisant respectivement des evolutions discretes dusysteme et l’ecoulement du temps dans un etat donne du systeme.

Definition 2.1 (Systeme de transitions temporise). Un systeme de transitions tempo-rise sur un alphabet Σ est un 4-uplet S = (Q,Q0,Σ,→) ou :

– Q est un ensemble d’etats ;– Q0 ⊆ Q est l’ensemble des etats initiaux ;– Σ est un alphabet disjoint de R+,– →⊆ Q× {Σ ∪ R+} ×Q est une relation de transition composee :

– d’une relation de transition discrete : a∈Σ−−→⊆ Q× Σ×Q ;

– d’une relation de transition continue : δ∈R+

−−−→⊆ Q× R+ ×QEtant donnes q et q′ deux elements de Q et e ∈ {Σ ∪ R+}, si (q, e, q′) ∈→, nous adoptonsegalement la notation q

e−→ q′.De plus, la relation de transition doit verifier les proprietes suivantes :– determinisme temporel : ∀q, q′, q′′ ∈ Q, ∀δ ∈ R+ si q δ−→ q′ et q δ−→ q′′ alors q′ = q′′.– additivite du temps : ∀q, q′′ ∈ Q, ∀δ1, δ2 ∈ R+, si q δ1+δ2−−−→ q′′ alors il existe q′ ∈ Q tel

que q δ1−→ q′δ2−→ q′′.

– attente nulle : ∀q, q′ ∈ Q, q 0−→ q′ si et seulement si q = q′.

Dans le cas ou q d−−→ q′ avec d ∈ R+, d represente un delai et non pas un temps absolu.

Les modeles en temps discret seront definis comme des systemes de transition temporisesparticuliers pour lesquels la relation de transition continue est remplacee par une relationde transition discrete voyant le temps etre incremente d’un nombre entier d’unites de temps

a chaque franchissement. Dans la definition precedente, cela signifie que la relation δ∈R+

−−−→⊆Q× R+ ×Q s’ecrit alors : 1−→⊆ Q× {1} ×Q

2.3.2 Langage

Definition 2.2 (Sequence de transitions). Soit S = (Q,Q0,Σ,→) un systeme de transi-tions temporise. On designe par sequence de transitions un element de (Σ × R+)∗ que l’on

notera ρ = (δ1, a1, . . . , δn, an) ou encore ρ =(δ1,a1)−−−−→ . . .

(δn,an)−−−−−→.[[S]] designe l’ensemble des sequences de transitions du systeme de transitions temporise.

Si la sequence de transitions ρ est acceptee par un etat initial de S alors on dira que ρ estun mot temporise du systeme de transitions temporise ou encore une execution du systeme.

Page 21: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

2.4 Bisimulations et expressivite de modeles temporises 15

Le langage L d’un systeme de transitions temporise S est l’ensemble des mots formesd’une concatenation de couples delai-action ((δ, a) ∈ R+ × Σ) acceptes par le systeme S.Nous designerons par Untimed(L) le langage non temporise de S i.e. le langage classique surl’alphabet Σ defini par :

Untimed(L) = {a1 . . . an ∈ Σ∗ | ∃δ1 . . . δn t.q. (δ1, a1) . . . (δn, an) ∈ L}

Nous designons parDuration(ρ) la duree d’un mot temporise ρ.Duration(ρ) est la sommedes delais δ1, . . . , δn de ρ.

Definition 2.3 (Etats accessibles). QS designe l’ensemble des etats accessibles d’un systemede transitions temporise S i.e.

QS = {q ∈ Q | ∃ρ ∈[[S]] ∃q0 ∈ Q0 | q0ρ−→ q}

s0 s1 s2

b c

a

δ(2)

δ(1)

Fig. 2.1 – Exemple de systeme de transitions temporise

Exemple 2.1. Considerons le systeme de transitions temporise de la figure 2.1. La sequence detransitions ρ = (2, a)(0, b)(0, b)(1, c) est une execution du systeme. Son langage temporise est L =δ(2)∗ · a · b∗ · δ(1) · c∗ et son langage non temporise Untimed(L) = a · b∗ · c∗

Definition 2.4 (ε-abstraction). Etant donne un systeme de transitions temporise S =(Q,Q0,Σε,→), nous definissons son ε-abstraction par le systeme de transitions temporiseSε defini par Sε = (Q,Qε

0,Σ, →ε) ou :

– qd−→ε q

′ ou d ∈ R+ s’il existe une sequence de transitions ρ = q −→ q′ avec Untimed(ρ) =ε∗ et Duration(ρ) = d,

– qa−→ε q

′ ou a ∈ Σ ssi il existe une sequence de transitions ρ = q −→ q′ avec Untimed(ρ) =ε∗aε∗ et Duration(ρ) = 0,

– Qε0 = {q ∈ Q | ∃q′ ∈ Q0 | q′

ρ−→ q ∧Duration(ρ) = 0 ∧ Untimed(ρ) = ε}.

L’ε-abstraction d’un systeme de transitions temporise permet ainsi d’obtenir un systemeou seules les actions visibles (celles de Σ) sont representees. Nous appellerons ε-transition unetransition etiquetee par ε, se deroulant en temps nul.

Dans le cas ou→⊆ Q×(Σ∪N)×Q, nous appellerons le systeme de transitions temporise unsysteme de transitions temporise en temps discret. Dans la relation q

d−−→ q′, d doit prendreses valeurs dans N, ce qui signifie que le systeme ne peut evoluer qu’a des dates entieres.Un systeme de transitions temporise en temps discret est bien evidemment un systeme detransitions etiquete.

2.4 Bisimulations et expressivite de modeles temporises

L’inclusion et l’egalite de langages ne sont pas toujours suffisantes pour comparer dessystemes entre eux. C’est pourquoi nous recourons egalement a la notion de bisimulationpour etablir des relations de similitude plus fortes entre deux systemes.

Page 22: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

16 Preliminaires

2.4.1 Bisimulation non temporisee

Soient deux systemes de transitions S1 et S2. Nous pouvons definir une equivalence decomportement entre S1 et S2 par l’intermediaire d’une relation de bisimulation. Celle-ci assureque toute action de l’un des deux systemes peut etre simulee par l’autre (et inversement),c’est-a-dire qu’elle a un equivalent dans cet autre systeme.

Definition 2.5 (Bisimulation forte). Soient S1 = (Q1, Q01,Σ,→1) et S2 = (Q2, Q

02,Σ,→2

) deux systemes de transitions etiquetes sur un meme ensemble d’etiquettes Σ et R une relationbinaire sur l’ensemble des etats des deux systemes Q1 ×Q2.R est une bisimulation ssi ∀(q1, q2) ∈ Q1 ×Q2 t.q. q1Rq2,∀a ∈ Σ,{∃q′1 ∈ Q1 t.q. q1

a→1 q′1 ⇒ ∃q′2 ∈ Q2 t.q. q2

a→2 q′2 et q′1Rq′2,

∃q′2 ∈ Q2 t.q. q2a→2 q

′2 ⇒ ∃q′1 ∈ Q1 t.q. q1

a→1 q′1 et q′1Rq′2

Nous pouvons remarquer que deux systemes de transitions bisimilaires ont le meme lan-gage.

Dans le cas ou les systemes de transitions consideres S1 et S2 incluent des ε-transitions, ilest possible de definir la notion de bisimulation faible : il s’agit d’une bisimulation forte entreles systemes de transitions en ignorant les actions silencieuses, autrement dit une bisimulationforte entre Sε

1 et Sε2 . Informellement parlant, le concept de bisimulation faible permet de mettre

en avant certains evenements que nous souhaitons observer et de negliger d’autres evenementsque tenons pas necessairement a voir.

2.4.2 Bisimulation temporelle

Les relations de bisimulation ont leur equivalent dans le domaine des systemes de tran-sitions temporises. Nous definissons ainsi le concept de relation de bisimulation temporelle :R est une bisimulation temporelle si c’est une bisimulation a la fois pour la relation de tran-sition temporelle et pour la relation de transition discrete. Et, pour pouvoir comparer plusprecisement deux systemes de transitions temporises, nous allons distinguer relation de bisi-mulation temporelle forte et faible.

Definition 2.6 (Bisimulation temporelle forte). Soient S1 = (Q1, Q10,Σ,→1) et S2 =

(Q2, Q20,Σ,→2) deux systemes de transitions temporises1 et ≈S une relation binaire sur les

etats du systeme, Q1 ×Q2. Nous ecrivons s ≈S s′ pour (s, s′) ∈≈S . ≈S est une relation debisimulation temporelle forte entre S1 et S2 si :

– s1 ≈S s2, pour tout (s1, s2) ∈ Q10 ×Q2

0 ;– si s1

t−→1 s′1 avec t ∈ R+ et s1 ≈S s2 alors il existe s′2 ∈ Q2 tel que s2t−→2 s′2 et

s′1 ≈S s′2 ; inversement, si s2t−→2 s

′2 et s1 ≈S s2 alors il existe s′1 ∈ Q1 tel que s1

t−→1 s′1

et s′1 ≈S s′2 ;– si s1

a−→1 s′1 avec a ∈ Σ et s1 ≈S s2, alors il existe s′2 ∈ Q2 tel que s2a−→2 s′2 et

s′1 ≈S s′2 ; inversement, si s2a−→2 s

′2 et s1 ≈S s2 alors il existe s′1 ∈ Q1 tel que s1

a−→1 s′1

et s′1 ≈S s′2.Deux systemes de transitions temporises S1 et S2 sont fortement temporellement bisimilairess’il existe une relation de bisimulation temporelle forte entre S1 et S2. Nous ecrivons alorsS1 ≈S S2.

1Notons qu’ils ne contiennent pas d’ε-transition.

Page 23: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

2.4 Bisimulations et expressivite de modeles temporises 17

Definition 2.7 (Bisimulation temporelle faible). Soient S1 = (Q1, Q10,Σε,→1) et S2 =

(Q2, Q20,Σε,→2) deux systemes de transitions temporises et ≈W une relation binaire sur les

etats du systeme, Q1×Q2. ≈W est une relation de bisimulation temporelle faible entre S1 etS2 si c’est une relation de bisimulation temporelle forte entre Sε

1 et Sε2.

Notons que, si S1 ≈S S2, alors S1 ≈W S2 et si S1 ≈W S2 alors L(S1) = L(S2) (i.e. S1 etS2 ont le meme langage temporise).

Etant donne que nous allons egalement comparer l’expressivite de systemes temporisesdotes d’une semantique de temps discret, nous aurons egalement besoin de la notion debisimulation temporelle pour des systemes en temps discret. La definition formelle en estintuitive. Tout systeme de transition temporise dote d’une semantique de temps discret etantun systeme de transitions temporise, il vient immediatement que les definitions de bisimulationtemporelle forte et faible s’appliquent pour des modeles munis d’une semantique de tempsdiscret.

2.4.3 Bisimulation via une abstraction du temps

Afin de completer la comparaison que nous allons mener entre les modeles, nous avonsegalement besoin d’un critere de comparaison permettant d’abstraire le temps des modelestemporises etudies. Pour ce faire, nous avons besoin de la notion de bisimulation via uneabstraction du temps.

Definition 2.8 (Bisimulation via une abstraction du temps). Soient S1 =(Q1, Q

10,Σ,→1) et S2 = (Q2, Q

20,Σ,→2) deux systemes de transitions temporises et ≈ta

W unerelation binaire sur les etats du systeme, Q1 ×Q2. Nous ecrivons s ≈ta

W s′ pour (s, s′) ∈≈taW .

≈taW est une relation de bisimulation via une abstraction du temps ( time-abstract bisimula-

tion) entre S1 et S2 si :– s1 ≈ta

W s2, pour tout (s1, s2) ∈ Q10 ×Q2

0 ;

– si s1t−→1 s

′1 avec t ∈ R+ et s1 ≈ta

W s2 alors il existe t′ ∈ R+, s′2 ∈ Q2 tels que s2t′−→2 s

′2

et s′1 ≈taW s′2 ; inversement si s2

t′−→2 s′2 et s1 ≈ta

W s2 alors il existe t ∈ R+ et s′1 ∈ Q1

tels que s1t−→1 s

′1 et s′1 ≈ta

W s′2 ;– si s1

a−→1 s′1 avec a ∈ Σ et s1 ≈taW s2 alors il existe s′2 ∈ Q2 tel que s2

a−→2 s′2 ets′1 ≈ta

W s′2 ; inversement, si s2a−→2 s′2 et s1 ≈ta

W s2 alors il existe s′1 ∈ Q1 tel ques1

a−→1 s′1 et s′1 ≈ta

W s′2.

Dans la suite de ce manuscrit, nous serons amenes a comparer l’expressivite de systemestemporises dotes d’une semantique de temps discret et de systemes non-temporises. C’estpourquoi nous etendons la definition de bisimulation via une abstraction du temps au casou l’un des systemes de transitions n’est pas temporise. Nous obtenons des lors la definitionsuivante :

Definition 2.9 (Bisimulation via une abstraction du temps etendue). Soient S1 =(Q1, Q

10,Σ,→1) un systeme de transitions, S2 = (Q2, Q

20,Σ,→2) un systeme de transitions

non temporise et ≈taW une relation binaire sur les etats du systeme, Q1 ×Q2. Nous ecrivons

s ≈taW s′ pour (s, s′) ∈≈ta

W . ≈taW est une relation de bisimulation via une abstraction du temps

( time-abstract bisimulation) entre S1 et S2 si :– s1 ≈ta

W s2, pour tout (s1, s2) ∈ Q10 ×Q2

0 ;

Page 24: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

18 Preliminaires

– si s1t−→1 s′1 (t ∈ R+) avec s1 ≈ta

W s2 alors il existe une sequence d’ε-transitions

(eventuellement vide) de S2 conduisant de s2 a s′2 ∈ Q2 (s2ε∗−−→2 s

′2) tel que s′1 ≈ta

W s′2 ;

inversement, si s2ε∗−−→2 s

′2 avec s1 ≈ta

W s2, alors il existe t ∈ R+ (donc eventuellementnul) conduisant de s1 a s′1 ∈ Q1 (s1

t−→1 s′1) tels que s′1 ≈ta

W s′2 ;– si s1

a−→1 s′1 avec a ∈ Σ et s1 ≈ta

W s2 alors il existe s′2 ∈ Q2 tel que s2w−→2 s

′2 avec

w = ε∗.x et s′1 ≈taW s′2 ; inversement, si s2

a−→2 s′2 avec a ∈ Σ et s1 ≈ta

W s2 alors il existes′1 ∈ Q1 tel que s1

a−→1 s′1 et s′1 ≈ta

W s′2.

Cette definition s’applique evidemment au cas d’un systeme de transitions temporise doted’une semantique de temps discret et d’un systeme de transitions non temporise.

Pour finir, remarquons que toute relation en temps discret de bisimulation temporelle(forte ou faible) est aussi une relation de bisimulation classique non temporisee.

Dans ce manuscrit, nous nous interessons a la bisimulation non temporisee, a la bisimula-tion temporelle faible et a la bisimulation via une abstraction du temps. Nous notons R pourla relation de bisimulation non temporisee, ≈ pour ≈W et ≈ta pour ≈ta

W .

2.4.4 Expressivite

Definition 2.10 (Expressivite en termes d’acceptation de langage temporise). Laclasse C est plus expressive que C′ en termes d’acceptation de langage temporise si, pourtout B′ ∈ C′, il existe L(B) = L(B′). Nous notons alors C′ ≤L C. De plus, s’il existe B ∈ Ctel que il n’existe pas de B′ ∈ C′ avec L(B) = L(B′), alors C′ <L C (« strictement moinsexpressive »). Si nous avons a la fois C′ ≤L C et C ≤L C′ alors C et C′ sont d’expressiviteequivalente en termes d’acceptation de langage temporise, ce que nous notons C =L C′.

Definition 2.11 (Expressivite en termes de bisimulation temporelle (faible)). Laclasse C est plus expressive que C′ en termes de bisimulation temporelle forte (respective-ment faible) si, pour tout B′ ∈ C′, il existe B ∈ C tel que B ≈S B′ (respectivement B ≈ B′).Nous notons alors C′ ⊆≈S C (respectivement C′ ⊆≈ C). De plus, s’il existe B ∈ C tel qu’iln’existe pas de B′ ∈ C′ tel que B ≈S B′ (respectivement B ≈ B′), alors C′ ⊂≈S C (respective-ment C′ ⊂≈ C). Si nous avons a la fois C′ ⊂≈S C et C ⊂≈S C′ (respectivement ⊂≈) alors C etC′ sont d’expressivite equivalente en termes de bisimulation temporelle forte (respectivementfaible), ce que nous notons C =≈S C′ (respectivement C =≈ C′).

Cette definition s’etend immediatement a l’expressivite par rapport aux differentes bisi-mulations definies dans cette partie (bisimulation temporelle en temps discret, bisimulationvia une abstraction du temps, etc.).

2.4.5 Quotient

Dans le cadre des modeles en temps dense, les systemes de transitions temporises consideresont generalement un nombre d’etats infini. Pour les analyser, il est alors possible d’avoir re-cours a des abstractions qui regroupent les etats entre eux suivant une relation d’equivalencedonnee, le but etant d’obtenir un quotient fini du systeme permettant une etude algorith-mique.

Page 25: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

2.5 Polyedres 19

Definition 2.12 (Quotient). Soient S = (Q,Q0,Σ,→) un systeme de transitions temporiseet R ⊆ Q×Q une relation d’equivalence sur les etats de S.

Le quotient de S par R note SR est le systeme de transitions temporise (Q′, Q′0,Σ, )defini par :

– Q′ est l’ensemble des classes d’equivalence de Q par R.– Q′0 est constitue des classes d’equivalence de Q0.– est definie par : soient q, q′ ∈ Q×Q et a ∈ Σ, (q, a, q′) ∈ si et seulement s’il existe

(s, s′) ∈ Q×Q tel que s ∈ q, s′ ∈ q′ et (s, a, s′) ∈→.

2.4.6 Composition

Plus loin dans notre manuscrit, nous aurons besoin de definir le produit synchronise dereseaux de Petri. C’est pourquoi nous rappelons ici la definition de la composition de deuxsystemes de transitions temporises.

Nous definissons par fonction de synchronisation une fonction partielle de (Σ∪ {•})2 versΣ ou • designe une non-action i.e. s •−→ s′ si et seulement si s = s′.

Definition 2.13 (Composition parallele). Soient Si = (Qi, Q0i ,Σi,→i), i = 1, 2, deuxsystemes de transitions temporises et f une fonction de synchronisation. La composition pa-rallele (S1|S2)f est definie par le systeme de transitions temporise S = (Q,Q0,Σ,→) ou :

– Q = Q1 ×Q2 ;– Q0 = Q10 ×Q20 ;– Σ = Σ1 ∪ Σ2 :– →⊆ {Q1 ×Q2} × {Σ1 ∪ Σ2 ∪ R+} × {Q1 ×Q2} est definie par :

– ((q1, q2), c, (q′1, q′2)) ∈→ ssi (q1, a, q′1) ∈→1 ∧(q2, b, q′2) ∈→2 ∧f(a, b) = c

– ((q1, q2), δ, (q′1, q′2)) ∈→ ssi (q1, δ, q′1) ∈→1 ∧(q2, δ, q′2) ∈→2

Cette definition s’etend naturellement a la composition parallele de n systemes.

2.5 Polyedres

2.5.1 Presentation

Le calcul de l’espace d’etats des reseaux de Petri temporels et de leurs extensions faitintervenir des polyedres convexes, d’ou la necessite de les definir prealablement.

Definition 2.14. Un polyedre convexe rationnel est un ensemble de points (dans un espacevectoriel de dimension n) qui satisfait un nombre fini d’inequations lineaires a coefficientsrationnels.

Nous noterons Pn l’ensemble des polyedres convexes de Rn.

Definition 2.15. Un polyedre P ∈ Pn est borne s’il existe λ ∈ R+ tel que P ⊆ {x ∈ Rn|−λ ≤xj ≤ λ, j = 0 . . . n− 1}. Un polyedre borne est un polytope.

Les polyedres possedent deux representations duales : ils peuvent etre definis soit commeun ensemble de contraintes lineaires, soit comme un ensemble de generateurs (union d’unpolytope et d’un cone polyedrique [Sch86]). Chacune de ces representations admet des formes

Page 26: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

20 Preliminaires

minimales et une forme canonique unique, a un choix de base de sous-espace vectoriel pres[AFP02].

Dans la suite, nous privilegierons la representation sous forme d’ensemble de contrainteslineaires, plus intuitive a apprehender des lors qu’on utilise les polyedres pour le calcul del’espace d’etats de reseaux de Petri temporels.

Les polyedres que nous allons manipuler seront donc representes par un systeme d’inequationslineaires en X : A.X ≤ B, ou A ∈ Rm×n est une matrice et B ∈ Rm un vecteur donnes tandisque X ∈ Rn est le vecteur inconnu.

De maniere generale, les operations sur les polyedres sont de complexite elevee. C’estpourquoi on cherche habituellement a travailler sur des sous-ensembles de l’ensemble despolyedres convexes generaux. Les formules de Cdbm(X) (ou X est un ensemble de variables)definissent ainsi des polyedres presentant l’avantage de pouvoir etre representes a l’aide dematrices de differences bornees (Difference Bounds Matrix, ou DBM) [BM83, Dil89].

2.5.2 Matrices de differences bornees

Les matrices de differences bornees permettent de stocker de maniere simple et concise lescontraintes de Cdbm(X) sous la forme d’une matrice.

Ainsi, dans le cas ou chaque ligne de A contient au plus un coefficient 1, au plus un −1 etpour le reste uniquement des 0, le systeme A.X ≤ B, definissant un polyedre P ∈ Pn, peutetre represente sous la forme d’une matrice appelee matrice de differences bornees. NotonsM = (mij ,≺ij)i,j=0...n la matrice de differences bornees permettant de representer P . Soit x0

une variable telle que x0 = 0. Nous pouvons alors ecrire toutes les inequations du systemeA.X ≤ B sous la forme xi − xj ≤ mi,j

La premiere colonne de M represente la borne superieure des variables. Si xi − x0 ≺ capparaıt dans A.X ≤ B alors l’element mi0 est le couple (c,≺), sinon l’element est (∞, <),ce qui signifie que la variable xi n’a pas de borne superieure.

La premiere ligne de M represente la borne inferieure des variables. Si x0 − xi ≺ −capparaıt dans A.X ≤ B alors l’element m0i est (−c,≺), sinon l’element est (−∞,≤), ce quisignifie que la variable xi n’a pas de borne inferieure. Notons que, dans le cas particulierde l’etude des reseaux de Petri temporels, les variables x representent des horloges qui nepeuvent prendre que des valeurs positives ou nulles. Cela signifie que l’on ne rencontrerajamais le couple (−∞,≤) dans une DBM, mais plutot (0,≤).

Pour i, j > 0 si xi−xj ≺ c apparaıt dans A.X ≤ B alors mij = (c,≺), sinon mij = (∞, <).

Definition 2.16 (Zone). On notera Z(M) la zone representee par une DBM M .

Exemple 2.2 (Exemple de DBM). Le polyedre de la figure 2.2 peut etre represente par les DBMproposees sur la figure 2.3.

L’exemple 2.2 montre que des DBM distinctes peuvent representer un meme ensemble decontraintes. Il existe toutefois une forme canonique permettant d’identifier de maniere uniquedes polyedres distincts. Il est donc possible de tester l’egalite de deux DBM ou de determinersi une DBM code une zone vide.

Nous appellerons polyedre non-DBM un polyedre ne pouvant pas etre stocke sous la formed’une DBM. La figure 2.4 represente un tel polyedre.

Nous ne detaillerons pas ici les differentes operations sur les DBM. Des presentationscompletes de celles-ci peuvent etre trouvees dans [Yov96] ou [CGP99].

Page 27: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

2.5 Polyedres 21

x2

0 1 2

12

x1

3456789

3 4 5 6 7 8 9 10 11 12

Fig. 2.2 – Exemple de polyedre pouvant etre represente a l’aide d’une DBM

x0 x1 x2

x0 (0,≤) (−2,≤) (−2,≤)x1 (11,≤) (0,≤) (∞, <)x2 (8,≤) (0,≤) (0,≤)

ou

x0 x1 x2

x0 (0,≤) (−2,≤) (0,≤)x1 (11,≤) (0,≤) (∞, <)x2 (8,≤) (0,≤) (0,≤)

Fig. 2.3 – Deux DBM pour un meme polyedre

2.5.3 Complexite

Soit n la dimension de l’espace, donc le nombre de variables du systeme. Pour les DBM, lesalgorithmes de test d’inclusion, d’intersection et d’egalite ont des complexites quadratiquesen n (O(n2)). La mise sous forme canonique et le test du vide se font en O(n3).

A contrario, si on considere un polyedre de l’espace avec m sommets, le calcul de la misesous forme canonique a une complexite au pire cas polynomiale en n et en m [AFP02].

Les operations courantes sur les DBM sont donc souvent plus efficaces que leurs equivalentssur des polyedres generaux. Il est donc interessant, quand on manipule des polyedres pouvantetre stockes sous forme de DBM, de recourir a cette structure matricielle.

x2

0 1 2

12

x1

3456789

3 4 5 6 7 8 9 10 11 12

Fig. 2.4 – Exemple de polyedre ne pouvant pas etre represente a l’aide d’une DBM

Page 28: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

22 Preliminaires

2.5.4 Discretisation

Dans la suite de ce manuscrit, nous aurons parfois besoin de discretiser les polyedres quenous manipulerons. C’est pourquoi nous introduisons un operateur de discretisation ainsi quela notion de point entier.

Definition 2.17 (Operateur de discretisation). Soient un entier n ∈ N et un ensembleD ∈ Rn. Nous definissons l’operateur de discretisation du domaine D comme etant : Disc(D) =D ∩ Nn

Definition 2.18 (Point entier). Soient un entier n ∈ N et un ensemble D ∈ Rn. Un pointθ = (θ1, θ2, . . . , θn) ∈ D est un point entier de D si toutes ses coordonnees sont entieres, i.e.∀i, θi ∈ N.

Page 29: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Chapitre 3

Modeles temporels

ResumeLes systemes temps reel peuvent etre modelises a l’aide de systemes de transitions tempo-

rises. Ces derniers, aussi pertinents soient-ils, ont souvent l’inconvenient d’etre trop generauxpour permettre une representation efficace et intuitive d’un systeme reel. De fait, des for-malismes de plus haut niveau ont vu le jour pour faciliter les taches de conception et deverification. Les reseaux de Petri T-temporels constituent un de ces outils. Nous en proposonsune presentation informelle avant de rappeler les definitions et principaux resultats associes.Nous introduisons la discussion autour de l’adoption d’une semantique appropriee pour cemodele : se pose en effet la question du choix d’un temps dense (consistant a considerer quele systeme peut changer d’etat a n’importe quel moment) ou d’un temps discret (la progressiondu temps est alors assuree par l’occurrence de tics d’horloge et le systeme ne peut evoluer qu’ades instants precis).

Page 30: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

24 Modeles temporels

Sommaire

3.1 Reseaux de Petri temporels . . . . . . . . . . . . . . . . . . . . . . 253.1.1 Presentation informelle . . . . . . . . . . . . . . . . . . . . . . . . . 253.1.2 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.1.3 Semantiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.1.4 Principaux resultats . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.1.5 Arcs de reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

Page 31: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

3.1 Reseaux de Petri temporels 25

3.1 Reseaux de Petri temporels

Les systemes de transitions constituent un modele general et puissant. Ils souffrent nean-moins d’etre de tres bas niveau. C’est pourquoi, dans des problematiques de verification for-melle de systemes temps reel, nous leur preferons des outils allegeant l’effort de modelisation :les automates temporises [AD94] et les reseaux de Petri etendus avec le temps [Ram74, Mer74].Nous ne perdons toutefois pas les avantages propres aux systemes de transitions puisque cesderniers servent a definir la semantique de ces modeles de plus haut niveau.

Dans ce manuscrit, nous nous focalisons sur les reseaux de Petri temporels. Pourquoides reseaux de Petri et non pas des automates ? Difficile de repondre a cette question sansheurter de sensibilite. En premier lieu, il nous semble utile de rappeler que les reseaux dePetri et les automates sont intimement lies. De nombreux travaux recents se sont attaches aetablir des liens entre ces modeles dans leurs versions temporisees. Entre autres, on retiendraque les reseaux de Petri temporels et les automates temporises ont la meme expressivite entermes d’acceptation de langage temporise. Mais, en termes de bisimulation, les automatestemporises sont strictement plus expressifs que les reseaux de Petri temporels bornes. Pourde plus amples renseignements sur ces resultats, nous invitons le lecteur a se plonger dans lalecture des articles suivants : [CR06, BCH+05b, BCH+05a, BCH+05c].

Une fois rappeles les liens privilegies entre ces deux modeles, nous devons preciser que, denotre point de vue, le parallelisme des systemes temps reel est plus facile a representer sous laforme de reseaux de Petri. C’est pourquoi nous avons opte, dans ce manuscrit, pour ce forma-lisme. Il est toutefois important de garder en tete que reseaux de Petri et automates sont deuxmodeles qui, trop souvent presentes comme « antagonistes », sont en fait complementaires.

Pour integrer le temps aux reseaux de Petri, deux principales extensions ont vu le jour :les reseaux de Petri temporises [Ram74] et les reseaux de Petri temporels [Mer74]. Dans lespremiers, le temps est represente par un delai exact permettant l’occurrence d’un evenement.Les reseaux temporises constituent une classe de reseaux incluse dans les reseaux de Petritemporels. Dans ces derniers, le temps est precise sous la forme d’un intervalle contraignantles instants de tir des transitions.

Il existe egalement deux semantiques usuelles pour les reseaux de Petri temporels : lasemantique dite forte et celle dite faible. Dans le cas de la semantique faible, les contraintesde temps constituent des instants possibles d’occurrences d’evenements (autrement dit, lesbornes temporelles superieures peuvent etre depassees) alors que pour la semantique forte,l’evenement doit necessairement se produire dans l’intervalle donne. Cette difference impliquedes resultats d’indecidabilite pour la semantique forte [JLL77].

3.1.1 Presentation informelle

Les reseaux de Petri T-temporels ou time Petri nets en anglais) [Mer74] etendent lesreseaux de Petri avec des intervalles de temps [a(t), b(t)] associes a chaque transition t dureseau. Pour etre tiree, une transition t doit non seulement etre sensibilisee mais aussi l’avoirete continument pendant une duree comprise entre a(t) et b(t). Dans la suite de ce manuscrit,ces reseaux seront appeles simplement reseaux de Petri temporels ; nous les designerons parl’acronyme RdPT.

Page 32: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

26 Modeles temporels

Puisque nous avons fait le choix de travailler en semantique forte, une fois atteinte ladate b(t), la transition t devra obligatoire etre franchie, a moins d’avoir ete desensibilisee puisnouvellement sensibilisee par le tir d’une autre transition.

P1

t1 [5,6]

P2

t2 [0,1]

P4

t4 [2,4]

P3

t3 [1,2]

Fig. 3.1 – Un exemple de reseau de Petri temporel

Exemple 3.1. Considerons le reseau de Petri temporel de la figure 3.1, les transitions t1, t2 et t4sont sensibilisees au sens classique des reseaux de Petri. Si le temps s’ecoule d’une unite de temps,les horloges associees a t1, t2 et t4 auront alors la meme valuation x1 = x2 = x4 = 1. Dans cetteconfiguration, seule la transition t2 est franchissable.

Lors du franchissement de t2, le jeton de la place P2 est consomme et un jeton est genere dans laplace P3. La transition t3 est alors sensibilisee et l’horloge associee est mise a zero et declenchee.

3.1.2 Definition

Definition 3.1 (Reseau de Petri temporel). Un reseau de Petri temporel est un 7-upletN = 〈P, T,•(.), (.)•, a, b,M0〉 ou :

– P = {P1, . . . , Pm} est un ensemble fini et non vide de places ;– T = {t1, . . . , tn} est un ensemble fini et non vide de transitions ;– •(.) : T → NP est la fonction d’incidence amont ;– (.)• : T → NP est la fonction d’incidence aval ;– a : T → N est la fonction donnant la date de tir au plus tot d’une transition ;– b : T → N ∪ {∞} est la fonction donnant la date de tir au plus tard d’une transition ;– M0 ∈ NP est le marquage initial du reseau.

Un marquage du reseau de Petri est un vecteur de NP tel que pour toute place p ∈ P ,M(p) est le nombre de jetons dans la place p.

Une transition t est dite sensibilisee par le marquage M si le nombre de jetons danschaque place en amont de t est superieur ou egal a la valuation de l’arc entre cette place etla transition (M ≥• t). Nous notons alors t ∈ enabled (M)..

Une transition t est dite desensibilisee par le tir de t′ depuis M si elle est sensibilisee parM mais pas par M −• t′. Nous notons alors t ∈ disabled(M, t′).

Page 33: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

3.1 Reseaux de Petri temporels 27

Une transition t est dite nouvellement sensibilisee par le tir d’une transition t′ si elle estsensibilisee par le marquage M −• t′ + t′• mais ne l’est pas par le marquage M −• t′. Si t = t′

alors t est nouvellement sensibilisee. Nous notons alors t ∈↑ enabled (M, t′) ou ↑ enabled (·, ·)est defini par :

↑enabled(M, t′

)= {t ∈ T |M −• t′ + t′• ≥• t ∧ (t = t′ ∨ ¬(M −• t′ ≥• t)}

Exemple 3.2. En considerant l’exemple de la figure 3.1, le marquage initial est M0 = (1, 1, 0, 1).Les transitions sensibilisees par le marquage initial sont enabled (M0) = {t1, t2, t4} . L’ensemble destransitions nouvellement sensibilisees par le tir de la transition t2 est ↑enabled (M0, t2) = {t3}.

3.1.3 Semantiques

3.1.3.1 En temps dense

Nous donnons la semantique d’un reseau de Petri temporel sous la forme d’un systeme detransitions temporise.

Definition 3.2 (Semantique d’un reseau de Petri temporel en temps dense). Lasemantique d’un reseau de Petri temporel N en temps dense est definie sous la forme d’unsysteme de transitions temporise Sdense

N = (Q, q0, T,→) tel que :– Q = NP × (R+)T

– q0 = (M0, 0)– →∈ Q× (R+ ∪T )×Q est la relation de transition incluant des transitions continues et

des transitions discretes :– soient q = (M,ν) ∈ Q et q′ = (M,ν ′) ∈ Q deux etats du reseau, la relation de

transition continue est definie ∀d ∈ R+ par :

(M,ν) d−→ (M,ν ′) ssi ∀ti ∈ T,{ν ′(ti) = ν(ti) + dM ≥• ti ⇒ ν ′(ti) ≤ b(ti)

– soient q = (M,ν) ∈ Q et q′ = (M ′, ν ′) ∈ Q deux etats du reseau, la relation detransition discrete est definie ∀ti ∈ T par :

(M,ν) ti−→ (M ′, ν ′) ssi

ti ∈ enabled(M)M ′ = M −• ti + t•ia(ti) ≤ ν(ti) ≤ b(ti)

∀tk ∈ T, ν ′(tk) ={

0 si tk ∈↑ enabled(M, ti)ν(tk) sinon

Nous notonsMN l’ensemble des marquages accessibles d’un reseau de Petri temporel N .

Remarque. Nous considerons une semantique sans multi-sensibilisation i.e. une seule horlogepour chaque transition sensibilisee. D’autres semantiques peuvent s’appliquer dans le cas dela multi-sensibilisation en considerant par exemple autant d’horloges par transition que desensibilisations simultanees [Ber01].

Page 34: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

28 Modeles temporels

Exemple 3.3. L’ensemble des marquages accessibles du reseau de Petri temporel de la figure 3.1 estMN = {(1, 1, 0, 1), (1, 0, 1, 1), (1, 0, 0, 1), (1, 0, 1, 0), (1, 0, 0, 0), (0, 0, 0, 0)}. ρ1 et ρ2 sont deux sequences

de transitions de sa semantique ou le vecteur

(m1,m2,m3,m4)v(t1)v(t2)v(t3)v(t4)

de NP ×R+4 represente l’etat du reseau

de Petri temporel i.e. son marquage et les valuations des differentes horloges.

ρ1 =

(1, 1, 0, 1)00×0

1−→

(1, 1, 0, 1)11×1

t2−→

(1, 0, 1, 1)1×01

1−→

(1, 0, 1, 1)2×12

t4−→

(1, 0, 1, 0)2×1×

ρ2 =

(1, 1, 0, 1)00×0

0.5−−→

(1, 1, 0, 1)0.50.5×0.5

t2−→

(1, 0, 1, 1)0.5×0

0.5

1−→

(1, 0, 1, 1)1.5×1

1.5

t3−→

(1, 0, 0, 1)1.5××1.5

× signifie que la transition associee n’est pas sensibilisee : la valuation de l’horloge n’a pas d’in-fluence sur le comportement du reseau.

3.1.3.2 En temps discret

Dans l’approche en temps discret, le temps est vu comme une variable qui « saute » d’unentier a l’autre sans que l’on se preoccupe de ce qui peut survenir entre deux tics d’horloge.Bien entendu, les comportements d’un modele exprime en temps discret sont inclus dans ceuxdu modele correspondant muni d’une semantique de temps dense.

Nous definissons la semantique d’un reseau de Petri temporel en temps discret N sousla forme d’un systeme de transitions dans lequel nous distinguons deux types de relationsdiscretes : d’une part, une relation de transition discrete modifiant le marquage du reseau et,d’autre part, une relation de transition correspondant a un ecoulement discret du temps (quise caracterise par l’incrementation d’une unite des horloges associees a chaque transition).Ainsi, nous choisissons d’exprimer ce systeme de transitions sous la forme d’un systeme detransitions temporise Sdiscrete

N = (Q, q0, T,→) : partant de la definition que nous avons donneepour le temps dense, nous remplacons la relation de transition continue par une relation detransition de temps discret.

Definition 3.3 (Semantique d’un reseau de Petri temporel en temps discret). La se-mantique d’un reseau de Petri temporel N en temps discret est definie sous la forme d’unsysteme de transitions SN discrete = (Q, q0, T,→) tel que :

– Q = NP × (N)T

– q0 = (M0, 0)– →∈ Q× (N ∪ T )×Q est la relation de transition incluant des transitions continues et

des transitions discretes :– soient q = (M,ν) ∈ Q et q′ = (M,ν ′) ∈ Q deux etats du reseau, la relation de

transition de temps discret est definie comme suit :

(M,ν) 1−→ (M,ν ′) ssi ∀ti ∈ T,{ν ′(ti) = ν(ti) + 1M ≥• ti ⇒ ν ′(ti) ≤ b(ti)

Page 35: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

3.1 Reseaux de Petri temporels 29

– soient q = (M,ν) ∈ Q et q′ = (M ′, ν ′) ∈ Q deux etats du reseau, la relation detransition discrete est definie ∀ti ∈ T par :

(M,ν) ti−→ (M ′, ν ′) ssi

ti ∈ enabled(M)M ′ = M −• ti + t•i ,a(ti) ≤ ν(ti) ≤ b(ti)

∀tk ∈ T, ν ′(tk) ={

0 si tk ∈↑ enabled(M, ti)ν(tk) sinon

3.1.3.3 Remarques

Une execution ρ de N en temps dense est une execution initiale de SdenseN ; une execution

ρdiscrete de N en temps discret est une execution initiale de SdiscreteN . Le langage temporise

accepte par N en temps dense (respectivement en temps discret) est Ldense(N ) = L(SdenseN )

(respectivement Ldiscrete(N ) = L(SdiscreteN )).

A toute structure N de reseau de Petri temporel (eventuellement enrichi avec des chro-nometres), nous pouvons associer une semantique en temps dense ou en temps discret. Nousobtenons des lors deux modeles differents en fonction de ce choix. Par abus de langage, nousdirons de deux reseaux de Petri temporels qu’ils sont associes si, leur semantique temporelleetant generalement differente, ils partagent la meme structure N .

Nous etudions des reseaux de Petri temporels dans lesquels les dates de tir au plus tot etau plus tard sont des entiers. Il est possible d’etendre les resultats presentes dans ce manuscritau cas ou ces dates de tir sont, respectivement, dans Q+ et dans Q+ ∪ {∞}. Pour ce faire, ilconvient de discretiser les dates considerees : la date de tir au plus tot sera ramenee a l’entierqui lui est immediatement superieur et la date de tir au plus tard a l’entier immediatementinferieur.

3.1.4 Principaux resultats

Etant donnes N un reseau de Petri temporel et SN = (Q, q0, T,→) sa semantique (entemps dense ou en temps discret), plusieurs problemes peuvent etre etudies, notamment :

– l’accessibilite de marquage : etant donne un marquage M , « ∃(M ′, ν ′) ∈ Q,M = M ′ » ;– la bornitude :« ∃b ∈ N,∀(M,ν) ∈ Q,∀p ∈ P,M(p) ≤ b » ;– la k-bornitude : etant donne k ∈ N, « ∀(M,ν) ∈ Q,∀p ∈ P,M(p) ≤ k » ;– l’accessibilite d’etat : etant donne un etat q, « q ∈ Q » ;– la vivacite : « ∀t ∈ T,∀q ∈ Q,∃σ ∈ T ∗, q′ ∈ Q, q σ.t→ q′ ».Dans [JLL77], les auteurs ont montre que les reseaux de Petri temporels en temps dense

ont le meme pouvoir d’expression que les machines de Turing. Il en resulte que l’accessibilitede marquage est un probleme indecidable, ce qui implique que la bornitude, l’accessibilited’etat et la vivacite sont egalement des problemes indecidables. Par contre, la k-bornitude estdecidable en utilisant, par exemple, la construction du graphe des classes d’etats de [BM83,BD91] presentee dans la section suivante.

Dans le cas des reseaux de Petri temporels bornes, l’accessibilite de marquage, l’accessi-bilite d’etat et la vivacite sont decidables.

Dans le cas de la 1-bornitude on dira que le reseau de Petri temporel est sauf (ce quenous noterons egalement 1-sauf afin de ne laisser la place a aucune ambiguıte).

Page 36: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

30 Modeles temporels

Remarque. Il est a noter que la bornitude du reseau de Petri sous-jacent n’est qu’unecondition suffisante a la bornitude d’un reseau de Petri temporel. Ainsi, considerons l’exemplede la figure 3.2, le reseau de Petri sous-jacent est non borne : la place P1 peut contenir unnombre infini de jetons. Cependant, le reseau de Petri temporel est borne : des qu’un jeton estgenere dans la place P1, il est instantanement consomme par le franchissement de la transitiont2.

t2 [0,0]P1t1 [1,1]

Fig. 3.2 – Exemple de reseau de Petri temporel borne

3.1.5 Arcs de reset

3.1.5.1 Presentation informelle

Les reseaux de Petri (et leurs extensions temporelles) ne sont pas toujours adaptes a lamodelisation de certaines fonctions. Ainsi les arcs classiques ne permettent pas, par exemple,de modeliser des fonctions de remises a zero (ou reset) de plusieurs activites. C’est pourquoide nouveaux types d’arcs ont ete introduits : les arcs de reset [DFS98].

P1

t1

P3

(a) (b)

P2 P1

t1

P3

P2

Fig. 3.3 – Deux reseaux de Petri avec arcs de reset

Un arc de reset relie une place a une transition. Cet arc n’intervient pas dans la sensi-bilisation de la transition. Il sert uniquement a retirer tous les jetons de la place lorsque latransition intervenant dans l’arc est tiree. Graphiquement, les arcs de reset sont symbolisesavec un diamant a leur extremite (a la place de la fleche classique).

Considerons les deux reseaux de Petri avec arcs de reset de la figure 3.3. Le marquageinitial des reseaux (a) et (b) est le meme : {P1, 5× P2}. A cause de l’arc de reset entre P2 ett1, le tir de t1 implique la « vidange » de la place P2. Autrement dit, tous les jetons figurantdans cette place sont retires, quel que soit le marquage de cette place. Il en resulte qu’apres letir de t1, le marquage des reseaux (a) et (b) est (respectivement) le suivant : {P3} et {P2, P3}.

Page 37: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

3.1 Reseaux de Petri temporels 31

Les arcs de reset facilitent la modelisation de systemes contenant des fonctions de remise azero.

Les principaux resultats sur les reseaux de Petri avec arcs de reset sont les suivants[DFS98] :

– Les arcs de reset ne modifient pas les resultats de decidabilite sur les reseaux bornescar ils n’induisent pas d’augmentation du marquage.

– Le caractere borne et le probleme de l’accessibilite sont indecidables pour les reseauxde Petri avec arcs de reset [AK77].

– Le caractere borne et le probleme de l’accessibilite sont decidables pour les reseaux dePetri avec deux arcs de reset [DJS99].

– Trois arcs de reset suffisent a rendre indecidable le probleme de la bornitude et leprobleme de l’accessibilite pour les reseaux de Petri avec arcs de reset [DJS99].

P1

t1 [5,6]

P2

t2 [0,1]

P4

t4 [2,4]

P3

t3 [1,2]

Fig. 3.4 – Exemple de reseau de Petri temporel avec arcs de reset

Les resultats de decidabilite etant similaires pour les reseaux de Petri temporels et pourles reseaux de Petri avec arcs de reset, nous pouvons des lors envisager d’enrichir le formalismeclassique des reseaux de Petri temporels avec les arcs de reset. Nous en donnons un exemplesur la figure 3.4 qui, comparee a la figure 3.1, comporte un arc de reset entre P4 et t3. De fait,des lors que t3 est tiree, la place P4 est necessairement videe de l’ensemble de ses jetons. Lorsdu calcul du graphe des classes ou du graphe des zones, cela se traduit par la disparition dela trace t2.t3.t4.t1 par rapport au graphe obtenu pour le reseau de la figure 3.1.

3.1.5.2 Definition et semantique formelles

Nous allons maintenant introduire la definition et la semantique formelles des reseaux dePetri avec arcs de reset.

Definition 3.4 (Reseau de Petri temporel avec arcs de reset). Un reseau de Petri tem-porel avec arcs de reset est un 8-uplet N = 〈P, T,•(.), (.)•,�(.), a, b,M0〉 ou :

– P = {P1, . . . , Pm} est un ensemble fini et non vide de places ;– T = {t1, . . . , tn} est un ensemble fini et non vide de transitions ;– •(.) : T → NP est la fonction d’incidence amont ;– (.)• : T → NP est la fonction d’incidence aval ;

Page 38: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

32 Modeles temporels

– �(.) ∈ ({0, 1}P )T est la fonction de reset,– a : T → N est la fonction donnant la date de tir au plus tot d’une transition ;– b : T → N ∪ {∞} est la fonction donnant la date de tir au plus tard d’une transition ;– M0 ∈ NP est le marquage initial du reseau.

La fonction de reset n’intervient pas dans la sensibilisation de la transition. De fait ladefinition d’une transition sensibilisee reste la meme que precedemment. De meme pour lanotion de tirabilite d’une transition.

Une transition t est dite nouvellement sensibilisee par le tir d’une transition t′ si elle estsensibilisee par le marquage M −max(�t′ ×M t,•t′) + t′• mais ne l’est pas par le marquageM −max(�t′ ×M t,•t′), ou M represente le marquage du reseau avant le tir de t′, M t est lamatrice transposee de M , × est le produit scalaire entre deux vecteurs et max(�ti ×M t,•ti)est defini comme suit : ∀Pj ∈ P,max(�t′ ×M t,•t′)(Pj) = max(�ti ×M t(Pj),•t′(Pj)). Nousnotons alors t ∈↑enabled (M, t′) ou ↑enabled (·, ·) est defini par :

↑ enabled(M, t′) = {t ∈ T |(•t ≤M −max(�t′ ×M t,•t′) + t′•)∧((t = t′) ∨ (•t > M −max(�t′ ×M t,•t′)))}

Une place Pk est dite videe (ou resettee) par le tir de la transition t′ a partir du marquageM , ce que nous notons reset(Pk,M, t′), s’il existe un arc de reset entre Pk et ti. Formellement,

reset(Pk,M, ti) =� ti(Pk) > 0

Par extension, nous notons reset(M, ti) l’ensemble des places videes par le tir de la tran-sition ti depuis le marquage M .

Graphiquement, on represente un arc de reset avec un diamant a son extremite (en lieuet place de la fleche utilisee pour les arcs simples).

La presence d’arcs de reset ne modifie la semantique des reseaux qu’au niveau de larelation de transition discrete de ceux-ci (plus exactement au niveau du calcul du marquagesuccesseur), qu’il s’agisse d’une semantique de temps dense ou de temps discret.

Definition 3.5 (Semantique d’un RdPT avec arcs de reset en temps dense). La se-mantique d’un reseau de Petri temporel avec arcs de reset N en temps dense est definie sousla forme d’un systeme de transitions temporise SN dense = (Q, q0, T,→) tel que :

– Q = NP × (R+)T

– q0 = (M0, 0)– →∈ Q× (T ∪ R)×Q est la relation de transition incluant des transitions continues et

des transitions discretes :– la relation de transition continue est definie ∀d ∈ R+ par :

(M,ν) d−→ (M,ν ′) ssi ∀ti ∈ T, ν ′(ti) ={ν(ti) si ti ∈ enabled(M)ν(ti) + d sinon,

M ≥• ti ⇒ ν ′(ti) ≤ b(ti)

Page 39: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

3.2 Conclusion 33

– la relation de transition discrete est definie ∀ti ∈ T par :

(M,ν) ti−→ (M ′, ν ′) ssi ,ti ∈ enabled(M),M ′ = M −max(�ti ×M t,•ti) + t•i ,a(ti) ≤ ν(ti) ≤ b(ti),

∀tk ∈ T, ν ′(tk) ={

0 si tk ∈↑ enabled(M, ti)ν(tk) sinon

Definition 3.6 (Semantique d’un RdPT avec arcs de reset en temps discret). La se-mantique d’un reseau de Petri temporel avec arcs de reset N en temps discret est definie sousla forme d’un systeme de transitions SN discrete = (Q, q0, T,→) tel que :

– Q = NP × (N)T

– q0 = (M0, 0)– →∈ Q× (N ∪ T )×Q est la relation de transition incluant des transitions continues et

des transitions discretes :– la relation de transition de temps discret est definie comme suit :

(M,ν) 1−→ (M,ν ′) ssi ∀ti ∈ T,{ν ′(ti) = ν(ti) + 1M ≥• ti ⇒ ν ′(ti) ≤ b(ti)

– la relation de transition discrete est definie ∀ti ∈ T par :

(M,ν) ti−→ (M ′, ν ′) ssi

ti ∈ enabled(M)M ′ = M −max(�ti ×M t,•ti) + t•ia(ti) ≤ ν(ti) ≤ b(ti)

∀tk ∈ T, ν ′(tk) ={

0 si tk ∈↑ enabled(M, ti)ν(tk) sinon

3.2 Conclusion

Dans ce chapitre, nous avons presente un modele couramment utilise pour la modelisationet la verification formelle de systemes temps reel : les reseaux de Petri temporels. Nousavons illustre les limites du modele classique en evoquant les difficultes que represente lamodelisation de fonctions de mise a zero. De fait, nous avons introduit un type d’arc supplemen-taire : l’arc de reset. Poursuivant cette demarche d’enrichissement du modele et d’accrois-sement de son expressivite, nous allons, dans le chapitre suivant, presenter un moyen demodeliser la preemption entre differentes taches modelisees par un reseau de Petri. Pour cefaire, nous allons definir la notion de reseaux de Petri a chronometres.

Page 40: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

34 Modeles temporels

Page 41: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Chapitre 4

Modeles temporels a chronometres

ResumeLes modeles temporels tels que les reseaux de Petri T-temporels et les automates temporises

echouent a retranscrire certains comportements suivis par des systemes reels. En particulier,ils ne permettent pas de modeliser des taches susceptibles d’etre suspendues puis relancees.C’est pourquoi des modeles plus expressifs ont ete introduits sous la forme, notamment, dereseaux de Petri a chronometres. C’est ce formalisme que nous presentons dans ce chapitre.

Pour finir, nous evoquons des methodes permettant d’exprimer des proprietes sur cesmodeles.

Page 42: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

36 Modeles temporels a chronometres

Sommaire

4.1 Reseaux de Petri a chronometres . . . . . . . . . . . . . . . . . . . 374.1.1 Presentation informelle . . . . . . . . . . . . . . . . . . . . . . . . . 384.1.2 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404.1.3 Semantiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.1.4 Principaux resultats . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.2 Expression de proprietes . . . . . . . . . . . . . . . . . . . . . . . . 434.2.1 Observateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.2.2 Logiques temporelles . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

4.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Page 43: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

4.1 Reseaux de Petri a chronometres 37

4.1 Reseaux de Petri a chronometres

Les formalismes temporises classiques que sont les automates temporises et les reseaux dePetri temporels ne sont generalement pas suffisants pour modeliser et verifier les applicationstemps reel en presence d’ordonnancement preemptif. En effet, dans ces modeles, le tempss’ecoule de maniere identique pour toutes les composantes du systeme. Il n’est donc paspossible de representer des politiques d’ordonnancement preemptif telles qu’une tache estinterrompue et reprise au meme endroit plus tard.

C’est pourquoi des extensions des modeles temporises classiques ont vu le jour. Les auto-mates temporises ont ete etendus par les automates a chronometres [CL00a] et les automateshybrides [Hen96].

Les automates a chronometres sont des automates temporises pour lesquels les horloges(alors appelees « chronometres ») peuvent etre arretees et redemarrees plus tard avec la memevaleur. Le probleme de l’accessibilite est indecidable sur ce modele. Dans [CL00a], les auteursproposent une surapproximation de l’espace d’etats accessibles a l’aide de DBM.

Les automates hybrides representent le modele le plus etudie et le plus utilise des lors qu’ils’agit d’etudier des systemes avec ordonnancement preemptif [Hen96]. Ils etendent les auto-mates temporises classiques a l’aide de variables continues dont les dynamiques d’evolutionsont specifiees dans chaque localite a l’aide d’une equation differentielle. La plupart desproblemes classiques de verification est indecidable sur ce modele. Une sous-classe de cesautomates a fait l’objet de recherches plus pointues, il s’agit des automates hybrides lineaires.Dans ce modele, l’equation differentielle regissant l’evolution des variables continues X estde la forme AX ≤ B ou A est une matrice reelle et B un vecteur reel. Des algorithmes deverification symbolique ont ete developpes sur ce modele et implementes dans l’outil HyTech[HHWT95].

Une fois evoquees ces extensions des automates temporises, concentrons-nous sur les enri-chissements apportes au modele des reseaux de Petri temporels : les traditionnelles horloges as-sociees aux reseaux de Petri temporels sont alors remplacees par des « chronometres » (« stop-watches »). Partant de cette idee, plusieurs extensions ont ete proposees : les Scheduling-TPNs[RD01], les Preemptive-TPNs [BFSV04] (ces deux modeles ajoutent ressources et priorites auformalisme des reseaux de Petri temporels ; ils ont l’inconvenient de ne pas permettre lamodelisation de relations de priorites circulaires) et les reseaux de Petri temporels a hyper-arcs inhibiteurs (RdPTI) [RL04]. Les RdPTI introduisent des arcs inhibiteurs qui controlentla progression temporelle des transitions. Ces trois modeles appartiennent a la classe desreseaux de Petri a chronometres (SwPN) [BLRV07]. Ils ont fait l’objet d’un certain nombred’etudes en temps dense dans les articles sus-cites.

Dans ce manuscrit, nous illustrerons nos travaux sur des modeles avec hyperarcs inhi-biteurs pour modeliser la preemption. Mais cela n’attenue pas la generalite des resultatsque nous proposons, qui restent applicables a la classe generale des reseaux de Petri a chro-nometres. C’est ainsi que nous utiliserons indifferemment les termes de reseaux de Petri achronometres (quand les resultats sont directement applicables sur cette classe englobante)et de reseaux de Petri a arcs de reset et hyperarcs inhibiteurs (lorsque nous introduisons nostheoremes sur ce modele, mais qu’ils sont generalisables a tous les modeles a chronometressus-cites).

Page 44: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

38 Modeles temporels a chronometres

4.1.1 Presentation informelle

Les reseaux de Petri temporels (RdPT) constituent une extension des reseaux de Petri :a chaque transition du reseau sont associes une horloge et un intervalle temporel. L’horlogemesure le temps ecoule depuis le moment ou la transition a ete sensibilisee et l’intervalletemporel est vu comme une condition de franchissement : la transition est tirable si la valeurde son horloge appartient a l’intervalle. Lorsqu’on ajoute des arcs inhibiteurs a ce modele,les horloges se transforment en chronometres : un arc inhibiteur entre une place p et unetransition t signifie que le chronometre associe a t est arrete aussi longtemps qu’il y a (aumoins) un jeton dans la place p. Les arcs inhibiteurs permettent de modeliser des prioritesentre les transitions.

Dans [RL04], les auteurs ont etendu les arcs inhibiteurs avec la notion d’hyperarc. Unhyperarc inhibiteur relie une transition t et un ensemble de places p1, . . . , pk : dans ce cas, lechronometre associe a t est arrete aussi longtemps qu’il y a (au moins) un jeton dans chacunedes places p1, . . . , pk. Il est important de noter que tout arc inhibiteur est, de fait, un hyperarcinhibiteur.

Graphiquement, arcs et hyperarcs inhibiteurs sont symbolises avec un cercle a leur extremite(a la place de la fleche classique).

Sur la figure 4.1, nous presentons deux reseaux partageant la meme structure (en termesde places, de transitions et d’arcs simples) mais qui different par le fait que que le reseau(a) comprend deux arcs inhibiteurs tandis que le reseau (b) contient un hyperarc inhibiteur.Cette difference induit des comportements tres differents. Ainsi, dans le reseau (a), si t3 ett4 sont toutes deux sensibilisees, chacune d’entre elles devra etre tiree avant t1. Les arcsinhibiteurs permettent d’exprimer des conjonctions de conditions pour preciser la tirabilited’une transition : t1 est tirable ssi elle est sensibilisee (M(P1) ≥ 1) et M(P3) = 0∧M(P4) = 0.Le second reseau (b) ne comporte, lui, qu’un seul hyperarc inhibiteur dont le role est, dansla meme configuration, d’empecher le tir de t1 avant celui t3 ou de t4. Grace aux hyperarcsinhibiteurs, il est possible d’ecrire des disjonctions de conditions pour definir la tirabilite d’unetransition : t1 est tirable ssi elle est sensibilisee (M(P1) ≥ 1) et (M(P3) = 0 ∪M(P4) = 0).

P1

t1

P2

t2

P4

t4

P3

t3

(a)

P1

t1

P2

t2

P4

t4

P3

t3

(b)

Fig. 4.1 – Un reseau de Petri a arcs inhibiteurs (a) et un reseau de Petri a hyperarcs inhibiteurs(b), deux modeles aux executions bien differentes

Page 45: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

4.1 Reseaux de Petri a chronometres 39

P1

t1 [5,6]

P2

t2 [0,1]

P4

t4 [2,4]

P3

t3 [1,2]

Fig. 4.2 – Reseau de Petri temporel a hyperarcs inhibiteurs

Les hyperarcs inhibiteurs peuvent des lors enrichir le formalisme classique des reseaux dePetri temporels. Sur la figure 4.2, nous considerons 4 chronometres {x1, x2, x3, x4} respecti-vement associes a {t1, t2, t3, t4}. Un chronometre x represente le temps ecoule depuis que latransition associee t a ete sensibilisee pour la derniere fois (par le marquage) et pendant lequelcette transition n’a pas ete inhibee.

Un chronometre x est arrete, ce que l’on note par x = 0, lorsque la transition associee test inhibee. Un chronometre x est remis a zero quand la transition associee t est nouvellementsensibilisee (qu’elle soit alors inhibee ou non).

Lorsque la transition t1 est sensibilisee (c’est-a-dire qu’il y a au moins un jeton dans la placeP1), le role de l’hyperarc inhibiteur est d’arreter le temps pour x1 des lors (et aussi longtemps)que chacune des places P3 et P4 contient au moins un jeton ; ainsi, si l’une des places P3

ou P4 est vide, alors le temps s’ecoulera pour le chronometre x1. Ainsi, le temps s’ecoulepour le chronometre x1 (soit : x1 = 1) si et seulement si la condition suivante est verifiee :M(P1) ≥ 1 ∧ (M(P3) = 0 ∪M(P4) = 0). Par suite, la transition t1 est tirable si et seulementsi la condition suivante est verifiee : M(P1) ≥ 1∧ (M(P3) = 0∪M(P4) = 0)∧x1 ≥ 5∧x1 ≤ 6.Les hyperarcs inhibiteurs permettent ainsi d’exprimer des disjonctions de conditions pourpreciser qu’une transition soit dite « active » (c’est-a-dire non inhibee).

Remarquons que x2, x3 et x4 joueront, quant a eux, un role similaire a celui d’une horlogeau sens des reseaux de Petri temporels : l’ecoulement temporel pour x2, x3 et x4 ne serajamais stoppe car aucun arc inhibiteur ne porte sur les transitions correspondantes.

Initialement, P1, P2 et P4 sont marquees. Cela implique que les transitions t1, t2 et t4sont toutes trois sensibilisees. Pour determiner si le temps s’ecoule pour chaque chronometreassocie, il convient d’etudier l’effet d’eventuels hyperarcs inhibiteurs portant sur les transitionsdu reseau.

Aucun hyperarc inhibiteur ne porte sur t2, ni sur t4, ce qui implique que le temps s’ecoulepour x2 et x4. Nous remarquons par ailleurs que la place P3 est vide, de sorte que l’hyperarcinhibiteur portant sur t1 n’a pas d’effet sur la transition. Nous avons ainsi : x1 = 1, x2 =1, x4 = 1. Les contraintes temporelles sur t1, t2 et t4 imposent que t2 soit tiree avant t1 ett4. Une fois t2 tiree, la place P3 devient marquee et, de fait, l’inhibition sur la transition t1

Page 46: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

40 Modeles temporels a chronometres

effective (P3 et P4 etant simultanement marquees). t1 est toujours sensibilisee (puisque laplace P1 contient toujours un jeton), mais inhibee. Cela se traduit de la maniere suivante :x1 = 0, x3 = 1, x4 = 1. L’ecoulement du temps pour x1 ne reprendra que lorsqu’une des placesP3 ou P4 aura ete videe (autrement dit : lorsqu’une des transitions t3 ou t4 aura ete tiree).

Nous proposons ci-dessous une execution possible du reseau dote d’une semantique detemps dense, illustrant notamment le comportement du chronometre x1. Les informationsrelatives a x1 sont grisees lorsque la transition t1 est sensibilisee mais inhibee (la valeur deson chronometre reste constante).

{P1, P2, P4}x1 = 0x2 = 0x4 = 0

0.2→

{P1, P2, P4}x1 = 0.2x2 = 0.2x4 = 0.2

t2→

{P1, P3, P4}x1 = 0.2x3 = 0x4 = 0.2

1→

{P1, P3, P4}x1 = 0.2x3 = 1x4 = 1.2

t3→

{P1, P4}x1 = 0.2x4 = 1.2

0.9→{P1, P4}x1 = 1.1x4 = 2.1

t4→ {P1}x1 = 1.1

4.2→ {P1}x1 = 5.3

t1→ ∅

La transition t1 est restee sensibilisee dans tous les etats de cette execution, a l’exception,bien entendu, de l’etat final. Cette transition est passee par deux etats differents : inhibee(dans ce cas, le chronometre associe x1 est arrete) et non inhibee (le chronometre associeevolue selon la loi x1 = 1).

Comme nous l’avons ecrit plus haut, tout arc inhibiteur est un hyperarc inhibiteur.Reciproquement, les hyperarcs inhibiteurs n’ajoutent pas d’expressivite au modele par rap-port aux arcs inhibiteurs [RL04] (un hyperarc inhibiteur peut ainsi etre modelise, via un motifdedie, a l’aide d’arcs inhibiteurs). De ce fait, il est equivalent de raisonner sur des reseauxde Petri temporels enrichis avec des arcs inhibiteurs ou avec des hyperarcs inhibiteurs. Leshyperarcs constituent juste un artifice allegeant l’effort de modelisation. Pour des commoditesde presentation, nous privilegierons, dans la suite de ce manuscrit, les reseaux a hyperarcsinhibiteurs.

4.1.2 Definition

Definition 4.1 (Reseau de Petri temporel a hyperarcs inhibiteurs). Un reseau de Pe-tri temporel a hyperarcs inhibiteurs (RdPTI) est un 8-uplet N = 〈P, T,•(.), (.)•, a, b,M0, I〉ou :

– P = {p1, . . . , pm} est un ensemble fini et non vide de places ;– T = {t1, . . . , tn} est un ensemble fini et non vide de transitions ;– •(.) : T → NP est la fonction d’incidence amont ;– (.)• : T → NP est la fonction d’incidence aval ;– a : T → N est la fonction donnant la date de tir au plus tot d’une transition ;– b : T → N ∪ {∞} est la fonction donnant la date de tir au plus tard d’une transition ;– M0 ∈ NP est le marquage initial du reseau.– I est un ensemble fini d’hyperarcs inhibiteurs :

– chaque hyperarc de I est un couple (Q, t) tel que t ∈ T est une transition et Q ∈ NP

est la valeur d’inhibition arriere de l’hyperarc 1

1si cette valeur est egale a zero ou a une, alors Q peut etre represente par un ensemble de places.

Page 47: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

4.1 Reseaux de Petri a chronometres 41

– nous notons I(t) le nombre d’hyperarcs inhibiteurs de la transition t ∈ T ,– soit i ≤ I(t) le ie hyperarc inhibiteur de la transition t ∈ T tel que ∃Qi ∈ NP , (Qi, t) ∈I, on note ◦ti = Qi.

En plus des notions definies pour les reseaux de Petri temporels classiques, nous dironsqu’une transition t est inhibee par le marquage M si les places connectees a l’un de ses hy-perarcs inhibiteurs sont toutes marquees avec un nombre de jetons superieur ou egal au poidsentre cette place et t : ∃i ≤ I(t), ◦ti ≤M . Nous notons t ∈ inhibited(M). En pratique, les hy-perarcs inhibiteurs sont utilises pour arreter l’ecoulement du temps dans certaines transitions :un hyperarc inhibiteur des places p1, . . . , pk et une transition t signifie que le chronometre as-socie a t est arrete aussi longtemps que les places p1, . . . , pk sont marquees du nombre suffisantde jetons.

Une transition t est dite active lorsqu’elle est sensibilisee et qu’elle n’est pas inhibee parle marquage M . Nous notons alors t ∈ active(M).

Une transition t est dite tirable (ou franchissable) lorsqu’elle est sensibilisee, qu’elle l’a etesans etre inhibee pendant au moins a(t) unites de temps et qu’elle n’est pas inhibee.

Une valuation est une fonction ν ∈ (R+)T telle que ∀t ∈ T, ν(t) represente le temps ecouledepuis la derniere sensibilisation de t et pendant lequel t est restee non inhibee (ν(t) est lavaleur du chronometre associe a t). Il est important de remarquer que ν(t) n’a de sens que sit est une transition sensibilisee.

Les arcs de reset peuvent evidemment etre ajoutes a ce formalisme. Par commodite, nousallons donner les semantiques en temps dense et en temps discret du modele complet que sontles reseaux de Petri temporels a hyperarcs inhibiteurs et a arcs de reset, que nous noteronsrRdPTI.

4.1.3 Semantiques

4.1.3.1 Semantique en temps dense

Definition 4.2 (Semantique d’un rRdPTI en temps dense). La semantique d’un reseaude Petri temporel avec arcs de reset et hyperarcs inhibiteurs N en temps dense est definiesous la forme d’un systeme de transitions temporise Sdense

N = (Q, q0, T,→) tel que :– Q = NP × (R+)T

– q0 = (M0, 0)– →∈ Q× (T ∪ R)×Q est la relation de transition incluant des transitions continues et

des transitions discretes :– la relation de transition continue est definie ∀d ∈ R+ par :

(M,ν) d−→ (M,ν ′) ssi ∀ti ∈ T, ν ′(ti) ={ν(ti) si ti ∈ enabled(M) et ti ∈ inhibited(M)ν(ti) + d sinon,

M ≥• ti ⇒ ν ′(ti) ≤ b(ti)

Page 48: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

42 Modeles temporels a chronometres

– la relation de transition discrete est definie ∀ti ∈ T par :

(M,ν) ti−→ (M ′, ν ′) ssi ,ti ∈ enabled(M) et ti 6∈ inhibited(M),M ′ = M −max(�ti ×M t,•ti) + t•i ,a(ti) ≤ ν(ti) ≤ b(ti),

∀tk ∈ T, ν ′(tk) ={

0 si tk ∈↑ enabled(M, ti)ν(tk) sinon

4.1.3.2 Semantique en temps discret

Definition 4.3 (Semantique d’un rRdPTI en temps discret). La semantique d’un reseaude Petri temporel avec arcs de reset et hyperarcs inhibiteurs N en temps discret est definiesous la forme d’un systeme de transitions Sdiscrete

N = (Q, q0, T,→) tel que :– Q = NP × (R+)T

– q0 = (M0, 0)– →∈ Q× (T ∪ R)×Q est la relation de transition incluant des transitions continues et

des transitions discretes :– la relation de transition de temps discret est definie comme suit :

(M,ν) 1−→ (M,ν ′) ssi ∀ti ∈ T, ν ′(ti) ={ν(ti) si ti ∈ enabled(M) et ti ∈ inhibited(M)ν(ti) + 1 sinon,

M ≥• ti ⇒ ν ′(ti) ≤ b(ti)– la relation de transition discrete est definie ∀ti ∈ T par :

(M,ν) ti−→ (M ′, ν ′) ssi ,ti ∈ enabled(M) et ti 6∈ inhibited(M),M ′ = M −max(�ti ×M t,•ti) + t•i ,a(ti) ≤ ν(ti) ≤ b(ti),

∀tk ∈ T, ν ′(tk) ={

0 si tk ∈↑ enabled(M, ti)ν(tk) sinon

Pour les reseaux de Petri a chronometres comme pour les reseaux de Petri temporels, nousetudions des modeles dans lesquels les dates de tir au plus tot et au plus tard des transitionssont des entiers. Il est possible d’etendre les resultats avances dans ce manuscrit au cas ou cesdates de tir sont, respectivement, dans Q+ et dans Q+ ∪ {∞}. Pour ce faire, il convient dediscretiser les dates considerees : la date de tir au plus tot sera ramenee a l’entier qui lui estimmediatement superieur et la date de tir au plus tard a l’entier immediatement inferieur.

4.1.4 Principaux resultats

Les problemes de l’accessibilite d’un marquage ou d’un etat et le caractere borne sontindecidables pour les reseaux de Petri temporels [JLL77] en temps dense. Il suit que cesproblemes sont egalement indecidables pour les reseaux de Petri a chronometres en tempsdense.

Toutefois, ces problemes indecidables dans le cas general deviennent decidables pour lesreseaux de Petri temporels bornes en temps dense (et, de fait, en temps discret). En effet, sur

Page 49: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

4.2 Expression de proprietes 43

ces reseaux bornes, l’accessibilite de marquage peut etre decidee en utilisant le graphe desclasses d’etats [BM83] ; quant a l’accessibilite d’etats et la vivacite, elles peuvent etre decideesvia la construction proposee dans [BV03].

Mais dans le cas des reseaux de Petri a chronometres en temps dense, l’accessibilite d’etat,l’accessibilite de marquage, le caractere k-borne et la vivacite restent indecidables meme pourdes reseaux bornes. Ce resultat, prouve dans [Lim04, BLRV07], est obtenu en modelisant leprobleme de l’arret d’une machine a deux compteurs a l’aide de reseaux de Petri bornes achronometres en temps dense.

4.2 Expression de proprietes

Une fois le systeme decrit sous la forme d’un modele (reseaux de Petri temporels oureseaux de Petri a chronometres), il importe de formaliser les specifications de sa correction.Nous presentons ici les deux principales methodes permettant de s’acquitter de cette tache :l’expression de proprietes sous la forme d’observateurs ou d’une logique dediee.

4.2.1 Observateurs

Un observateur est un reseau de Petri temporel (une extension des observateurs consistanta les definir comme reseaux de Petri a chronometres serait envisageable, mais elle n’a pasete etudiee jusque la) qui est ajoute au reseau initial de maniere non intrusive (c’est-a-direque l’observateur ne doit pas modifier le comportement du systeme initial) et qui permetde determiner la valeur de verite d’une propriete [TSLT97]. Celle-ci est alors donnee parl’occurrence ou non d’un marquage ou du tir d’une transition dans l’espace d’etats du systeme« reseau de Petri temporel (a chronometres) observe + observateur ».

Cette demarche presente l’avantage de transformer la propriete a verifier en un problemed’accessibilite de marquage ou d’execution de trace. Elle souffre neanmoins de plusieurs limi-tations. D’une part, il n’existe pas de techniques automatiques de generation d’observateurs.Or il est parfois delicat de ramener le probleme de verification d’une propriete a un problemed’accessibilite. D’autre part, chaque propriete requiert un observateur specifique et donc unnouveau calcul de l’espace d’etats. Enfin, l’observateur est souvent de taille aussi importanteque le modele initial, accroissant ainsi de facon non negligeable le cout de la verification dela propriete.

Exemple 4.1. Le reseau de Petri temporel a hyperarcs inhibiteurs de la figure 4.3 represente unreseau de Petri temporel (traits plein) et un observateur (tirets). L’observateur modelise la proprietesuivante :

« le temps de sejour dans la place P1 est toujours inferieur ou egal a 6 unites de temps »

Cette propriete est trivialement fausse, ce qui se traduit par l’occurrence du tir de tobs dans le graphedes classes d’etats du reseau avec l’observateur.

4.2.2 Logiques temporelles

Les proprietes peuvent egalement etre exprimees grace a des logiques temporelles. Nousallons les presenter rapidement dans cette partie.

Page 50: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

44 Modeles temporels a chronometres

P1

t1 [5,6]

P2

t2 [0,1]

P4

t4 [2,4]

P3

t3 [1,2]

tobs [6,6]t5 [0,0]

P5 Pobs

Fig. 4.3 – Exemple d’observateur pour un reseau de Petri temporel a hyperarcs inhibiteurs

4.2.2.1 Logiques temporelles non quantitatives : LTL, CTL, CTL∗

Definition 4.4 (CTL∗ [Pnu77]). Soit {ap1, . . . , apn} un ensemble de variables proposition-nelles. Le langage CTL∗ est l’ensemble des formules d’etats ϕs exprimees par des formules dechemins ϕp defini inductivement par la grammaire :

ϕs := true | ap | ¬ap | ϕs ∧ ϕs | ϕs ∨ ϕs | ∀ϕp | ∃ϕp

ϕp := true | ϕs | ϕp ∨ ϕp | ϕp ∧ ϕp | © ϕp | ϕpUϕp

La formule ϕpUψp exprime la propriete : ψp est verifiee a partir d’un certain etat et tousles etats intermediaires verifient la propriete ϕp.

De maniere classique, les notations suivantes sont utilisees pour ecrire des formules CTLcourantes : false = ¬true, ∃♦ϕ = ∃true Uϕ, ∀♦ϕ = ∀true Uφ, ∃�φ = ¬∀♦¬ϕ, ∀�ϕ =¬∃♦¬ϕ.

Cette logique permet d’exprimer des proprietes plus complexes que de simples proprietesd’accessibilite. Par exemple, le comportement « quel que soit l’etat du systeme, si une alarmese declenche alors un signal est inevitablement emis » se traduit par la propriete CTL ∀�(alarme⇒∀♦signal).

Plusieurs sous-classes de CTL∗ ont ete proposees :

CTL (Computation Tree Logic) est le fragment de CTL∗ constitue des combinaisonsbooleennes de : ∀ϕUψ, ∀ϕRψ, ∀© ϕ, ∃ϕUψ et ∃© ϕ.

Page 51: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

4.2 Expression de proprietes 45

ACTL (Universal Computation Tree Logic) est le fragment de CTL∗ constitue des com-binaisons booleennes de : ∀ϕUψ, ∀© ϕ.

ECTL (Existential Computation Tree Logic) est le fragment de CTL∗ constitue descombinaisons booleennes de : ∃ϕUψ et ∃© ϕ.

LTL (Linear Time Logic) est le fragment de CTL∗ constitue des formules de type ∀ϕ ouϕ ne contient pas de quantificateurs ∃ ou ∀.

4.2.2.2 Logiques temporelles quantitatives

CTL∗ ne permet pas d’exprimer des proprietes temporelles quantitatives pour des systemestemporises. Il n’est ainsi pas possible d’exprimer en CTL∗ le comportement « quel que soitl’etat du systeme, si une alarme se declenche alors un signal est inevitablement emis en moinsde 5 unites de temps ». C’est pour pallier cette limitation que des logiques temporellesquantitatives ont ete introduites.

TCTL (Time Computation Tree Logic) [ACD90] est une extension de CTL−© obtenueen ajoutant des intervalles de temps aux modalites. Ces intervalles indiquent des contraintesde temps sur les formules.

Definition 4.5 (TCTL ). La logique TCTL est definie par la grammaire :

ϕ := ap | ¬ap | ϕ ∧ ϕ | ϕ ∨ ϕ | ∀ϕUIϕ | ∃ϕUIϕ

ou ap est une proposition atomique et I un intervalle de R+ avec bornes entieres de laforme [n,m], [n,m[, ]n,m], ]n,m[, ou [m,∞[ avec n,m ∈ N.

De la meme maniere que pour CTL, les notations suivantes sont utilisees couramment :false = ¬true, ∃♦Iϕ = ∃true UIϕ, ∀♦Iϕ = ∀true UIφ, ∃�Iφ = ¬∀♦I¬ϕ, ∀�Iϕ = ¬∃♦I¬ϕ.

Nous pouvons des lors exprimer la propriete « quel que soit l’etat du systeme, si une alarmese declenche alors un signal est inevitablement emis en moins de 5 unites de temps » par laformule TCTL : ∀�[0,∞[(alarme⇒ ∀♦[0,5]signal)

Une premiere approche pour verifier des proprietes TCTL sur des reseaux de Petri tem-porels consiste a etablir une traduction des reseaux de Petri vers les automates temporises.En effet, il existe, sur ces dernier, de nombreux outils efficaces pour la verification de pro-prietes temporelles quantitatives. Les traductions se divisent en deux categories : d’une part,les traductions structurelles (telle la traduction proposee dans [CR06] d’un reseau de Petritemporel non necessairement borne a dates de tir au plus tard finies ou infinies vers un auto-mate temporise), d’autre part les traductions avec calcul de l’espace d’etats (a l’instar de latraduction presentee dans [Lim04, LR06] qui consiste a obtenir l’espace d’etats d’un reseaude Petri temporel sous la forme d’un automate temporise).

Les auteurs de [Gar05, BGR06] sont alles plus loin en definissant une logique TCTL« native » pour les reseaux de Petri temporels en temps dense, appelee TPN-TCTL. Ils ontprouve la decidabilite du model-checking de TPN-TCTL sur les reseaux de Petri temporelsbornes et ont montre que sa complexite est PSPACE. Ils ont egalement introduit un fragmentde TPN-TCTL pour lequel ils proposent des algorithmes de verification a la volee et uneimplantation pratique dans le logiciel Romeo (cf. chapitre 10).

Page 52: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

46 Modeles temporels a chronometres

4.3 Conclusion

Nous avons, dans cette partie, introduit une extension des reseaux de Petri temporelsqui permet de modeliser des politiques d’ordonnancement preemptif : les reseaux de Petritemporels a chronometres. Dans la suite de ce manuscrit, nous illustrerons nos resultats surune sous-classe de ces reseaux : les reseaux de Petri temporels a arcs de reset et hyperarcsinhibiteurs (rRdPTI). Apres avoir introduit les modeles sur lesquels nous travaillons, nousallons les etudier plus precisement en comparant leur expressivite.

Page 53: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Chapitre 5

Expressivite comparee de classes dereseaux de Petri

ResumeDans ce chapitre, nous completons la classification des reseaux de Petri temporels et des

reseaux de Petri a chronometres vis-a-vis de la bisimulation (semantique comportementale).Nous commencons par etendre un resultat connu jusque la uniquement sur les reseaux dePetri temporels : nous montrons que les reseaux de Petri a chronometres 1-saufs et bornessont d’expressivite equivalente en termes de bisimulation temporelle (faible). Nous comparonsensuite l’expressivite des modeles selon que nous choisissons une semantique de temps denseou une semantique de temps discret. Nous retiendrons notamment le resultat suivant pourdes modeles bornes : les reseaux de Petri temporels en temps discret, les reseaux de Petria chronometres en temps discret et les reseaux de Petri non-temporises sont d’expressiviteequivalente en termes de bisimulation. L’ensemble des resultats obtenus est resume par lafigure 5.18.

Page 54: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

48 Expressivite comparee de classes de reseaux de Petri

Sommaire

5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495.1.1 Produit synchronise de reseaux de Petri . . . . . . . . . . . . . . . . 49

5.2 Equivalence entre les SwPN bornes et 1-saufs . . . . . . . . . . . 525.2.1 Traduction structurelle des reseaux de Petri a chronometres bornes

vers les reseaux de Petri a chronometres 1-saufs . . . . . . . . . . . . 525.2.2 Consequences des resultats precedents . . . . . . . . . . . . . . . . . 625.2.3 Expressivite des arcs de reset . . . . . . . . . . . . . . . . . . . . . . 63

5.3 Equivalence entre les RdPT en temps discret et les RdP . . . . 685.3.1 Traduction structurelle des RdPT en temps discret vers les RdP . . 685.3.2 Consequences des resultats precedents . . . . . . . . . . . . . . . . . 70

5.4 Equivalence entre les SwPN en temps discret et les RdP . . . . 715.4.1 Traduction structurelle des SwPN en temps discret vers les RdP . . 715.4.2 Consequences des resultats precedents . . . . . . . . . . . . . . . . . 735.4.3 Synthese sur les equivalences en termes de bisimulation temporelle et

d’acceptation de langage temporise . . . . . . . . . . . . . . . . . . . 745.5 Bilan sur la classification des modeles . . . . . . . . . . . . . . . . 775.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

Page 55: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.1 Introduction 49

5.1 Introduction

L’expressivite des reseaux de Petri temporels a fait l’objet de recherches beaucoup pluscompletes que l’expressivite des modeles a chronometres.

Certaines etudes portent sur l’expressivite de sous-classes des reseaux de Petri temporels[BCH+05a, BR07]. D’autres s’attachent a definir precisement les liens entre les modeles tem-porels que sont les automates temporises et les reseaux de Petri temporels. Une comparaisondetaille de l’expressivite de ces modeles a ainsi ete proposee dans [BCH+05b, AB06].

Dans [BCH+05b], les auteurs ont prouve que les reseaux de Petri temporels bornes avecune semantique forte sont strictement moins expressifs que les automates temporises en termesde bisimulation temporelle. De plus, ils ont montre que les reseaux de Petri temporels bornesa la Merlin (c’est-a-dire sans contraintes strictes), les reseaux de Petri temporels 1-saufs a laMerlin et les automates temporises sont d’expressivite equivalente en termes de bisimulationtemporelle. Neanmoins, aucun travail ne s’etait jusque la attache a determiner si ce resultatpeut etre etendu aux reseaux de Petri a chronometres ou aux reseaux de Petri temporelsavec des contraintes strictes. Dans [AB06], Berthomieu et al. ont enrichi la classification desmodeles temporises en se concentrant sur les reseaux de Petri temporels a priorites (qui sontplus expressifs que les reseaux de Petri temporels en termes de bisimulation temporelle).Les auteurs comparent les automates temporises avec des reseaux de Petri temporels bornesetendus avec des priorites statiques et montrent que deux sous-ensembles de ces modelessont d’expressivite equivalente en termes de bisimulation temporelle faible. Toutefois, ils nerapprochent pas ces resultats de l’expressivite des reseaux de Petri a chronometres.

Dans ce chapitre, nous considerons des reseaux de Petri temporels bornes et des reseaux dePetri a chronometres avec des contraintes temporelles larges et strictes, avec une semantiquemono-serveur en temps dense et en temps discret. Nous allons etudier l’expressivite de cesmodeles. Le critere de comparaison est la bisimulation.

La classification telle qu’elle etait connue jusque la est resumee par la figure 5.1. Nousallons exhiber un ensemble de nouvelles relations qui sont indiquees, pour partie, sur la figure5.18 a la fin de ce chapitre (relations numerotees (1) a (7)).

5.1.1 Produit synchronise de reseaux de Petri

Il est parfois utile de pouvoir decrire un systeme comme la composition parallele de reseauxde Petri avec arcs inhibiteurs et arcs de reset. Dans la suite de ce chapitre, nous allonsnotamment etre amenes a comparer l’expressivite d’extensions temporelles des reseaux dePetri en temps discret avec des produits synchronises de reseaux de Petri.

Pour definir le produit synchronise de reseaux de Petri, nous utilisation la notion clas-sique de composition basee sur une fonction de synchronisation a la Arnold-Nivat [Arn94].Soient N1, . . ., Nn n reseaux de Petri avec arcs inhibiteurs et arcs de reset, avec Ni =(Pi, Ti,

•(.)i, (.)•i ,�(.)i,Mi,0, Ii). Une fonction de synchronisation f est une fonction partielle

den∏

i=1(Ti ∪ •), ou • est un symbole specialement utilise lorsqu’un reseau de Petri n’est pas

implique dans une etape de l’evolution du systeme global. Remarquons qu’en fait f est unefonction de synchronisation avec renommage. Nous notons (N1| . . . |Nn)f la composition pa-rallele des reseaux Ni eu egard a a la fonction f . Les configurations de (N1| . . . |Nn)f sont les

Page 56: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

50 Expressivite comparee de classes de reseaux de Petri

RdP bornés

RdPT bornés

RdPT bornésavec arcs inhibiteurs

RdP

RdP avec arcs inhibiteurs et

de resetRdP avec

arcs inhibiteurs

RdP avec arcs de reset

RdPT avec arcs de reset

RdPT

RdPT avec arcs inhibiteurs

RdPT avec arcs inhibiteurs et arcs de reset

⊂⊂

=

⊆⊇

en temps dense et en temps discret

Notation

Fig. 5.1 – Classification partielle des modeles entre reseaux de Petri classiques, reseaux dePetri temporels dotes d’une semantique de temps dense et reseaux de Petri temporels avecarcs inhibiteurs dotes d’une semantique de temps dense

Page 57: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.1 Introduction 51

marquages M = (M1, . . . ,Mn) ∈ NP1 × . . .NPn . La semantique d’un produit synchronise dereseaux de Petri avec arcs inhibiteurs et arcs de reset est un systeme de transition : le produitsynchronise peut tirer des transitions si toutes les composantes du produit sont en accord.Nous formalisons ces comportements a travers la definition suivante :

Definition 5.1 (Semantique d’un produit de reseaux de Petri). Soient N1, . . . ,Nn nreseaux de Petri avec arcs de reset et arcs inhibiteurs, avec Ni = (Pi, Ti,

•(.)i, (.)•i ,�(.)i,

Mi,0, Ii) et f une fonction de synchronisation (partielle)n∏

i=1(Ti ∪ •) ↪→ T . La semantique du

produit de ces n reseaux de Petri (N1| . . . |Nn)f est un systeme de transition S = (Q, q0, T,→)avec Q = NP1×. . .NPn, q0 = (M1,0, . . . ,Mn,0) est l’etat initial, et→ est definie par : M t−→M

ssi il existe (t1, . . . , tn) ∈n∏

i=1(Ti ∪ •) t.q. f(t1, . . . , tn) = t et, pour tout i, nous avons :

. Si ti = •, alors M′i = Mi,

. Si ti ∈ Ti, alors Miti−→M

′i .

La figure 5.2 donne un exemple de produit synchronise de deux reseaux de Petri. Lafonction de synchronisation est definie de la maniere suivante : f(e, e) = e, ce qui signifie quesi, dans un des reseaux, on tire la transition e, alors, dans le second reseau, la meme transitiondoit etre tirable et, de fait, tiree.

P1

e

P2

f

P4

g

P5

e

P6

h

e

P3 P7 P8

P5

e

P7

f

P4

g

P1

P6

h

e

P3

P2

P8

(a) (b) (c)

Fig. 5.2 – Le reseau de Petri (c) est le produit synchronise des deux reseaux de Petri (a) et(b) : e est la transition de synchronisation

Page 58: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

52 Expressivite comparee de classes de reseaux de Petri

Nous pourrions definir de la meme maniere le produit synchronise de reseaux de Petritemporels : la synchronisation impliquerait alors uniquement des transitions dont l’intervallede tir est [0,∞[. N’ayant toutefois pas besoin de recourir a ce type de produit synchronisedans la suite de notre etude, nous n’en donnerons pas la definition formelle.

5.2 Equivalence entre les reseaux de Petri a chronometresbornes et les reseaux de Petri a chronometres 1-saufs

Dans cette partie, a partir d’un reseau de Petri a chronometres borne, nous construi-sons structurellement (syntaxiquement) un reseau de Petri a chronometres 1-sauf dont lescomportements sont temporellement bisimilaires a ceux du reseau de Petri a chronometresintial.

Dans [BCH+05b], les auteurs comparent l’expressivite des reseaux de Petri temporels etdes automates temporises. Ils prouvent que les automates temporises, les reseaux de Petritemporels bornes et les reseaux de Petri temporels 1-saufs sont d’expressivite equivalente entermes d’acceptation de langage temporise. Ils montrent de plus que les reseaux de Petritemporels a la Merlin (c’est-a-dire ne contenant aucune contrainte temporelle stricte, doncavec des intervalles de tir fermes sauf sur∞) bornes et 1-saufs sont d’expressivite equivalenteen termes de bisimulation temporelle. Dans cette partie, nous allons non seulement etendre cetheoreme aux reseaux de Petri temporels avec des contraintes strictes mais aussi demontrerun resultat similaire sur les reseaux de Petri temporels a chronometres. Autrement dit, nousallons montrer que les reseaux de Petri bornes a chronometres et les reseaux de Petri 1-saufsa chronometres sont d’expressivite equivalente en termes de bisimulation temporelle. Pour cefaire, nous proposons une construction structurelle (syntaxique) d’un reseau de Petri 1-saufa chronometres a partir d’un reseau de Petri borne a chronometres telle que les deux reseauxsont temporellement bisimilaires. Cette traduction est suffisamment generale pour s’appliquera la fois aux reseaux avec des contraintes larges et strictes. Elle peut egalement etre restreinteau cas particulier des reseaux de Petri temporels afin d’etendre le resultat de [BCH+05b] auxmodeles avec des contraintes temporelles strictes. Nous etablissons notre preuve dans le casgeneral des modeles dotes d’une semantique de temps dense mais elle s’applique de maniereimmediate aux reseaux en temps discret.

5.2.1 Traduction structurelle des reseaux de Petri a chronometres bornesvers les reseaux de Petri a chronometres 1-saufs

Nous partons d’un reseau de Petri temporels avec arcs de reset et hyperarcs inhibiteursN = (P, T,•(.), (.)•,�(.), a, b,M0, I) avec P = {P1, . . . , Pm} et T = {t1, . . . , tn}. Nous suppo-sons de plus que le reseau est k-borne : ∀i ∈ [1,m],M(Pi) ≤ k

Nous proposons une traduction de N en un RdPTI 1-sauf ∆(N ) qui soit temporellementbisimilaire.

L’idee fondamentale de notre traduction est de stocker les informations relatives au mar-quage d’une place sous la forme de plusieurs places, chacune correspondant a un marquagepotentiel. Il suffira des lors qu’il y ait un jeton dans un de ces places pour connaıtre le mar-quage de la place correspondant de N .

Page 59: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.2 Equivalence entre les SwPN bornes et 1-saufs 53

5.2.1.1 Presentation informelle de la traduction

Traduction des informations relatives au marquageNous allons traduire les informations relatives au marquage d’une place sous la forme

de plusieurs places (qui, elles, ne seront jamais marquees de plus d’un jeton). Ainsi si unreseau est k-borne, nous allons creer, pour chaque place Pj , k + 1 places : Pj,0 est marqueequand il n’y a pas de jeton dans Pj , Pj,1 est marquee quand il y a un jeton dans Pj , . . ., Pj,k

est marquee quand il y a k jetons dans Pj . La figure 5.3 illustre cette premiere etape de latraduction pour un reseau de Petri a chronometres 4-borne.

P0 P0,0 P0,1 P0,2 P0,3 P0,4

(a) (b)

Fig. 5.3 – Comment traduire les places d’un reseau de Petri a chronometres 4-borne (a) enun reseau de Petri a chronometres 1-sauf (b)

Traduction des transitions et des arcs simplesIl nous faut maintenant envisager les transitions. Considerons une transition quelconque

ti du reseau initial N . Nous allons proceder en deux temps : d’abord envisager l’effet dela fonction d’incidence amont, puis celui de la fonction d’incidence aval. Nous commenconspar creer des places Pj,en,i et Pi,firing,pre. La premiere signifie que le marquage dans la placeamont Pj est superieur ou egal au poids de l’arc reliant Pj a ti (Pj est de fait reliee aune transition ti,∆(N ), ayant pour intervalle de tir le meme intervalle que ti, permettant desymboliser l’ecoulement du temps). La seconde indique que ti est tiree et que des jetons sontde fait retires des places en amont. Nous creons autant de copies de ti,pre,(.,.),...,(.,.) qu’il existede configurations de marquage des places d’entree de ti. Hormis pour ti,∆(N ), les intervallesde tir de chaque transition que nous avons creee est [0, 0]. Illustrons notre propos sur latraduction donnee par la figure 5.4 :

– la transition t0,∆(N ) est sensibilisee des que t0 l’est ;– la transition t0,pre,(0,2) est tiree lorsqu’il y a deux jetons dans P0 (ce qui signifie que,

parmi toutes les places correspondant a P0, seule P0,2 est marquee) ; le jeton presentdans P0,2 est alors retire et un jeton est positionne dans la place P0,0, conformement ala fonction d’incidence amont •ti.

– la transition t0,pre,(0,3) est tiree lorsqu’il y a trois jetons dans P0 (ce qui signifie que,parmi toutes les places correspondant a P0, seule P0,3 est marquee) ; le jeton presentdans P0,3 est alors retire et un jeton est positionne dans la place P0,1, conformement ala fonction d’incidence amont •ti.

– la transition t0,pre,(0,4) est tiree lorsqu’il y a quatre jetons dans P0 (ce qui signifie que,parmi toutes les places correspondant a P0, seule P0,4 est marquee) ; le jeton presentdans P0,4 est alors retire et un jeton est positionne dans la place P0,2, conformement ala fonction d’incidence amont •ti.

Apres avoir traduit les comportements relatifs a la fonction d’incidence amont de la tran-

Page 60: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

54 Expressivite comparee de classes de reseaux de Petri

P0

t0 [a,b]

P0,0

2

P0,1 P0,2 P0,3 P0,4

P0,en,0

t0,pre,(0,2) [0,0]P0,firing,pre

t0,pre,(0,3) [0,0]

t0,pre,(0,4) [0,0]

(a)

(b)

t0,Δ(T) [a,b]

Fig. 5.4 – Comment traduire la fonction d’incidence amont de transitions appartenant a unreseau de Petri a chronometres 4-borne (a) au sein d’un reseau de Petri a chronometres 1-sauf(b)

sition ti, nous pouvons desormais nous focaliser sur la fonction d’incidence aval. Pour chaquetransition ti du reseau initial N , nous creons une place Pi,firing,post signifiant que la transitionti a ete tiree et que des jetons sont ajoutes dans les places en aval. Nous creons autant decopies de ti,post,(.,.),...,(.,.) qu’il existe de configurations de marquage des places de sortie de ti.Les intervalles de tir de ces nouvelles transitions sont [0, 0]. La encore, nous allons expliciternotre traduction sur un exemple, donne par la figure 5.5 :

– la place P0,firing,post est marquee des que la premiere phase du tir de ti est achevee ;– la transition t0,post,(1,0) est tiree lorsqu’il n’y a pas de jeton dans P1 (ce qui signifie que,

parmi toutes les places correspondant a P1, seule P1,0 est marquee) ; le jeton presentdans P1,0 est alors retire et un jeton est positionne dans la place P1,3, conformement ala fonction d’incidence aval t•i .

– la transition t0,post,(1,1) est tiree lorsqu’il y a un jeton dans P1 (ce qui signifie que, parmitoutes les places correspondant a P1, seule P1,1 est marquee) ; le jeton present dans P1,1

est alors retire et un jeton est positionne dans la place P1,4, conformement a la fonctiond’incidence aval t•i .

Dans le cas ou P1 peut elle-meme sensibiliser certaines transitions, des jetons supplementai-res peuvent etre envoyes dans les places P1,en,.. Ce mecanisme est assure par un arc entrecertaines des transitions ti,post,(.,.),...,(.,.) et P1,en,.. La presence de cet arc depend du fait quela transition puisse ou non etre deja sensibilisee. Sur la figure 5.6 :

– il y a un arc entre t0,post,(1,0) et P1,en,1 car le tir de cette transition doit conduire a unetat dans lequel t1,∆(N ) est nouvellement sensibilisee (elle ne pouvait pas l’etre dans laconfiguration precedente) ;

– il n’y a pas d’arc entre t0,post,(1,1) et P1,en,1 car t1,∆(N ) est, dans pareille configuration,deja sensibilisee ;

Page 61: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.2 Equivalence entre les SwPN bornes et 1-saufs 55

P0

t0 [a,b]

P0,0

2

P0,1 P0,2 P0,3 P0,4

P0,en,0

t0,pre,(0,2) [0,0]P0,firing,pre

t0,pre,(0,3) [0,0]

t0,pre,(0,4)[0,0]

(a)P0,firing,post

P1,0 P1,1 P1,2 P1,3 P1,4

t0,post,(1,0) [0,0]

t0,post,(1,1) [0,0]

3

(b)

t0,Δ(N) [a,b]

P1

Fig. 5.5 – Comment traduire la fonction d’incidence aval de transitions appartenant a unreseau de Petri a chronometres 4-borne (a) au sein d’un reseau de Petri a chronometres 1-sauf(b)

Page 62: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

56 Expressivite comparee de classes de reseaux de Petri

Nous devons enfin nous assurer que l’ordre dans lequel se succedent les differentes opera-tions consecutives au tir d’une transition est bien correct. Cela signifie que, des lors qu’unetransition est tiree, certains jetons doivent etre retires des places d’entree et certains jetonsdoivent etre inseres dans les places de sortie. Ceci est garanti par l’ajout d’un arc inhibiteurentre les places P.,firing,pre et P.,firing,post et chaque transition t.,∆(N ). Il est ainsi necessairede jouer l’integralite de la sequence enclenchee par le tir de la transition t.,∆(N ) avant qu’uneautre transition t.,∆(N ) ne puisse etre franchie.

Traductions des arcs de reset

Le modele general des rRdPTI ne comporte pas uniquement des arcs simples, mais aussides arcs de reset et des hyperarcs inhibiteurs. Un arc de reset entre une place Pj et unetransition ti est traduit a l’aide d’arcs de reset entre chaque place Pj,1, . . . , Pj,k et chaquetransition ti,pre,(.,.),...,(.,.). La construction est, de fait, relativement simple. Nous en donnonsun exemple sur la figure 5.7.

Il convient de noter que les arcs de reset pourraient egalement etre traduits a l’aide d’arcssimples. Pour ce faire, nous devons apporter une legere modification a la methode consistanta traduire chaque transition ti en transitions ti,pre,(.,.),...,(.,.) : jusqu’a maintenant, nous creionsautant de copies de ti,pre,(.,.),...,(.,.) qu’il existait de configurations de marquage possible pour lesplaces en amont. Mais nous ajustons desormais notre procedure de construction et consideronsles places liees a ti via un arc de reset comme s’il s’agissait de places d’entree « classiques ».Pour etre plus explicite, considerons le meme exemple que precedemment et la traductiondonnee sur la figure 5.8. Afin de ne pas surcharger la figure avec un nombre trop importantd’arcs et de transitions, nous avons uniquement represente les transitions t0,pre,(0,2),(1,.) (et nonpas les transitions t0,pre,(0,3),(1,.) et t0,pre,(0,4),(1,.)). Commentons brievement cette traduction :

– la transition t0,∆(N ) est sensibilisee des que t0 l’est ;– la transition t0,pre,(0,2),(1,0) est tiree lorsqu’il y a deux jetons dans la place P0 du reseau

initial (ce qui signifie que, parmi toutes les places associees a P0, seule P0,2 est marquee)et aucun jeton dans P1.

– les arcs en pointilles modelisent le fait que le marquage de la place P1 du reseau initialest remis a zero par le tir de t0.

L’intervalle de tir de chaque transition creee a cette etape est [0, 0].

Traduction des hyperarcs inhibiteursUn hyperarc inhibiteur entre des places Pj0 , . . . , Pjl

et une transition ti est traduit al’aide d’hyperarcs inhibiteurs entre chaque configuration de marquage de Pj0 , . . . , Pjl

qui doitinhiber ti et la transition traduite ti,∆(N ). Nous ajoutons egalement un hyperarc inhibiteurentre les places Pj0 , . . . , Pjl

et ti,∆(N ). Le mecanisme est illustre sur la figure 5.9. Afin de nepas surcharger la figure avec un nombre trop d’important d’arcs et de transitions, nous avonsuniquement represente la transition t0,pre,(0,2) (et non les transitions t0,pre,(0,3) et t0,pre,(0,4)).

Au final, nous devons envisager les cas ou plusieurs transitions ti1 , . . . , til ont une placed’entree Pj en commun. Nous devons des lors ajouter les arcs qui permettent de retirer lesjetons situes dans les places Pj,en,. dans le cas ou le marquage de Pj n’est plus suffisant poursensibiliser certaines transitions. Nous illustrons ce fonctionnement sur le reseau de Petri achronometres de la figure 5.10. Les arcs en pointilles sont les arcs classiques que nous dessinons

Page 63: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.2 Equivalence entre les SwPN bornes et 1-saufs 57

P0

t0 [a,b]

P0,0

2

P0,1 P0,2 P0,3 P0,4

P0,en,0 t0,Δ(N) [a,b]

t0,pre,(0,2) [0,0]

P0,firing,pre

t0,pre,(0,3) [0,0]

t0,pre,(0,4)[0,0]

(a)P0,firing,post

P1,0 P1,1 P1,2 P1,3P1,4

t0,post,(1,0) [0,0]

t0,post,(1,1)[0,0]

3

(b)

t1 [c,d]

P1,en,1 t1,Δ(N) [c,d]

P1

P1,firing,pret1,pre,(1,1)

[0,0]

t1,pre,(1,2) [0,0]t1,pre,(1,3) [0,0]

t1,pre,(1,4) [0,0]

Toute transition t.,Δ(N) du réseau

Toute transition t.,Δ(N) du réseau

Toute transition t.,Δ(N) du réseau

Fig. 5.6 – Comment traduire le reseau de Petri a chronometres 4-borne de la figure (a) en unreseau a chronometres 1-sauf (b)

Page 64: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

58 Expressivite comparee de classes de reseaux de Petri

P0

t0 [a,b]

P0,0

2

P0,1 P0,2 P0,3 P0,4

P0,en,0t0,pre,(0,2) [0,0]

P0,firing,pre

(a)

P1,0 P1,1 P1,2 P1,3 P1,4

(b)

t0,Δ(N) [a,b]P1

Fig. 5.7 – Traduction partielle des arcs de reset d’un reseau de Petri a chronometres 4-borne(a) en un reseau a chronometres 1-sauf (b)

pour traduire les relations entre t0, t1, P0, P1 et P2 ; les arcs en traits continus servent, eux,a traduire le fait que P0 est une place d’entree tant pour t0 que pour t1.

– nous faisons figurer un arc entre P0,en,0 et t1,pre,(1,2) et entre P0,en,0 et t1,pre,(1,3) car,dans le reseau initial, le tir de t1 desensibilise t0 si le marquage de P0 est inferieur ouegal a 3.

– nous ne faisons pas figurer d’arc entre P0,en,0 et t1,pre,(1,4) car, dans le reseau initial, t0reste sensibilisee apres le tir de t1 (le marquage de P0 restant plus superieur ou egal a2 apres le tir de t0).

– nous faisons figurer un arc entre P0,en,1 et t0,pre,(1,2) et entre P0,en,1 et t0,pre,(1,3) car,dans le reseau initial, le tir de t0 desensibilise t1 si le marquage de P1 est inferieur ouegal a 3.

– nous ne faisons pas figurer d’arc entre P0,en,1 et t0,pre,(0,4) car, dans le reseau initial, t1reste sensibilisee apres le tir de t0 (le marquage de P0 restant plus superieur ou egal a2 apres le tir de t0).

5.2.1.2 Construction formelle

La construction complete. Nous commencons par creer les nouvelles places Pi,j (ouj ∈ [1, k]) pour tout i ∈ [1,m]. Pi,j represente le cas ou la place Pi du reseau initial est marqueeavec j jetons. Construisons desormais le motif associe a chaque transition ti : nous creons unetransition ti,∆(N ), une place Pih,en,i (indiquant que ti est sensibilisee par la place d’entreePih), une place Pi,firing,pre (qui, lorsqu’elle est marquee, indique que, dans le reseau initial, tia ete tiree et que des jetons sont retires de certaines places, conformement aux prescriptionsde la fonction •ti), une place Pi,firing,post (qui, lorsqu’elle est marquee, indique que, dans le

Page 65: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.2 Equivalence entre les SwPN bornes et 1-saufs 59

P0

t0 [a,b]2

(a)

P1

P0,0 P0,1 P0,2 P0,3 P0,4

P0,en,0

t0,pre,(0,2),(1,1) [0,0]

P0,firing,pre

t0,pre,(0,2),(1,2) [0,0]

t0,pre,(0,2),(1,3) [0,0]

(b)

t0,Δ(N) [a,b]

t0,pre,(0,2),(1,4) [0,0]

P1,0P1,1 P1,2 P1,3 P1,4

t0,pre,(0,2),(1,0) [0,0]

Fig. 5.8 – Traduction partielle des arcs de reset d’un reseau de Petri a chronometres 4-borne(a) en un reseau a chronometres 1-sauf (b)

Page 66: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

60 Expressivite comparee de classes de reseaux de Petri

P0

t0 [a,b]

P0,0

2

P0,1 P0,2 P0,3 P0,4

P0,en,0t0,pre,(0,2) [0,0]

P0,firing,pre

(a)

P1,0 P1,1 P1,2 P1,3 P1,4

(b)

t0,Δ(N) [a,b]P1

Fig. 5.9 – Traduction partielle des hyperarcs inhibiteurs d’un reseau de Petri a chronometres4-borne (a) en un reseau a chronometres 1-sauf (b)

reseau initial, ti a ete tiree et que des jetons sont retires de certaines places, conformementaux prescriptions de la fonction t•i ), des transitions ti,pre,(i1,ji1

),(i2,ji2),...,(il,jil

) (ou i1, i2, . . . , ilsont les indices correspondant aux places d’entree de ti, jih ∈ [1, k] appartient a l’ensembledes marquages tels que Pih sensibilise ti) et des transitions ti,post,(g1,jg1 ),(g2,jg2 ),...,(gl,jgl

) (oug1, g2, . . . , gl sont les indices correspondant aux places de sortie de ti, jgh

∈ [1, k]).

Le tir de ti,pre,(i1,ji1),(i2,ji2

),...,(il,jil) corresponds au tir de ti lorsqu’il y a ji1 jetons dans la

place d’entree Pi1 , ji2 jetons dans la place d’entree Pi2 , . . . et jil jetons dans Pil . L’intervallede tir associe a chacune de ces transitions nouvellement creees est [0, 0]. Enfin, nous faisonsfigurer les arcs entre places et transitions.

Envisageons successivement chaque transition ti du reseau N . Nous considerons les arcsd’entree de ti, arcs qui, dans la traduction que nous proposons, vont provenir des placesPji1

, . . . , Pjil(de poids wji1

,i, . . . , wjil,i ; il convient de noter que wji1

,i =• ti(Pji1)) : nous ajou-

tons un arc entre Pjih,en,i et ti,∆(N ), un arc entre ti,∆(N ) et Pi,firing, un arc entre Pi,firing et

chaque transition ti,pre,(i1,ji1),(i2,ji2

),...,(il,jil), un arc entre chaque transition ti,pre,(i1,ji1

),(i2,ji2),...,(il,jil

)

et Pi1,ji1−wji1

,i , . . ., Pil,jil−wjil

,i , un arc entre chaque transition ti,pre,(i1,ji1),(i2,ji2

),...,(il,jil) et

Pi,firing,post, un arc inhibiteur entre Pi,firing,pre et chaque transition tf (ou f ∈ [1, n], f 6= i),un arc inhibiteur entre Pi,firing,post et chaque transition tf (ou f ∈ [1, n], f 6= i), et un arcentre ti,pre,(i1,ji1

),(i2,ji2),...,(il,jil

) et Pih,en,i pour tout ih tel que jih ≥ 2 × wjih,i. Lorsqu’une

des places d’entree Pih de ti est egalement une place d’entree d’une autre transition tg dureseau, nous faisons apparaıtre des arcs additionnels : un arc entre Pih,en,g et chaque transitionti,pre,(i1,ji1

),(i2,ji2),...,(il,jil

) t.q. jih − wjih,g < wjih

,i, un arc entre Pih,en,i et chaque transition

Page 67: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.2 Equivalence entre les SwPN bornes et 1-saufs 61

P0

t0 [a,b]

P0,0

2

P0,1 P0,2 P0,3 P0,4

P0,en,0

t0,pre,(0,2) [0,0]P0,firing,pre

t0,pre,(0,3) [0,0]

t0,pre,(0,4)[0,0]

(a)

P0,firing,post

P1,0 P1,1 P1,2 P1,3 P1,4

t0,post,(1,0) [0,0]

t0,post,(1,1) [0,0]

3

(b)

t0,Δ(N) [a,b]

P1

4t1 [c,d]

P2

P0,en,1

t1,Δ(N) [c,d]

P1,firing,pre

2

t1,pre,(1,3) [0,0]

t1,pre,(1,4) [0,0]

P1,firing,post

P2,0

t1,post,(2,0) [0,0]P2,1

P2,2

P2,3

P2,4

t1,pre,(1,2) [0,0]

Toute transition t.,Δ(N) du réseau

Toute transition t.,Δ(N) du réseau

Toute transition t.,Δ(N) du réseau

Fig. 5.10 – Comment traduire le reseau de Petri a chronometres 4-borne de la figure (a) enun reseau a chronometres 1-sauf (b)

Page 68: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

62 Expressivite comparee de classes de reseaux de Petri

ti,pre,(i1,ji1),(i2,ji2

),...,(il,jil) tel que jih − wjih

,i < wjig ,i.

Considerons maintenant les arcs de sortie de ti, impliquant les places Pgi1, . . . , Pgil

(depoids wi,gi1

, . . . , wi,gil; il convient de noter que wi,gih

= t•i (Pgih)) : nous ajoutons un arc entre

Pi,firing,post et chaque transition ti,post,(g1,jg1 ),(g2,jg2 ),...,(gl,jgl), un arc entre chaque transition

ti,post,(g1,jg1 ),(g2,jg2 ),...,(gl,jgl) et Pg1,jg1+wi,gi1

, . . ., Pgl,jgl+wi,jgl

, et un arc entre ti,post,(g1,jg1 ),(g2,jg2 ),...,(gl,jgl)

et Pgh,en,ughpour tout ugh

∈ [1,m] tel que Pghest une place d’entree de tugh

, jgh< wjgh

,ugh

et jgh+ wi,jgh

≥ wjgh,ugh

. L’intervalle de tir associe a chacune des transitions nouvellementcreees est [0, 0].

Pour completer la construction, il nous suffit des lors d’ajouter arcs de reset et hyper-arcs inhibiteurs permettant de modeliser des priorites entre taches. Pour tout hyperarc in-hibiteur entre Pi1 , . . . , Pil (avec des poids de winh,i1,i, winh,i2,i, . . . , winh,il,i) et ti, nous fai-sons apparaıtre l’hyperarc inhibiteur de poids 1 suivant : entre chaque configuration desplaces Pi1,j1 , Pi2,j2 , . . . , Pil,jl

telle que j1 ≥ winh,i1,i, . . . , jl ≥ winh,il,i et chaque transitionti,pre,(i1,ji1

),(i2,ji2),...,(il,jil

) et ti,∆(N ). Chaque arcs de reset entre une place Pj et une transi-tion ti, nous inserons un arc de reset entre chaque place Pj,1, . . . , Pj,k et chaque transitionti,pre,(i1,ji1

),(i2,ji2),...,(il,jil

).

Le marquage initial de ∆(N ) est directement lie au marquage initial de N par la relationmentionnee plus haut entre une place Pj de N et les places Pi,j de ∆(N ).

Il est important de noter que, par construction, ∆(N ) est 1-sauf (avec des arcs de poids1).

La preuve complete de la bisimulation temporelle (faible) entre le reseau de Petri a chro-nometres borne et le reseau 1-sauf resultant de la traduction est donnee dans l’annexe A.

5.2.2 Consequences des resultats precedents

Nous pouvons deduire le theoreme suivant de la precedente traduction :

Theoreme 5.1. A tout rRdPTI borne en temps dense N , on peut associer un rRdPTI 1-saufen temps dense ∆(N ) tel que N et ∆(N ) sont (faiblement) temporellement bisimilaires.

Par definition de la bornitude d’un reseau, nous avons egalement :

Theoreme 5.2. Tout rRdPTI 1-sauf est borne.

Il suit que :

Theoreme 5.3. Les rRdPTI bornes en temps dense et les rRdPTI 1-saufs en temps densesont d’expressivite equivalente en termes de bisimulation temporelle.

Corollaire 5.1. Les rRdPTI bornes en temps dense et les rRdPTI 1-saufs en temps densesont d’expressivite equivalente en termes d’acceptation de langage temporise.

Page 69: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.2 Equivalence entre les SwPN bornes et 1-saufs 63

Lorsque nous avons construit notre traduction, nous n’avons eu besoin de faire aucunehypothese sur le fait que les contraintes temporelles soient larges ou strictes. Ceci signifieque nos resultats sont generaux et ne s’appliquent pas seulement a des reseaux a la Merlin,contrairement aux conclusions exposees dans [BCH+05b].

Dans notre preuve, nous aurions pu considerer uniquement des arcs simples (et non desarcs inhibiteurs et des arcs de reset). En effet, la traduction proposee ne comporte aucun arcde reset a moins que le reseau initial en contienne. Les arcs inhibiteurs figurant dans notretraduction ont, quant a eux, pour role de proteger la ressource critique qu’est la valeur d’uneplace par rapport aux motifs de transition en amont et en aval qui pourraient vouloir y acceder.Concretement, sur la figure 5.6, cela signifie que la valeur du marquage de P1 doit etre, sur leschema (b), protegee contre un acces simultane par le motif associe a t0 (susceptible de retirerdes jetons) et par le motif associe a t1 (susceptible d’augmenter le nombre des jetons) : pource faire, nous ajoutons une place P1,mutex qui assure un acces unique soit par le motif associea t0, soit par le motif associe a t2. Ce principe est illustre sur la figure 5.11 a l’aide des arcset places grises. Reste a traiter le cas ou une place P0 est en amont de plusieurs transitionst0 et t1 (correspondant au cas de la figure 5.10 (a)) : il convient alors de bien vider les placesamont et aval de la transition ti,∆(N , dans le reseau non temporise traduit. Pour ce faire, ilsuffit de dedoubler toutes les transitions ti,pre(k,j) : d’une part, en une transition ti,pre(k,j),1

correspondant aux transitions ti,pre(k,j) que nous avons deja fait figurer sur la figure 5.10 (b)et une transition ti,pre(k,j),2 similaire aux transitions ti,pre(k,j) a ceci pres qu’elle aura pourplace amont Pl,en,i en lieu et place de Pl,firing,pre (l ∈ {0, 1}, l 6= i). Nous obtenons des lorsles resultats suivants :

Theoreme 5.4. Les RdPT bornes en temps dense et les RdPT 1-saufs en temps dense sontd’expressivite equivalente en termes de bisimulation temporelle.

Corollaire 5.2. Les RdPT bornes en temps dense et les RdPT 1-saufs en temps dense sontd’expressivite equivalente en termes d’acceptation de langage temporise.

Tous ces theoremes s’appliquent aussi bien en temps dense qu’en temps discret.

Theoreme 5.5. Les rRdPTI bornes en temps discret et les rRdPTI 1-saufs en temps discretsont d’expressivite equivalente en termes de bisimulation temporelle. Les RdPT bornes entemps discret et les RdPT 1-saufs en temps discret sont d’expressivite equivalente en termesde bisimulation temporelle.

Corollaire 5.3. Les rRdPTI bornes en temps discret et les rRdPTI 1-saufs en temps discretsont d’expressivite equivalente en termes d’acceptation de langage temporise. Les RdPT bornesen temps discret et les RdPT 1-saufs en temps discret sont d’expressivite equivalente en termesd’acceptation de langage temporise.

5.2.3 Expressivite des arcs de reset

5.2.3.1 Cas general

Theoreme 5.6. Les arcs de reset ajoutent de l’expressivite aux reseaux de Petri par rapportaux arcs simples, en termes de bisimulation. Formellement, nous avons : RdP avec arcs dereset * RdP.

Page 70: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

64 Expressivite comparee de classes de reseaux de Petri

P0

t0 [a,b]

P0,0

2

P0,1 P0,2 P0,3 P0,4

P0,en,0 t0,Δ(N) [a,b]

t0,pre,(0,2) [0,0]

P0,firing,pre

t0,pre,(0,3) [0,0]

t0,pre,(0,4)[0,0]

(a) P0,firing,post

P1,0 P1,1 P1,2 P1,3P1,4

t0,post,(1,0) [0,0]

t0,post,(1,1)[0,0]

3

(b)

t1 [c,d]

P1,en,1 t1,Δ(N) [c,d]

P1

P1,firing,pret1,pre,(1,1)

[0,0]

t1,pre,(1,2) [0,0]t1,pre,(1,3) [0,0]

t1,pre,(1,4) [0,0]

P1,mutex

Fig. 5.11 – Comment traduire le reseau de Petri temporel 4-borne de la figure (a) en unreseau 1-sauf (b)

Page 71: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.2 Equivalence entre les SwPN bornes et 1-saufs 65

Preuve. Dans [AK77], les auteurs prouvent que le probleme de l’accessibilite est indecidablepour les RdP avec arcs de reset. Raisonnons par l’absurde et supposons que les RdP avec arcsde reset et les RdP sont d’expressivite equivalente en termes de bisimulation. Considerons unRdP avec arcs de reset N . Alors il existe un RdP ∆(N ) qui est bisimilaire a N . Si on considereun etat donne Mgoal,N , la question de savoir si cet etat appartient a l’espace d’etats accessiblede N est indecidable. Neanmoins, puisque N et ∆(N ) sont bisimilaires, nous pouvons associera Mgoal,N un etat Mgoal,∆(N ) qui satisfait la relation de bisimulation. Or il est possible dedecider si l’etat Mgoal,∆(N ) de ∆(N ) est accessible. Et, de fait, de decider si Mgoal,N est unetat accessible de N . Nous obtenons la une contradiction. �

Theoreme 5.7. A tout RdP avec arcs de reset N , on peut associer un RdP avec arcs inhi-biteurs ∆(N ) t.q. N et ∆(N ) sont (faiblement) bisimilaires.

Ce resultat a deja ete prouve dans [Duf98]. Nous rappelons ici le principe de la preuve carle motif exhibe permet d’etendre le resultat aux reseaux de Petri temporels avec hyperarcsinhibiteurs.

Preuve. Le motif exhibe sur la figure 5.12 montre comment le comportement des arcs de resetpeut etre simule a l’aide d’hyperarcs inhibiteurs. L’idee principale est la suivante : lorsqu’uneplace doit etre remise a zero, nous inhibons le tir de toutes les transitions du reseau, al’exception de celle qui permet le vidage de la place. La preuve est des lors immediate, cequi justifie que nous l’omettions. De plus, tout hyperarc inhibiteur peut etre exprime a l’aided’arcs inhibiteurs simples. Le resultat peut ainsi etre etendu aux arcs inhibiteurs simples. �

Il suit que :

Theoreme 5.8. Les RdP avec arcs inhibiteurs et arcs de reset et les RdP avec arcs de resetsont d’expressivite equivalente en termes de bisimulation.

P0

t1

(a) (b)

t0,Δ(N)t0

treset

P0,trans

endt1,Δ(N)

Preset

Fig. 5.12 – Comment traduire le reseau de Petri avec arcs de reset de la figure (a) en unreseau de Petri avec hyperarcs inhibiteurs (b)

Theoreme 5.9. A tout RdP avec arcs de reset N , on peut associer un reseau de Petritemporel ∆(N ) tel que N et ∆(N ) sont bisimilaires (faiblement) via une abstraction du temps.

Preuve. Les reseaux de Petri temporels simulent le comportement des reseaux de Petri avecarcs inhibiteurs [BM83]. �

Page 72: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

66 Expressivite comparee de classes de reseaux de Petri

P0

t1

(a) (b)

t0,Δ(N) [0,0]t0

treset [0,0]

P0,trans

end [1,1]t1,Δ(N) [0,∞[

PresetPno-reset

Fig. 5.13 – Comment traduire le reseau de Petri avec arcs de reset de la figure (a) en unreseau de Petri temporel (b)

P0

t1 [c,d]

(a) (b)

t0,Δ(N) [a,b]t0 [a,b]

treset [0,0]

P0,trans

end [0,0]t1,Δ(N) [c,d]

Preset

Fig. 5.14 – Comment traduire le reseau de Petri temporel avec arcs de reset de la figure (a)en un reseau de Petri temporel avec hyperarcs inhibiteurs (b)

Page 73: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.2 Equivalence entre les SwPN bornes et 1-saufs 67

Le motif exhibe sur la figure 5.13 illustre le resultat du theoreme 5.9.

Theoreme 5.10. A tout reseau de Petri temporel avec arcs de reset N , on peut associer unreseau de Petri temporel avec arcs inhibiteurs ∆(N ) tel que N et ∆(N ) sont (faiblement)temporellement bisimilaires. Formellement, nous avons : RdPT avec arcs de reset ⊆ RdPTI.

Preuve. Le motif exhibe par la figure 5.14 montre comment le comportement des arcs dereset peut etre simule a l’aide d’hyperarcs inhibiteurs. La preuve est immediate, ce qui justifieque nous l’omettions. De plus, tout hyperarc inhibiteur peut etre exprime a l’aide d’arcsinhibiteurs simples. Le resultat peut ainsi etre etendu aux arcs inhibiteurs simples. �

Corollaire 5.4. A tout rRdPTI N , on peut associer un RdPTI ∆(N ) tel que N et ∆(N )sont (faiblement) temporellement bisimilaires.

Tout RdPTI est bien evidemment un rRdPTI. Ceci nous permet d’obtenir le resultatsuivant :

Theoreme 5.11. Les arcs de reset n’ajoutent pas d’expressivite au modele, en termes debisimulation temporelle (faible), par rapport aux arcs simples et aux arcs inhibiteurs. Formel-lement, nous avons : RdPTI = RdPTI avec arcs de reset.

Theoreme 5.12. Il existe (au moins) un reseau de Petri temporel avec arcs inhibiteurs N telqu’aucun reseau de Petri temporel avec arcs de reset ne lui est (faiblement) temporellementbisimilaires. Formellement, nous avons : RdPT avec arcs de reset ⊂ RdPTI.

Preuve. Raisonnons par l’absurde en supposant que pour tout reseau de Petri temporel avecarcs inhibiteurs N , il existe un reseau de Petri temporel avec arcs de reset ∆(N ) tel que Net ∆(N ) sont (faiblement) temporellement bisimilaires. Nous aurions alors RdPT avec arcsde reset = RdPTI.

Grace au theoreme 5.11, nous savons que les reseaux de Petri temporels avec arcs inhibi-teurs et les reseaux de Petri temporels avec arcs inhibiteurs et arcs de reset sont d’expressiviteequivalente en termes de bisimulation temporelle (faible).

Il suivrait que les reseaux de Petri temporels avec arcs de reset soient temporellementbisimilaires aux reseaux de Petri temporels avec arcs inhibiteurs et arcs de reset, ce qui n’estpas le cas (l’inclusion est stricte entre les deux modeles). Nous en deduisons donc notreresultat. �

5.2.3.2 Reseaux bornes

Pour prouver que, dans le cas des reseaux bornes, les arcs de reset n’augmentent pasl’expressivite du modele par rapport aux arcs simples, nous pouvons utiliser une constructionsimilaire a celle presentee sur la figure 5.10. En utilisant le motif exhibe sur la figure 5.8, nousavons le theoreme suivant :

Theoreme 5.13. Dans le cas des reseaux de Petri temporels bornes ou des reseaux de Petritemporels a hyperarcs inhibiteurs bornes, les arcs de reset n’ajoutent pas d’expressivite aumodele par rapport aux arcs simples en termes de bisimulation temporelle (faible).

Page 74: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

68 Expressivite comparee de classes de reseaux de Petri

Il suit que, dans le cas des reseaux bornes, nous pouvons parler indistinctement de reseauxde Petri temporels et de reseaux de Petri temporels avec arcs de reset, mais aussi de reseauxde Petri temporels avec arcs inhibiteurs, de reseaux de Petri temporelles avec arcs de reset etarcs inhibiteurs, de reseaux de Petri temporels avec arcs de reset et hyperarcs inhibiteurs.

Avant de conclure cette partie, nous souhaitons mettre l’accent sur le fait que l’expressivitetheorique ne peut pas etre le seul critere sur lequel raisonner au moment de choisir les differentstypes d’arcs a utiliser dans un modele. Bien que les arcs de reset n’ajoutent pas d’expressiviteaux modeles bornes, ils permettent de modeliser certains systemes temps reel plus facilementqu’en se limitant aux arcs simples. Ainsi, ils constituent une maniere elegante de modeliserles fonctions de remise a zero de certains sous-systemes.

5.3 Equivalence entre les reseaux de Petri temporels en tempsdiscret et les reseaux de Petri non temporises

Apres avoir etabli des resultats qui s’appliquent tout autant en temps dense qu’en tempsdiscret, nous allons nous focaliser sur des resultats d’expressivite pour des modeles dotesd’une semantique de temps discret. Dans ce premier paragraphe sur le sujet, nous allons plusspecifiquement etudier le cas des reseaux de Petri temporels dotes d’une semantique de tempsdiscret. Nous allons montrer comment construire un produit synchronise de reseaux de Petria partir d’un RdPT en temps discret de telle sorte que les deux modeles soient bisimilaires.Ce resultat sera etendu, dans le paragraphe suivant, au cas des rRdPTI.

5.3.1 Traduction structurelle des reseaux de Petri temporels en temps dis-cret vers les reseaux de Petri non temporises

Nous partons d’un reseau de Petri temporel N = (P, T,•(.), (.)•, a, b,M0) avec P ={P1, . . . , Pm} et T = {t1, . . . , tn}, dote d’une semantique de temps discret.

Nous definissons, pour chaque transition ti de T , un reseau de Petri avec arcs de reset ethyperarcs inhibiteurs Ni (cf. figure 5.15). Le reseau de Petri non temporise resultant comporteune place, notee Pν,i, qui permet de compter l’ecoulement du temps, unite par unite. Dans Ni,deux transitions representent l’ecoulement du temps : τenabled,i (respectivement τnotEnabled,i)est la transition qui peut etre tiree pour modeliser l’ecoulement du temps dans le cas ou tiest sensibilisee (respectivement non sensibilisee). L’ecoulement d’une unite de temps est ainsisimule par le tir de la transition τenabled,i ou par celui de τnotEnabled,i.

L’etat du reseau de Petri Ni donne les informations necessaires a la connaissance de l’etatde la transition ti : lorsqu’il y a un jeton dans PnotEnabled,i, la transition n’est pas sensibilisee ;lorsque PnotEnabled,i est vide, le marquage de Pν,i indique la valeur de l’horloge associee a ti. Siune place Pj du reseau initial N est une place d’entree ou de sortie pour plus d’une transition(et donc pour des transitions differentes notees tk,1, . . . , tk,l), elle n’est traduite qu’une seulefois : cela signifie que les places d’entree/de sortie Pj,trans,k,1, . . . , Pj,trans,k,l sont fusionneesen une unique place Pj,trans. Le marquage des places Pj,trans donne le marquage des placesd’entree/de sortie de la transition ti.

Le marquage initial de chaque reseau Ni depend du marquage initial M0 du RdPT entemps discret que nous cherchons a traduire : le marquage des places Pj,trans (ou j tel que

Page 75: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.3 Equivalence entre les RdPT en temps discret et les RdP 69

ti

a

tstartClock,i

τenabled,i

b

Pa, trans

w

PnotEnabled,i

w

Penabled,i

τnotEnabled,i Pv,i

ti

Pa

w

[a,b]

w

(a)

(b)

w

hyperarc inhibiteur

arc de reset

Notation

Fig. 5.15 – Comment traduire le RdPT en temps discret de la figure (a) en reseau de Petrinon temporise avec arcs de reset et hyperarcs inhibiteurs (b)

Pj ∈ P est une place d’entree/de sortie de ti) est egal au marquage des places Pj ; alors quePν,i et Penabled,i ne sont pas marquees initialement, PnotEnabled,i l’est. Les unites de tempscommencent a etre decomptees dans Ni une fois survenu le tir de tstartClock,i. A partir dumoment ou au moins a unites de temps et au plus b unites de temps se sont ecoulees a partirdu tir de tstartClock,i (i.e. le nombre de jetons dans Pν,i est superieur ou egal a a et inferieurou egal a b), la transition ti peut etre tiree. Le tir de ti remet a zero le marquage de la placePν,i, retire de chaque place d’entree Pj,trans un nombre de jetons egal au poids de l’arc entrePj,trans et ti et positionne dans chaque place de sortie un nombre de jetons egal au poids del’arc entre ti et ses places de sortie.

Definissons maintenant la fonction de synchronisation f comme suit :– f(•, . . . , tk,l, . . . , •) = tk,l si tk,l ∈ Tl\{τenabled,i, τnotEnabled,i} et tous les autres arguments

sont • ;– ∀k1 ∈ {enabled, notEnabled}, . . . ,∀kn ∈ {enabled, notEnabled}, f(τk1,1, . . . , τkn,n) =wτ

Nous notons ∆(N ) = (N1× . . .×Nn)f le RdP avec arcs de reset et hyperarcs inhibiteursassocie au RdPT N .

La preuve complete de la bisimulation (faible) entre le reseau de Petri temporel doted’une semantique de temps discret et le reseau de Petri non temporise traduit est donneedans l’annexe B.

Page 76: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

70 Expressivite comparee de classes de reseaux de Petri

5.3.2 Consequences des resultats precedents

Nous deduisons de la traduction precedemment etablie le theoreme suivant :

Theoreme 5.14. A tout RdPT borne en temps discret N , on peut associer un RdP avec arcsde reset et hyperarcs inhibiteurs ∆(N ) tel que N et ∆(N ) sont faiblement bisimilaires viaune abstraction du temps.

Corollaire 5.5. A tout reseau de Petri temporel borne en temps discret N , on peut associerun RdP borne avec arcs de reset et hyperarcs inhibiteurs ∆(N ) tel que N et ∆(N ) sont(faiblement) bisimilaires via une abstraction du temps.

Preuve. Supposons que le reseau de Petri temporel N est borne, il suit immediatement que,pour le reseau associe ∆(N ), le marquage de chaque place P.,trans, Penabled,. and PnotEnabled,.

est borne. Les seules places qui peuvent voir leur marquage croıtre indefiniment sont les placesPν,..

Si, dans le reseau N , aucune transition ne comporte l’infini comme date de tir au plustard, il est immediat que le marquage de chaque place Pν,. est borne.

Il nous reste a envisager les cas ou l’infini peut etre utilise comme date de tir au plustard au sein de N : nous proposons d’apporter une modification mineure a la traduction quenous avons introduite precedemment. Ce changement est fonde sur la constatation suivante :considerons une transition associee a un intervalle de tir avec une date au plus tard infinie([a,∞[) ; une fois que l’horloge associee a cette transition a atteint la valeur a, la connaissancede sa valeur precise n’est plus necessaire : on sait que la transition est tirable a tout momenta compter de cet instant et c’est la le point important. a une transition ayant une date de tirau plus tard infinie.

Envisageons une transition ti dont l’intervalle de tir est [a,∞[. Nous designons par Ni

le reseau correspondant au motif traduit a partir de ti. Dans la traduction telle que nousl’avons precedemment introduite (c’est-a-dire lorsque la date de tir au plus tard est finie),nous faisons figurer un arc inhibiteur entre Pν,i et τenabled,i, arc ayant pour poids b. Lorsquela date de tir au plus tard est infinie, nous remplacons le poids b par un poids egal a a. Nousajoutons egalement une transition τenabled,infinity,i qui permet d’effectuer globalement un tirde transitions d’ecoulement du temps, τ , dans l’ensemble du reseau, une fois que le marquagede Pν,i a atteint a : pour terminer cette construction, nous inserons un arc de poids a entrePν,i et τenabled,infinity,i et un autre arc de poids a entre τenabled,infinity,i et Pν,i.

Grace a cette abstraction, nous pouvons regrouper dans une unique classe d’equivalencetous les etats pour lesquels M(Pν,i) ∈ [a,∞[. Nous prouvons alors facilement que cette abs-traction preserve le comportement du reseau :N et ∆(N ) sont (faiblement) bisimilaires. Cetteconstruction garantit la bornitude de ∆(N ). �

Dans [BM83], les auteurs prouvent le theoreme suivant :

Theoreme 5.15. A tout RdP avec arcs inhibiteurs N , on peut associer un RdPT ∆(N ) telque N et ∆(N ) sont (faiblement) bisimilaires via une abstraction du temps.

Des lors, il est facile de montrer le corollaire suivant :

Page 77: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.4 Equivalence entre les SwPN en temps discret et les RdP 71

Corollaire 5.6. A tout RdP avec arcs inhibiteurs borne N , on peut associer un RdPT borne∆(N ) tel que N et ∆(N ) sont (faiblement) bisimilaires via une abstraction du temps.

Puisque les hyperarcs inhibiteurs n’ajoutent pas d’expressivite au modele par rapport auxarcs inhibiteurs simples, le resultat peut etre etendu aux reseaux avec hyperarcs inhibiteurs.De plus, le theoreme 5.13 etablit que les arcs de reset n’augmentent pas l’expressivite desreseaux de Petri temporels, sous la condition que l’on considere des reseaux bornes. Il suit :

Theoreme 5.16. A tout RdP avec arcs de reset et hyperarcs inhibiteurs N , on peut associerun RdPT borne ∆(N ) tel que N et ∆(N ) sont (faiblement) bisimilaires via une abstractiondu temps.

Nous deduisons des theoremes 5.14 et 5.16 le resultat suivant :

Theoreme 5.17. Les RdPT bornes en temps discret et les RdPs bornes avec arcs de resetet hyperarcs inhibiteurs sont d’expressivite equivalente en termes de bisimulation (faible) viaune abstraction du temps. Formellement, nous avons : les RdPT bornes en temps discret =≈ta

RdPs bornes avec arcs de reset et hyperarcs inhibiteurs.

5.4 Equivalence entre les reseaux de Petri a chronometres entemps discret et les reseaux de Petri non temporises

Apres avoir introduit les idees clefs regissant notre traduction sur le modele des reseauxde Petri temporels en temps discret, nous allons nous pencher sur le cas des reseaux dePetri a chronometres en temps discret. Nous allons montrer comment construire un produitsynchronise de RdPs a partir d’un reseau de Petri a chronometres en temps discret de manierea ce que les deux modeles soient bisimilaires. Nous donnons les principaux jalons permettantd’etablir ce resultat. Le theoreme 5.3 nous permet de deduire une large variete de nouveauxresultats, dont des resultats de decidabilite que nous exposerons dans le chapitre suivant.

Dans cette partie, a partir d’un reseau de Petri a chronometres en temps discret, nousconstruisons structurellement (syntaxiquement) un RdP dont les comportements sont bisimi-laires via une abstraction du temps a ceux du reseau de Petri a chronometres intial.

5.4.1 Traduction structurelle des reseaux de Petri a chronometres en tempsdiscret vers les reseaux de Petri non temporises

Nous partons d’un rRdPTI N = (P, T,•(.), (.)•,�(.), a, b,M0, I) avec P = {P1, . . . , Pm} etT = {t1, . . . , tn}, dote d’une semantique de temps discret.

La traduction que nous avons introduite sur les reseaux de Petri temporels en temps discretpeut aisement etre etendue aux reseaux de Petri temporels avec arcs de reset et hyperarcsinhibiteurs. Le motif exact de cette traduction est represente sur la figure 5.16.

La fonction de synchronisation f est desormais definie comme suit :– f(•, . . . , tk,l, . . . , •) = tk,l si tk,l ∈ Tl\{τenabled,i, τnotEnabled,i, τinhibited,i} et tous les autres

arguments sont • ;

Page 78: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

72 Expressivite comparee de classes de reseaux de Petri

ti

a

tstartClock,i

τenabled,ib

Pa,trans

w

PnotEnabled,i

w

Penabled,i

τnotEnabled,i

Pv,i

ti

Pa

w

[a,b]

v

(a)

(b)

tj

Pb

v

[c,d]

tk [e,f] tl [g,h]

tktl

tj

c

tstartClock,j

τenabled,j

d

v

PnotEnabled,j

v

Penabled,j

τnotEnabled,jPv,j

τinhibited,i

Pinhibited,i

Pb,trans

v

w

tinhib,b,i

Pinhib,b,i

Toute transition du réseau sauf

tinhib,.,.

w

w

Fig. 5.16 – Comment traduire le rRdPTI en temps discret de la figure (a) en reseau de Petrinon temporise avec arcs de reset et hyperarcs inhibiteurs (b)

Page 79: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.4 Equivalence entre les SwPN en temps discret et les RdP 73

– ∀k1 ∈ {enabled, notEnabled, inhibited}, . . . , ∀kn ∈ {enabled, notEnabled, inhibited},f(τk1,1, . . . , τkn,n) = τ

Les nouveaux comportements que nous devons traduire consistent a arreter et relancerl’horloge (ou plutot : le chronometre) associe a une transition. Chaque hyperarc inhibiteur sus-ceptible d’inhiber une transition ti du rRdPTI initial est traduit a l’aide d’une place Pinhibited,i,d’une transition τinhibited,i et d’arcs entre Pinhibited,i et les transitions mises en relation vial’hyperarc inhibiteur initial. Lorsqu’une place Pinhibited,i est marquee, les transitions τenabled,i,τnotEnabled,i et ti sont inhibees : cela traduit le fait que le chronometre associe a la transitionti du reseau initial N est stoppe. L’ecoulement du temps reste possible dans le reseau dePetri global car Pinhibited,i sensibilise la transition τinhibited,i. La transition tb,inhib,i est tireeune fois que l’inhibition de ti par l’hyperarc inhibiteur entre la place Pb,trans et la transitionti commence. La place Pb,inhib garantit que tb,inhib,i soit tiree une seule fois des lors que ti estinhibee.

Nous notons ∆(N ) = (N1× . . .×Nn)f le RdP avec arcs de reset et hyperarcs inhibiteursassocie au rRdPTI N .

La preuve complete de la bisimulation (faible) entre le reseau de Petri a chronometres doted’une semantique de temps discret et le reseau de Petri non temporise traduit est donnee dansl’annexe C.

5.4.2 Consequences des resultats precedents

Theoreme 5.18. A tout rRdPTI 1-sauf en temps discret N , on peut associer un RdP avecarcs de reset et hyperarcs inhibiteurs ∆(N ) tel que N et ∆(N ) sont (faiblement) bisimilairesvia une abstraction du temps.

Theoreme 5.19. A tout rRdPTI 1-sauf en temps discret N , on peut associer un RdP borneavec arcs de reset et hyperarcs inhibiteurs ∆(N ) tel que N et ∆(N ) sont (faiblement) bisi-milaires via une abstraction du temps.

Preuve. Supposons que le rRdPTI N est borne. Il vient immediatement que, pour le reseauassocie ∆(N ), le marquage de chacune des places P.,trans, Penabled,. et PnotEnabled,. est borne.Les seules places qui peuvent voir leur marquage croıtre indefiniment sont alors les places Pν,..

Si, dans le reseau N , aucune transition ne comporte l’infini comme date de tir au plustard, il est immediat que le marquage de chaque place Pν,. est borne.

Il nous reste a envisager les cas ou l’infini peut etre utilise comme date de tir au plustard au sein de N : nous proposons d’apporter une modification mineure a la traduction quenous avons introduite precedemment. Ce changement est fonde sur la constatation suivante :considerons une transition associee a un intervalle de tir avec une date au plus tard infinie([a,∞[) ; une fois que l’horloge associee a cette transition a atteint la valeur a, la connaissancede sa valeur precise n’est plus necessaire : on sait que la transition est tirable a tout momenta compter de cet instant et c’est la le point important.

Envisageons une transition ti dont l’intervalle de tir est [a,∞[. Nous designons par Ni

le reseau correspondant au motif traduit a partir de ti. Dans la traduction telle que nous

Page 80: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

74 Expressivite comparee de classes de reseaux de Petri

l’avons precedemment introduite (c’est-a-dire lorsque la date de tir au plus tard est finie),nous faisons figurer un arc inhibiteur entre Pν,i et τenabled,i, arc ayant pour poids b. Lorsquela date de tir au plus tard est infinie, nous remplacons le poids b par un poids egal a a. Nousajoutons egalement une transition τenabled,infinity,i qui permet d’effectuer globalement un tirde transitions d’ecoulement du temps, τ , dans l’ensemble du reseau, une fois que le marquagede Pν,i a atteint a : pour terminer cette construction, nous inserons un arc de poids a entrePν,i et τenabled,infinity,i et un autre arc de poids a entre τenabled,infinity,i et Pν,i.

Grace a cette abstraction, nous pouvons regrouper dans une unique classe d’equivalencetous les etats pour lesquels M(Pν,i) ∈ [a,∞[. Nous prouvons alors facilement que cette abs-traction preserve le comportement du reseau :N et ∆(N ) sont (faiblement) bisimilaires. Cetteconstruction garantit la bornitude de ∆(N ). �

Puisque, en temps discret, les rRdPTI bornes et les rRdPTI 1-saufs sont d’expressiviteequivalente en termes de bisimulation temporelle (cf. theoremes 5.3 et 5.5), le resultat peutetre etendu aux reseaux bornes.

Corollaire 5.7. A tout rRdPTI borne en temps discret N , on peut associer un RdP borneavec arcs de reset et hyperarcs inhibiteurs ∆(N ) tel que N et ∆(N ) sont (faiblement) bisi-milaires via une abstraction du temps.

Par definition des rRdPTI, nous avons le resultat suivant :

Theoreme 5.20. Les RdP avec arcs de reset et hyperarcs inhibiteurs constituent des casparticuliers des rRdPTI.

Il suit que :

Theoreme 5.21. Les rRdPTI bornes en temps discret et les RdP bornes avec arcs de resetet hyperarcs inhibiteurs sont d’expressivite equivalente en termes de bisimulation (faible) viaune abstraction du temps.

5.4.3 Synthese sur les equivalences en termes de bisimulation temporelleet d’acceptation de langage temporise

Maintenant que nous avons etabli des relations entre, d’une part, les reseaux de Petritemporels dotes d’une semantique en temps discret et les reseaux de Petri classiques et, d’autrepart, entre les reseaux de Petri a chronometres dotes d’une semantique de temps discret etles reseaux de Petri classiques, nous allons deduire les liens qui unissent plus directement cesmodeles.

5.4.3.1 Reseaux non necessairement bornes

Afin de maintenir les preuves des theoremes B.1 et C.1 relativement concises, nous avonschoisi de nous focaliser sur les RdPT et les rRdPTI 1-saufs : grace a cette hypothese, nousn’avons pas eu a prendre en compte les conflits qui peuvent potentiellement survenir entreles transitions. Un desavantage majeur de cette hypothese est que notre traduction n’estapparemment plus valable pour le reseaux non bornes. En fait, elle s’applique bien.

Neanmoins, nous devons introduire un nouveau motif (plus complique) pour traduire lesconflits : ce motifs est donne par la figure 5.17. Le probleme des transitions en conflit est

Page 81: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.4 Equivalence entre les SwPN en temps discret et les RdP 75

le suivant : si, par exemple, ti est tiree, tj peut rester sensibilisee ou etre desensibilisee, enfonction du nombre de jetons restant dans pb. Nous devons traduire ces differents compor-tements dans le reseau de Petri non temporise avec arcs de reset et hyperarcs inhibiteurscorrespondant :

– nous devons decomposer chaque transition ti et tj en deux transitions differentes, cor-respondant a ces differents cas. Par exemple, ti1 correspond au cas ou il restera assez dejetons dans pb apres le tir de ti pour sensibiliser continument tj ; au contraire, ti2 seratiree quand il ne restera pas assez de jetons dans pb pour sensibiliser tj apres le tir dema transition (dans ce cas, le sous-reseau non temporise associe a tj doit etre remis azero) ;

– tous les nouveaux arcs que nous devons ajouter a notre traduction pour prendre encompte les conflits sont representes a l’aide des arcs en pointilles.

Avec ce motif dedie a la traduction des transitions temporelles en conflit, nous sommesdesormais en mesure de prouver les theoremes suivants. Les preuves correspondantes sontomises puisqu’il s’agit de simples adaptations des demonstrations donnees auparavant pourles reseaux 1-saufs.

Il est important de noter que le theoreme 5.8 nous permet de considerer indistinctementdes RdP avec arcs de reset et hyperarcs inhibiteurs et des RdP avec hyperarcs inhibiteurs.De plus, les hyperarcs inhibiteurs peuvent s’exprimer a l’aide d’arcs inhibiteurs simples.

Theoreme 5.22. Les RdPT en temps discret et les RdP avec arcs inhibiteurs sont d’expres-sivite equivalente en termes de bisimulation (faible) via une abstraction du temps. Formelle-ment, nous avons : RdPT en temps discret =≈ta RdP avec arcs inhibiteurs.

Preuve. Grace a la traduction precedemment introduite, nous avons prouve qu’a tout RdPTen temps discret N , on peut associer un RdP avec arcs inhibiteurs ∆(N ) tels que N et ∆(N )sont bisimilaires (faiblement) via une abstraction du temps. L’assertion inverse est garantiepar le theoreme 5.15. Nous avons des lors le resultat attendu. �

Theoreme 5.23. Les rRdPTI en temps discret et les RdP avec arcs inhibiteurs sont d’ex-pressivite equivalente en termes de bisimulation (faible) via une abstraction du temps. For-mellement, nous avons : rRdPTI en temps discret =≈ta RdP avec arcs inhibiteurs.

Preuve. Grace a la traduction precedemment introduite, nous avons prouve qu’a tout rRdPTIen temps discret N , on peut associe un RdP avec arcs inhibiteurs ∆(N ) tels que N et ∆(N )sont bisimilaires (faiblement) via une abstraction du temps. L’assertion inverse est garantiepar le theoreme 5.20. Nous avons des lors le resultat attendu. �

5.4.3.2 Reseaux bornes

Nous avons le resultat suivant sur les reseaux de Petri bornes :

Theoreme 5.24. Les RdP bornes et les RdP bornes avec arcs de reset et hyperarcs inhibiteurssont d’expressivite equivalente en termes de bisimulation.

Preuve. Tout RdP avec arcs de reset et hyperarcs inhibiteurs est un systeme de transitionsfini. Similairement, tout systeme de transitions fini peut etre exprime sous la forme d’un

Page 82: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

76 Expressivite comparee de classes de reseaux de Petri

ti1

tstartClock,i

τenabled,ib

Pa,trans

w

PnotEnabled,i

w

Penabled,i

τnotEnabled,i Pv,i

ti

Pa

w

[a,b]

y

(a)

(b)

tj

Pb

v

[c,d]

tj2

tstartClock,j

τenabled,j

d

y

PnotEnabled,j

y

Penabled,j

τnotEnabled,jPv,j

Pb,trans

w

y

w

y

a a

ti2

w

tj1

cc

v

y

vv

vv + y

v + y

y

v + yv

v + y

y

w

Cas où le nb de jetonsdans Pb est supérieur ou égal à v + y (pasde remise à zéro du

motif)

Transition correspondant aucas où le motif en conflit doit être vidé, ie remis

à zéro.

En effet, le nombre dejetons dans Pb après le

tir de tj n'est plus suffisant,le tir de tj ayant désensibilisé ti

Cas où le nb de jetonsdans Pa est supérieur ou égal à v + y (pasde remise à zéro du

motif)

Transition correspondant aucas où le motif en conflit doit être vidé, ie remis

à zéro.

En effet, le nombre dejetons dans Pa après le

tir de ti n'est plus suffisant,le tir de ti ayant désensibilisé tj

Fig. 5.17 – Comment traduire le rRdPTI en temps discret, comportant des transitions enconflit, de la figure (a) en reseau de Petri non temporise avec arcs de reset et hyperarcsinhibiteurs (b)

Page 83: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.5 Bilan sur la classification des modeles 77

RdP 1-sauf [CKLY98], donc sous la forme d’un RdP borne avec arcs de reset et hyperarcsinhibiteurs. Il suit que les modeles consideres sont d’expressivite equivalente en termes debisimulation. �

Cela signifie que les arcs inhibiteurs et les arcs de reset n’ajoutent pas d’expressivite auxreseaux de Petri non temporises par rapport aux arcs simples.

Des theoremes 5.24, 5.17 et 5.21, nous deduisons les resultats suivants :

Theoreme 5.25. Les RdP bornes, les RdPT bornes en temps discret et les rRdPTI bornesen temps discret sont d’expressivite equivalente en termes de bisimulation (faible) via uneabstraction du temps. Formellement, nous avons : RdPT bornes en temps discret =≈ta RdPTavec arcs inhibiteurs bornes en temps discret.

Corollaire 5.8. Les RdP bornes, les RdPT bornes en temps discret et les rRdPTI bornes entemps discret sont d’expressivite equivalente en termes d’acceptation de langage non tempo-rise.

5.5 Bilan sur la classification des modeles

Nous allons recapituler l’ensemble des relations d’expressivite que nous avons exhibees surles modeles etudies au cours de cette these.

Commencons par rappeler que les hyperarcs inhibiteurs n’ajoutent pas d’expressivite aumodele par rapport a la combinaison des arcs simples et des arcs inhibiteurs.

Les resultats obtenus dans ce chapitre sont resumes par la figure 5.18.

Les nouveaux resultats induits par nos recherches sont les suivants :

1. Un reseau de Petri est evidemment un reseau de Petri avec arcs de reset, mais il existedes reseaux de Petri avec arcs de reset qui ne peuvent pas etre simule par un reseau dePetri classique (theoreme 5.6).

2. Un reseau de Petri temporel avec arcs de reset peut etre traduit en reseau de Petritemporel avec arcs inhibiteurs (theoreme 5.10). La relation opposee est fausse, commeen atteste le theoreme 5.12.

3. Les reseaux de Petri temporels avec arcs inhibiteurs et les reseaux de Petri tempo-rels avec arcs inhibiteurs et arcs de reset sont d’expressivite equivalente en termes debisimulation temporelle (faible) (theoreme 5.11).

4. Les reseaux de Petri avec arcs inhibiteurs et arcs de reset et les reseaux de Petri tempo-rels dotes d’une semantique de temps discret sont d’expressivite equivalente en termesde bisimulation temporelle (faible) (theoreme 5.22).

5. Les reseaux de Petri temporels dotes d’une semantique de temps discret et les reseauxde Petri temporels avec arcs inhibiteurs dotes d’une semantique de temps discret sontd’expressivite equivalente en termes de bisimulation temporelle (faible) (theoreme 5.23).

6. Pour des reseaux bornes, les reseaux de Petri classiques et les reseaux de Petri temporelsdotes d’une semantique de temps discret sont d’expressivite equivalente en termes debisimulation temporelle (faible) (theoreme 5.17).

Page 84: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

78 Expressivite comparee de classes de reseaux de Petri

RdP bornés

RdPT bornés

RdPT bornésavec arcs inhibiteurs

RdP

RdP avec arcs inhibiteurs et

de resetRdP avec

arcs inhibiteurs

RdP avec arcs de reset

RdPT avec arcs de reset

RdPT

RdPT avec arcs inhibiteurs

RdPT avec arcs inhibiteurs et arcs de reset

⊂⊂

=

⊆⊇

(2)

(1)

(5)

=

(3)

(6)

(7)

(4)

en temps dense et en temps discret

en temps discret seulement

Notation

=≈

ta

=≈

ta

=≈

ta

=≈

ta =≈ta

(4)

Fig. 5.18 – Classification complete des modeles : les lignes pleines representent des resultatscorrects aussi bien en temps dense qu’en temps discret ; a contrario, les lignes pointillesconcernent des resultats uniquement valables temps discret.

Page 85: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

5.6 Conclusion 79

7. Pour des reseaux contraints a etre bornes, les reseaux de Petri temporels dotes d’unesemantique de temps discret et les reseaux de Petri temporels avec arcs inhibiteursdotes d’une semantique de temps discret sont d’expressivite equivalente en termes debisimulation temporelle (faible) (theoreme 5.25).

Nous avons mis en evidence un certain nombre de relations complementaires que nousn’avons pas, pour des raisons de clarte, fait apparaıtre sur la figure 5.18. Il s’agit des relationssuivantes :

– Etant donne que les arcs de reset et les arcs inhibiteurs n’ajoutent pas d’expressivite auxreseaux de Petri classiques munis d’arcs simples, nous pouvons parler indistinctementde reseaux de Petri borne, de reseaux de Petri bornes avec arcs de reset et de reseauxde Petri bornes avec arcs inhibiteurs (theoreme 5.24).

– Etant donne que les arcs de reset n’ajoutent pas d’expressivite aux reseaux de Petritemporels bornes munis d’arcs simples, nous pouvons parler indistinctement de reseauxde Petri temporels bornes et de reseaux de Petri temporels bornes avec arcs de reset(theoreme 5.13).

– Etant donne que les arcs de reset n’ajoutent pas d’expressivite aux reseaux de Petritemporels bornes munis d’arcs simples et d’arcs inhibiteurs, nous pouvons parler indis-tinctement de reseaux de Petri temporels bornes avec arcs inhibiteurs et de reseaux dePetri temporels bornes avec arcs inhibiteurs et arcs de reset (theoreme 5.13).

– Les reseaux de Petri temporels 1-saufs et les reseaux de Petri temporels bornes (avecdes contraintes temporelles strictes et larges) sont d’expressivite equivalente en termesde bisimulation temporelle (faible) (theoreme 5.4).

– Les reseaux de Petri temporels 1-saufs avec arcs inhibiteurs et les reseaux de Petri tem-porels bornes avec arcs inhibiteurs (avec des contraintes temporelles strictes et larges)sont d’expressivite equivalente en termes de bisimulation temporelle (faible) (theoreme5.3).

5.6 Conclusion

Dans ce chapitre, nous avons etendu certains des resultats de [BCH+05b] d’une part auxreseaux de Petri temporels munis de contraintes strictes et, d’autre part, aux reseaux dePetri temporels a chronometres. Nous avons ainsi pu demontrer que les reseaux de Petria chronometres bornes et 1-saufs sont d’expressivite equivalente en termes de bisimulationtemporelle. Nous avons egalement rappele que les (hyper)arcs inhibiteurs n’accroissent pasl’expressivite des reseaux de Petri classiques bornes. Nous avons par ailleurs prouve queles arcs de reset n’accroissent pas l’expressivite des reseaux de Petri classiques, des reseauxde Petri temporels et des reseaux de Petri temporels a chronometres a condition que cesreseaux soient bornes. Ces nouveaux theoremes sont par ailleurs tres utiles pour simplifierdes demonstrations sur des reseaux de Petri bornes puisque, grace a ces resultats, il suffitd’etudier le cas des reseaux saufs.

Nous avons ainsi pu etablir de nouvelles conclusions a propos des reseaux de Petri achronometres. A commencer par le fait que les reseaux de Petri temporels bornes dotesd’une semantique de temps discret, les reseaux de Petri bornes a chronometres dotes d’unesemantique de temps discret et les reseaux de Petri classiques sont temporellement bisimi-laires. Nous nous sommes egalement penches sur le cas des reseaux dont le marquage peut etre

Page 86: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

80 Expressivite comparee de classes de reseaux de Petri

infini : nous avons montre que les reseaux de Petri temporels dotes d’une semantique tempsdiscret, les reseaux de Petri a chronometres dotes d’une semantique de temps discret et lesreseaux de Petri avec hyperarcs inhibiteurs et arcs de reset sont d’expressivite equivalente entermes de bisimulation.

La demarche suivie pour mettre en exergue ces relations – exhiber une traduction syn-taxique d’un modele vers un autre – va nous permettre, dans le chapitre suivant, d’obtenirde nouveaux resultats de decidabilite sur les modeles que nous etudions.

Page 87: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Chapitre 6

Resultats de decidabilite pour laplupart des problemes deverification formelle sur les reseauxde Petri temporels et les reseaux dePetri a chronometres

ResumeSur des modeles dotes d’une semantique de temps dense, le probleme de l’accessibilite d’etat

ou de marquage - decidable pour les reseaux de Petri temporels bornes - est indecidable pourdes reseaux a chronometres, meme bornes. A contrario, nous montrons que ce probleme estdecidable lorsque les reseaux a chronometres bornes consideres sont munis d’une semantiquede temps discret. Nous resumons l’ensemble des resultats obtenus en matiere de decidabilitedans le tableau 6.2.

Page 88: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

82 Decidabilite pour les problemes de verification sur les SwPN

Sommaire

6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 836.1.1 Reseaux de Petri non temporises . . . . . . . . . . . . . . . . . . . . 836.1.2 Reseaux de Petri temporels . . . . . . . . . . . . . . . . . . . . . . . 836.1.3 Reseaux de Petri a chronometres . . . . . . . . . . . . . . . . . . . . 83

6.2 Resultats de decidabilite sur les reseaux non-bornes . . . . . . . 846.3 Resultats de decidabilite sur les reseaux bornes . . . . . . . . . . 856.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

Page 89: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

6.1 Introduction 83

6.1 Introduction

6.1.1 Reseaux de Petri non temporises

Le probleme de l’accessibilite de marquage est decidable sur les reseaux de Petri classiques,comme cela a ete prouve par Kosaraju [Kos82] et Mayr [May84].

Les reseaux de Petri avec au moins deux arcs inhibiteurs (ou « tests a zero ») ont l’ex-pressivite d’une machine de Turing. De fait, toutes les proprietes interessantes (telles quel’accessibilite, la bornitude, la vivacite, etc.) sont indecidables [Hac76]. Toutefois, dans le casdes reseaux de Petri avec un unique arc inhibiteur, le probleme de l’accessibilite est decidable[Rei96].

Les principaux resultats sur les reseaux de Petri enrichis avec des arcs de reset ont eteresumes dans [DFS98]. Nous en retiendrons notamment que les problemes de l’accessibiliteet de la bornitude sont indecidables. Comme nous l’avons precise dans le chapitre precedent,les seules etudes portant sur les arcs de reset concernent des reseaux non temporises. Danscette partie, nous allons prouver des resultats sur les modeles enrichis d’arcs de reset dans lecas ou les reseaux sont temporises.

6.1.2 Reseaux de Petri temporels

Sur les reseaux de Petri temporel, l’accessibilite d’etats et de marquage est indecidableen temps dense [JLL77]. La machine a deux compteurs exhibee pour prouver ce resultatreste correcte lorsqu’on envisage une semantique de temps discret. Cela permet de prouver letheoreme suivant :

Theoreme 6.1. L’accessibilite d’etat et l’accessibilite de marquage sont indecidables pour lesreseaux de Petri temporels dotes d’une semantique de temps discret.

En temps dense, ces problemes deviennent decidables lorsqu’on considere des reseauxbornes. D’ou :

Theoreme 6.2. L’accessibilite d’etat et l’accessibilite de marquage sont decidables pour lesreseaux de Petri temporels bornes dotes d’une semantique de temps discret.

Il suit immediatement que :

Theoreme 6.3. La bornitude, la k-bornitude et la vivacite sont des problemes decidables pourles reseaux de Petri temporels bornes dotes d’une semantique de temps discret.

6.1.3 Reseaux de Petri a chronometres

Dans le cas general des reseaux de Petri a chronometres (en temps dense et en tempsdiscret), l’accessibilite d’etat et l’accessibilite de marquage sont bien entendus indecidables (lesreseaux de Petri temporels constituant un cas particulier des reseaux de Petri a chronometres).Par contre, ces problemes ne deviennent pas decidables lorsqu’on se restreint a la sous-classedes reseaux bornes. Dans [Lim04, BLRV07], le theoreme suivant a ete etabli :

Theoreme 6.4. L’accessibilite de marquage, l’accessibilite d’etat, la bornitude et la vivacitesont des problemes indecidables sur les reseaux de Petri temporels a chronometres (en tempsdense et en temps discret). En temps dense, l’accessibilite de marquage, l’accessibilite d’etat,

Page 90: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

84 Decidabilite pour les problemes de verification sur les SwPN

RdPT RdPT a chronometresTemps dense Temps discret Temps dense Temps discret

Cas general Bornes Cas general Bornes Cas general Bornes Cas general BornesBornitude I [JLL77] D [BM83] ? D (thm 6.3) I [RL04] I [BLRV07] ? ?k-bornitude I [JLL77] D [BM83] D (thm 6.3) D (thm 6.3) I [RL04] I [BLRV07] ? ?Vivacite I [JLL77] D [BM83] ? D (thm 6.3) I [RL04] I [BLRV07] ? ?Accessibilite de marquage I [JLL77] D [BM83] ? D (thm 6.3) I [RL04] I [BLRV07] ? ?Accessibilite d’etat I [JLL77] D [BM83] ? D (thm 6.3) I [RL04] I [BLRV07] ? ?

Tab. 6.1 – Resume des resultats de decidabilite pour les reseaux de Petri temporels et lesreseaux de Petri temporels a chronometres (I signifie que le probleme est indecidable, D qu’ilest decidable)

la vivacite et la k-bornitude sont des problemes qui restent indecidables, meme quand lesreseaux de Petri a chronometres sont bornes.

L’une des questions a laquelle nous repondrons dans ce chapitre est de savoir justementsi ces problemes sont decidables ou non pour les reseaux de Petri a chronometres en tempsdiscret.

Les principaux resultats de decidabilites connus sur ces modeles sont resumes dans letableau 6.1. Le signe ? symbolise des problemes qui, jusque la, restaient ouverts. En conclusionde ce chapitre, nous reprendrons ce tableau en faisant apparaıtre les nouveaux resultats quenous allons introduire (les resultats sont ainsi synthetises sur le tableau 6.2).

6.2 Resultats de decidabilite sur les reseaux non-bornes

L’indecidabilite du probleme de l’accessibilite de marquage pour les reseaux de Petri tem-porels dotes d’une semantique de temps discret (cf. theoreme 6.1) peut egalement etre obtenuecomme corollaire du theoreme 5.22. En effet, ce dernier etablit que les reseaux de Petri tempo-rels en temps discret et les reseaux de Petri classiques avec arcs inhibiteurs sont d’expressiviteequivalente en termes de bisimulation. L’accessibilite de marquage etant indecidable sur lesreseaux de Petri avec arcs inhibiteurs, [JLL77], il vient que ce probleme est aussi indecidablepour les reseaux de Petri temporels en temps discret.

En suivant une demarche similaire, nous prouvons les resultats suivants :

Theoreme 6.5. L’accessibilite d’etat, la bornitude et la vivacite sont des problemes indecidablessur les reseaux de Petri temporels dotes d’une semantique de temps discret.

Theoreme 6.6. L’accessibilite de marquage est indecidable sur les reseaux de Petri temporelsa chronometres dotes d’une semantique de temps discret.

Preuve. La classe des reseaux de Petri avec arcs inhibiteurs est une sous-classe stricte desreseaux de Petri temporels a chronometres en temps discret. Or le probleme de l’accessibi-lite de marquage est indecidable sur les reseaux de Petri avec arcs inhibiteurs [JLL77]. Parconsequent, le probleme de l’accessibilite de marquage est indecidable pour les reseaux dePetri temporels a chronometres en temps discret. �

Du theoreme 6.4, on deduit alors que :

Theoreme 6.7. L’accessibilite d’etats, la bornitude et la vivacite sont des problemes indecidablessur les reseaux de Petri a chronometres dotes d’une semantique de temps discret.

Page 91: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

6.3 Resultats de decidabilite sur les reseaux bornes 85

6.3 Resultats de decidabilite sur les reseaux bornes

Nous nous proposons maintenant d’etendre le resultat du theoreme 6.2 a la classe desreseaux de Petri bornes a chronometres en temps discret :

Theoreme 6.8. L’accessibilite d’etat est decidable pour les reseaux de Petri bornes a chro-nometres dotes d’une semantique de temps discret.

Preuve. Si le reseau ne contient aucune transition pour laquelle la date de tir au plus tardest l’infini, alors tous les chronometres sont bornes. Par consequent, le nombre des etats estbornes. Il est donc immediat que l’algorithme de calcul en avant de l’espace d’etats est exactet termine.

Nous allons desormais traiter le cas general, lorsque l’infini peut apparaıtre dans les inter-valles de tir des transitions. Pour ce faire, nous proposons une methode permettant de verifiersi un etat donne est accessible dans un tel reseau.

Considerons une transition t pour laquelle l’intervalle de tir n’est pas borne ([a,∞[). Notreapproche repose sur le fait qu’une fois que le chronometre associe a atteint la valeur a, le calculde sa valeur precise n’est plus necessaire. En effet, on sait des lors que la transition t est tirablea n’importe quel moment.

Nous allons reprendre les motifs de traduction proposes dans le chapitre precedent. Consideronsune transition ti dont l’intervalle de tir est [a,∞[ et son reseau« traduit » Ni. Nous souhaitonsverifier si une configuration donnee (Mgiven, νgiven) peut etre atteinte au cours de l’executionglobale du reseau. La condition sur le chronometre associe a ti s’exprime sous la forme θi = k,k ∈ N. Nous avons vu que, lorsque la date de tir au plus tard est finie (intervalle de tir [a, b]),nous faisons apparaıtre, dans Ni, un arc inhibiteur entre pν,i et τenabled,i de poids b. Dans lecas present, pour une transition avec une date de tir au plus tard infinie, nous remplaconsce poids de b par le poids max(a, k). Nous ajoutons egalement une transition τenabled,infinity,i

qui permet, une fois que le marquage de pν,i est superieur ou egal a a, de tirer globalement τdans le reseau general : nous inserons un arc de poids max(a, k) entre pν,i et τenabled,infinity,i

et un autre arc de poids max(a, k) entre τenabled,infinity,i et pν,i.

Grace a cette abstraction, nous regroupons en une seule classe d’equivalence tous les etatspour lesquels M(pν,i) ∈ [max(a, k),∞[. Un algorithme d’analyse en avant base sur cetteabstraction des etats est des lors exact en termes d’accessibilite d’etat pour les reseaux dePetri bornes a chronometres en temps discret. �

Nous deduisons les theoremes suivants par l’intermediaire du schema de cette preuve :

Theoreme 6.9. L’accessibilite de marquage, la vivacite et la k-bornitude sont des problemesdecidables pour les reseaux de Petri bornes a chronometres dotes d’une semantique de tempsdiscret.

Theoreme 6.10. Le graphe des etats d’un reseau de Petri borne a chronometres en tempsdiscret, calcule avec un algorithme en avant et convergeant par egalite, preserve les proprietesLTL.

Theoreme 6.11. Dans le cas des reseaux de Petri bornes a chronometres en temps discret,un algorithme d’analyse en avant calcule l’espace d’etats exact du reseau et preserve sesproprietes de branchement temporel.

Page 92: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

86 Decidabilite pour les problemes de verification sur les SwPN

RdPT RdPT a chronometresTemps dense Temps discret Temps dense Temps discret

Cas general Bornes Cas general Bornes Cas general Bornes Cas general BornesBornitude I [JLL77] D [BM83] I (thm 6.5) D (thm 6.3) I [RL04] I [BLRV07] I (thm 6.7) D (thm 6.9)k-bornitude I [JLL77] D [BM83] D (thm 6.3) D (thm 6.3) I [RL04] I [BLRV07] D (thm 6.9) D (thm 6.9)Vivacite I [JLL77] D [BM83] I (thm 6.5) D (thm 6.3) I [RL04] I [BLRV07] I (thm 6.7) D (thm 6.9)Accessibilite de marquage I [JLL77] D [BM83] I (thm 6.5) D (thm 6.3) I [RL04] I [BLRV07] I (thm 6.7) D (thm 6.9)Accessibilite d’etat I [JLL77] D [BM83] I (thm 6.5) D (thm 6.3) I [RL04] I [BLRV07] I (thm 6.7) D (thm 6.8)

Tab. 6.2 – Resume des resultats de decidabilite pour les reseaux de Petri temporels et lesreseaux de Petri temporels a chronometres (I signifie que le probleme est indecidable, D qu’ilest decidable)

6.4 Conclusion

Dans ce chapitre, nous avons rappele les principaux resultats de decidabilite (pour lesproblemes d’accessibilite, de bornitude ou de vivacite) sur les extensions temporelles desreseaux de Petri en temps dense. Nous avons ensuite etudie dans quelle mesure ces resultatss’etendaient ou non a des reseaux dotes d’une semantique de temps discret. Nous sommesnotamment parvenus a prouver que les problemes d’accessibilite d’etat, d’accessibilite demarquage, de k-bornitude et de vivacite - indecidables en temps dense sur des reseaux dePetri a chronometres, meme bornes - sont decidables pour ces memes reseaux mais dotesd’une semantique de temps discret. Il s’agit la d’un des avantages majeurs de l’approche entemps discret : nous sommes en effet capables de calculer une abstraction finie de l’espaced’etats associe !

Pour finir, nous synthetisons, dans le tableau 6.2, les differents resultats de decidabilitepour les principaux problemes de verification formelle appliques aux extensions temporellesdes reseaux de Petri, en temps dense et en temps discret.

Page 93: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Chapitre 7

Calcul de l’espace d’etats desextensions temporelles des reseauxde Petri

ResumeLes techniques de verification par model-checking (accessibilite, vivacite, logiques tempo-

relles) reposent sur le calcul et l’exploration de l’espace d’etats du modele. L’espace d’etatsd’un reseau de Petri temporel borne etant infini, l’idee est de regrouper des etats caracterisespar une meme propriete. Il est donc necessaire de recourir a une methode symbolique afinde calculer une abstraction finie de cet espace d’etats. Nous allons presenter ici la demarchela plus repandue sur les reseaux de Petri temporels et les reseaux de Petri a chronometresen temps dense, i.e. l’approche dite du « graphe des classes d’etats ». Nous en proposons no-tamment une amelioration. A contrario, en temps discret, les methodes envisagees jusqu’alorsdans la litterature etaient relativement basiques, justifiant ainsi le travail que nous detailleronsdans les deux chapitres suivants.

Nos travaux sur le calcul de l’espace d’etats des reseaux de Petri a chronometres entemps dense ont ete publies dans la troisieme edition de la conference internationale SoftMC(Workshop on Software Model-Checking) en 2005 [MLR05].

Page 94: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

88 Calcul de l’espace d’etats

Sommaire

7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 897.2 Determination de l’espace d’etats des reseaux de Petri temporels 89

7.2.1 Methode du graphe des classes d’etats pour les reseaux de Petri tem-porels en temps dense . . . . . . . . . . . . . . . . . . . . . . . . . . 89

7.2.2 Calcul de l’espace d’etats d’un reseau de Petri temporel borne entemps discret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

7.2.3 Liens entre l’espace d’etats d’un reseau de Petri temporel borne entemps dense et l’espace d’etats du reseau associe en temps discret . 94

7.3 Determination de l’espace d’etats des reseaux de Petri a chro-nometres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

7.3.1 Calcul de l’espace d’etats d’un reseau de Petri a chronometres borneen temps dense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

7.3.2 Calcul de l’espace d’etats d’un reseau de Petri a chronometres borneen temps discret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

7.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

Page 95: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

7.1 Introduction 89

7.1 Introduction

Les algorithmes de verification formelle necessitent le calcul de l’espace d’etats du modeleconcerne. L’espace d’etats d’un reseau de Petri temporel etant potentiellement infini, il estnecessaire de recourir a des abstractions appropriees. Dans le cas des reseaux de Petri tem-porels munis d’une semantique de temps dense, plusieurs abstractions de l’espace d’etats ontvu le jour : le graphe des classes d’etats (State Class Graph : SCG) [BD91], le graphe desregions geometriques (Geometric Region Graph : GRG) [YR98], le graphe des classes d’etatslineaires fortes (Strong State Class Graph : SSCG) [BV03], le graphe des zones (Zone Ba-sed Graph : ZBG) [GRR03, GRR06] et le graphe des classes atomiques (Atomic State ClassGraphs : ASCGs) [YR98, BV03, BH04]. Les deux approches les plus courantes sont cellesdu « graphe des classes d’etats » et du « graphe des zones ». Dans cette derniere, un etatsymbolique represente les valuations reelles des horloges du reseau de Petri temporel. Il estainsi possible de verifier directement des proprietes temporelles quantitatives. Cette approchesouffre neanmoins d’un inconvenient majeur : elle exige de recourir a des approximations (k-approximation ou kx-approximation [Gar05]) dans le cas ou certaines transitions du reseauont des bornes temporelles superieures infinies. C’est pourquoi nous lui preferons la methodedu graphe des classes d’etats qui presente, de plus, l’avantage d’avoir ete etendue au cas desreseaux de Petri a chronometres en temps dense [BLRV07].

7.2 Determination de l’espace d’etats des reseaux de Petritemporels

7.2.1 Methode du graphe des classes d’etats pour les reseaux de Petritemporels en temps dense

Berthomieu et Diaz ont propose, pour un reseau de Petri temporel borne, une methodepermettant de calculer l’espace d’etats comme un ensemble fini de classes d’etats [BM83,BD91]. Une classe d’etats regroupe tous les etats atteints par une meme sequence de tir faisabledu reseau. En particulier, tous les etats d’une meme classe ont donc le meme marquage.

Definition 7.1 (Classe d’etats). Une classe d’etats C d’un reseau de Petri temporel estun couple (M,D) ou M est un marquage et D un polyedre convexe de (R+)T appele domainede tir. Le domaine de tir est caracterise par les equations :{

ai ≤ θi ≤ bi ∀ti ∈ enabled (M)−γkj ≤ θj − θk ≤ γjk ∀tk, tj ∈ enabled (M) , tk 6= tj

La variable θi represente la date de tir de la transition ti relativement a l’instant d’entreedans la classe.

Une transition est dite franchissable pour une classe C si elle l’est pour un etat de C.

Remarque. La definition d’un domaine de tir est compatible avec la definition de DBMpresentee dans le chapitre 2. Il est par consequent possible de realiser une implementationefficace (test d’egalite, d’inclusion, . . .) du calcul du graphe des classes d’etats. Celle-ci a eteintegree a l’atelier logiciel Romeo (cf. chapitre 10) par Didier Lime au cours de sa these[Lim04].

Page 96: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

90 Calcul de l’espace d’etats

Pour calculer l’espace d’etats d’un reseau, il faut etre capable de calculer les etats ac-cessibles par franchissement de transitions. Mais avant de donner l’algorithme permettantd’obtenir le successeur d’une classe d’etats, nous definissons ce que nous entendons par tran-sition tirable depuis une classe d’etats.

Definition 7.2 (Transition tirable depuis une classe d’etats). Soit une classe d’etatsC = (M,D). Une transition ti est dite tirable depuis C si ti est sensibilisee par M et il existeune solution (θ∗1, . . . , θ

∗n) de D telle que ∀j ∈[[1, n]]

{i}, θ∗i ≤ θ∗j .

Autrement dit, il existe un etat (de la semantique du reseau) s contenu dans la classe C telque t est tirable dans s.

Definition 7.3 (Successeur d’une classe d’etats). Soit une classe d’etat C = (M,D) etune transition tirable tf depuis C. La classe C ′ = (M ′, D′), successeur de C par le tir dela transition tf , notee succdense(M,D, tf ) (ou succdense(C, tf )), est obtenue de la manieresuivante :

– Le nouveau marquage est calcule de facon classique par M ′ = M −• tf + t•f– Le nouveau domaine de tir, D′, est calcule selon les etapes suivantes. Nous le noteronsnextdense(D, tf ) :

1. Effectuer les changements de variables : ∀i 6= j, θi ← θf + θ′i.

2. Ajouter les contraintes θ′j ≥ 0 ∀j 6= f .

3. Eliminer les variables θi correspondant a des transitions desensibilisees par le tirde tf (en utilisant par exemple la methode de Fourier-Motzkin).

4. Ajouter les contraintes relatives aux transitions nouvellement sensibilisees par letir de tf :

∀tk ∈↑enabled (M, tf ) , ak ≤ θ′k ≤ bk

5. Calculer la forme canonique du nouveau domaine de tir.

Remarque. Les changements de variables de l’etape 1. permettent de prendre pour originedes temps l’instant ou la transition tf est franchie. Ainsi, etant donnee une classe d’etatsquelconque, il n’est pas possible de deduire les valuations reelles des horloges des transitionssensibilisees a moins de connaıtre la trace generant cette classe d’etats. C’est une des rai-sons pour lesquelles une utilisation directe du graphe des classes pour realiser une analysequantitative n’est pas possible.

Remarque. Les contraintes θ′i ≥ 0 peuvent egalement etre ecrites θi ≥ θf , ce qui exprimele fait que nous avons choisi de tirer tf , i.e. toutes les autres transitions sensibilisees seronttirees plus tard.

Le graphe des classes est calcule par application successive de la fonction de calcul dessuccesseurs a partir de la classe d’etats initiale C0 = (M0, D0) avec D0 = {ak ≤ θk ≤ bk | tk ∈enabled (M0)}. La convergence est assuree en memorisant les classes d’etats generees et enarretant l’analyse des successeurs d’une classe si celle-ci a deja ete precedemment analysee.

Nous obtenons alors le systeme de transitions potentiellement infini Γ′(T ) = (C, C0,→)ou

Page 97: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

7.2 Determination de l’espace d’etats des reseaux de Petri temporels 91

– C = NP × RT ;– C0 = (M0, D0), ou M0 est le marquage initial du reseau et D0 = {a(ti) ≤ θi ≤ b(ti)| ti ∈enabled(M0)} ;

– →∈ C× T ×C est la relation de transition definie par :

(M,D) t→ (M ′, D′) ssi

M ′ = M −• t+ t•,t est tirable depuis (M,D),D′ = nextdense(D, t).

Comme nous l’avons dit, ce systeme de transitions est potentiellement infini car il n’y a apriori aucune raison pour que l’on finisse toujours par atteindre des classes sans successeur.Nous allons donc definir un critere de convergence sous la forme d’une relation d’equivalenceentre les classes :

Definition 7.4 (Egalite de classes d’etats). Deux classes d’etats C = (M,D) et C ′ =(M ′, D′) d’un reseau de Petri temporel sont dites egales si M = M ′ et [[D ]]=[[D′ ]]. Nousnotons C ≡ C ′.

En pratique, l’egalite est testee sur les formes canoniques des domaines de tir.Nous pouvons alors definir le graphe des classes Γ(N ) d’un reseau de Petri temporel

comme le quotient de Γ′(N ) par la relation d’egalite : Γ(T ) = Γ′(N )/ ≡.

Algorithme 7.1 Algorithme de calcul du graphe des classes d’etatsV isited← ∅Waiting ← {(M0, D0)}tant que Waiting 6= ∅ faire

(M,D)← pop(Waiting)pour tout t ∈ firable (M,D) faire

si succdense(M,D, t) /∈ V isited ∪Waiting alorsWaiting ← {succdense(M,D, t)}

fin sifin pourV isited← V isited ∪ {(M,D)}

fin tant que

Theoreme 7.1 ([BM83, BD91]). Le nombre de classes du graphe des classes d’etats d’unreseau de Petri temporel N est fini si et seulement si N est borne.

Le caractere borne d’un reseau de Petri temporel etant indecidable, le probleme de savoirsi le nombre de classes d’etats d’un reseau est fini l’est lui aussi. Nous ne disposons que deconditions suffisantes de bornitude (par exemple, bornitude du reseau sous-jacent et bornes detir rationnelles). Celles-ci presentent l’inconvenient d’etre generalement tres restrictives. Desconditions necessaires de non-bornitude ont egalement ete proposees dans [BD91] en tant quetests lors du calcul du graphe des classes, mais ces tests ont pour consequence d’augmenterla complexite du calcul du graphe des classes.

Exemple 7.1. La figure 7.1 presente le graphe des classes du reseau de la figure 3.1. Nous avonsannote le graphe avec les marquages des differentes classes ainsi que les domaines de tir de ses classes.

Page 98: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

92 Calcul de l’espace d’etats

Fig. 7.1 – Un exemple de graphe des classes : le graphe des classes du reseau de Petri temporelde la figure 3.1

Le graphe des classes permet d’obtenir l’ensemble des marquages accessibles d’un reseaude Petri temporel borne. Il preserve le langage non temporise du reseau. Il permet ainsi deverifier des proprietes de logique temporelle lineaire (Linear Temporal Logic - LTL) [Pnu77],c’est-a-dire des proprietes sur les executions d’un reseau de Petri temporel.

Cependant, le graphe des classes ne preserve pas les proprietes de branchement commeCTL (Computation Tree Logic) [Pnu77]. En effet, lorsque la classe C ′ est le successeur de laclasse C par la transition t, cela signifie qu’il existe au moins un etat de C qui possede unsuccesseur par t dans C ′ ; mais cela n’implique pas forcement que tous les etats de C ont unsuccesseur par t dans C ′. Pour remedier a cela, il est necessaire de considerer des raffinementdu graphe des classes d’etats, comme celui propose par Berthomieu et al. en graphe des classesd’etats atomiques [BV03].

Ces constructions plus fines ne permettent pas pour autant de verifier des proprietes tem-porelles quantitatives de type TCTL (Timed Computation Tree Logic) car elles ne fournissentpas d’information quantitative sur les instants auxquels les tirs de transition se sont produits.

Exemple 7.2. Considerons le reseau de Petri temporel de la figure 7.2 (qui ne differe du reseau de lafigure 3.1 que par l’intervalle associe a t4) et son graphe des classes (figure 7.3). Si nous franchissonsla transition t2 a l’instant 0 alors la prochaine transition qui pourra etre franchie sera necessairementt3 suivie de t4. En effet, les deux intervalles de tir de ces transitions sont disjoints. Par contre, si t2est franchie a l’instant 1 la transition t4 peut etre franchie avant t3. Ainsi, suivant la date d’arriveedans la classe C1, l’evolution du reseau est modifiee. Cependant, cette information n’apparaıt pas dansle graphe des classes : dans C1, aucune information ne nous permet de determiner quelle transitionfranchir.

Page 99: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

7.2 Determination de l’espace d’etats des reseaux de Petri temporels 93

P1

t1 [5,6]

P2

t2 [0,1]

P4

t4 [3,4]

P3

t3 [1,2]

Fig. 7.2 – Un deuxieme exemple de reseau de Petri temporel

Fig. 7.3 – Graphe des classes du reseau de la figure 7.2

Page 100: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

94 Calcul de l’espace d’etats

7.2.2 Calcul de l’espace d’etats d’un reseau de Petri temporel borne entemps discret

Etant donne que l’espace d’etats d’un reseau de Petri temporel en temps discret est ins-crit dans l’espace d’etats du reseau associe en temps dense et que l’accessibilite d’etats estdecidable pour les reseaux de Petri temporels bornes, peu de travaux se sont focalises sur lesreseaux en temps discret. Les recherches se sont surtout portees sur les ameliorations possiblesqui pouvaient etre apportees aux methodes de calcul de l’espace d’etats en temps dense. Defait, le calcul de l’espace d’etats d’un reseau de Petri temporel borne en temps discret consisteen un calcul en avant des successeurs de chaque etat, en partant de l’etat initial (correspon-dant a l’association du marquage initial et des horloges des transitions sensibilisees mises azero). Cet espace d’etats peut bien entendu etre infini (si l’infini apparaıt comme date de tirau plus tard de certaines transitions) et la methode souffre de l’explosion combinatoire dunombre des etats. Un des enjeux de notre travail est de proposer une methode permettant depallier ces deux importantes faiblesses.

7.2.3 Liens entre l’espace d’etats d’un reseau de Petri temporel borne entemps dense et l’espace d’etats du reseau associe en temps discret

Dans [Pop91a], Popova a propose une methode d’analyse des reseaux de Petri temporelsqui differe du traditionnel graphe des classes de Berthomieu, Diaz et Menasche [BM83, BD91].Les deux methodes reposent sur le calcul d’un graphe d’accessibilite. Mais la ou Berthomieu etal. manipulent des classes qui representent une infinite d’etats, Popova se contente de raisonnersur un etat. Elle definit un etat comme la conjonction d’un marquage et d’un vecteur temporelassociant, pour chacune des transitions sensibilisees, la valeur de l’horloge correspondante et,pour les transitions desensibilisees, une valeur absorbante fixee. Des lors, elle construit ungraphe d’accessibilite base uniquement sur ce qu’elle nomme des etats « entiers » : il s’agit lad’etats dans lesquels les valeurs de toutes les horloges associees a des transitions sensibiliseessont entieres. Elle a montre que la connaissance du comportement du reseau dans ces etatsentiers suffit a determiner le comportement global du reseau. Ce resultat, d’abord introduitsur les reseaux de Petri temporels aux dates de tir au plus tard finies, a ete etendu au cas dedates de tir au plus tard infinies dans [PZ96].

Poursuivant ces travaux, Popova et al. ont presente, dans [PZS99], une description pa-rametrique d’une sequence de transitions d’un reseau de Petri temporel, basee sur cette notiond’etats entiers.

Ramenes dans le contexte d’une comparaison entre temps dense et temps discret, lesresultats de Popova etablissent l’assertion suivante : pour etudier le comportement d’un reseaude Petri temporel en temps dense, il suffit d’en faire une analyse en temps discret. Nousetudierons la reciproque d’une telle assertion dans le chapitre 9.

Page 101: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

7.3 Determination de l’espace d’etats des reseaux de Petri a chronometres 95

7.3 Determination de l’espace d’etats des reseaux de Petri achronometres

7.3.1 Calcul de l’espace d’etats d’un reseau de Petri a chronometres borneen temps dense

Comme dans le cas des reseaux de Petri temporels, l’espace d’etats d’un reseau de Petria chronometres en temps dense est infini. De fait, son calcul necessite de recourir a desabstractions de l’espace d’etats. Cependant, etant donne que l’accessibilite est indecidablepour les reseaux a chronometres, meme bornes, il n’existe pas necessairement d’abstractionfinie de leur espace d’etats. Il n’est donc possible de formuler qu’un semi-algorithme de calculd’une abstraction exacte de l’espace. Dans [BLRV07], les auteurs ont propose une extensionde la methode basee sur les classes d’etats de Berthomieu et al. [BM83, BD91].

7.3.1.1 Extension de la methode du graphe des classes d’etats pour les reseauxde Petri a chronometres en temps dense

La definition des classes d’etats ne change pas par rapport a celle donnee pour les reseauxde Petri temporels dans [BM83, BD91] : une classe d’etats contient l’ensemble des etats dureseau entre le tir de deux transitions consecutives. Toutefois la forme generale des domainesde tirs est, elle, differente.

Theoreme 7.2. Une classe d’etats C d’un reseau de Petri temporel a chronometres en tempsdense est un couple (M,D) ou M est un marquage du reseau et D un ensemble d’inequations.Le domaine D se presente sous la forme generale d’un polyedre (convexe) contraint par mconditions (m ∈ N) impliquant jusqu’a n variables, n etant le nombre de transitions sensibi-lisees par le marquage de la classe :

Aθ ≤ B

ou A et B sont des matrices rationnelles de dimension respective (m,n) et (m, 1), et θ est unvecteur de dimension n.

Dans un reseau de Petri temporel a chronometres, seules les transitions sensibilisees quine sont pas inhibees sont potentiellement tirables. Cela se traduit par la definition suivante :

Definition 7.5 (Transition tirable depuis une classe). Soit C = (M,D) une classed’etats d’un reseau de Petri temporel a chronometres. Une transition ti est dite tirable depuisC si il existe une solution (θ∗0, . . . , θ

∗n−1) de D, telle que ∀j ∈ {0, . . . , n− 1} − {i}, t.q. tj est

sensibilisee et non inhibee, θ∗i ≤ θ∗j .

Definition 7.6 (Successeur d’une classe d’etats). Soit une classe C = (M,D) d’unrRdPTI et une transition tirable tf . La classe C ′ = (M ′, D′), successeur de C par le tirde la transition tf notee succdense(M,D, tf ) (ou succdense(C, tf )), est obtenue de la manieresuivante :

– Le nouveau marquage est calcule de facon classique par M ′ = M−max(�tf×M t,•tf )+t•f– Le nouveau domaine de tir, D′, est calcule selon les etapes suivantes. Nous le noteronsnextdense(D, tf )

1. Effectuer les changements de variables pour toutes les transitions actives ti : θi ←θf + θ′i,

Page 102: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

96 Calcul de l’espace d’etats

2. Ajouter les contraintes ∀i 6= 0, θ′i ≥ 0,

3. Eliminer les variables correspondant a des transitions desensibilisees par le tir detf ,

4. Ajouter les contraintes relatives aux transitions nouvellement sensibilisees par letir de tf :

∀tk ∈↑ enabled(M, tf ), a(tk) ≤ θ′k ≤ b(tk).

5. Calculer la forme canonique du nouveau domaine de tir.

Remarque. Dans le cas des reseaux a chronometres, les changements de variables ne sonteffectues que pour les variables correspondant a des transitions actives. Ce sont en effet lesseules pour lesquelles le temps s’ecoule. Notons enfin qu’en toute rigueur, les contraintes θ′i ≥ 0ne sont requises que pour les transitions actives ti.

Ces quelques differences par rapport au calcul mene dans le cas des reseaux de Petritemporels classiques induisent des modifications assez importantes lors du calcul de l’espaced’etats. Elles se manifestent par l’apparition de domaines de tirs qui ne peuvent pas etrerepresentes par des DBM et qui necessitent le recours a des polyedres convexe de formegenerale.

Le graphe des classes est calcule par application successive de la fonction de calcul dessuccesseurs a partir de la classe d’etats initiale C0 = (M0, D0) avec D0 = {αk ≤ θk ≤ βk | tk ∈enabled (M0)}. La convergence est assuree en memorisant les classes d’etats generees et enarretant l’analyse des successeurs d’une classe si celle-ci a deja ete precedemment analysee.

Nous obtenons alors le systeme de transitions potentiellement infini Γ′(T ) = (C, C0,→)ou

– C = NP × RT ;– C0 = (M0, D0), ou M0 est le marquage initial du reseau et D0 = {α(ti) ≤ θi ≤ β(ti)| ti ∈enabled(M0)} ;

– →∈ C× T ×C est la relation de transition definie par :

(M,D) t→ (M ′, D′) ssi

M −max(�t×M t,•t) + t•,t est tirable depuis (M,D),D′ = nextdense(D, t).

Comme nous l’avons dit, ce systeme de transitions est potentiellement infini car il n’y a apriori aucune raison pour que l’on finisse toujours par atteindre des classes sans successeur.Nous allons donc definir un critere de convergence sous la forme d’une relation d’equivalenceentre les classes :

Definition 7.7 (Egalite de classes d’etats). Deux classes d’etats C = (M,D) et C ′ =(M ′, D′) d’un reseau de Petri temporel a chronometres sont dites egales si M = M ′ et[[D]]=[[D′]]. Nous notons C ≡ C ′.

En pratique, l’egalite est testee sur les formes canoniques des domaines de tir.Nous pouvons alors definir le graphe des classes Γ(N ) d’un reseau de Petri temporel a

chronometres comme le quotient de Γ′(N ) par la relation d’egalite : Γ(T ) = Γ′(N )/ ≡.

Exemple 7.3. La figure 7.5 presente le graphe des classes du reseau de la figure 7.4. Nous avonsannote le graphe avec les marquages des differentes classes ainsi que les domaines de quelques classessignificatives. La classe C3 fait intervenir un domaine de tir qui ne peut pas etre mis sous la formed’une DBM.

Page 103: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

7.3 Determination de l’espace d’etats des reseaux de Petri a chronometres 97

P1

t1 [5,6]

P2

t2 [0,1]

P4

t4 [2,4]

P3

t3 [1,2]

Fig. 7.4 – Exemple de reseau de Petri temporel a chronometres

Fig. 7.5 – Graphe des classes du reseau de Petri temporel a chronometres 7.4

Page 104: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

98 Calcul de l’espace d’etats

L’extension du graphe des classes d’etats aux reseaux de Petri temporels a chronometrespermet, comme pour les reseaux de Petri temporels, de verifier des proprietes de logiquetemporelle lineaire (Linear Temporal Logic - LTL) [Pnu77].

7.3.1.2 Surapproximation

En raison de la forme generale des domaines de tir des classes d’etats des reseaux dePetri temporels a chronometres, le calcul de ces classes implique la manipulation de polyedresgeneraux, ce qui est bien plus couteux que la manipulation de DBM (tant en termes detemps de calcul que d’espace memoire utilise). De fait, afin de permettre au calcul de l’espaced’etats des reseaux de Petri temporels a chronometres de rester efficace, une voie envisageeest de proposer une surapproximation de l’espace d’etats : chaque polyedre sera approximepar un polyedre englobant plus simple... et parmi tous les polyedres englobants possibles,une approche interessante consiste a choisir la plus petite DBM surapproximante [LR03a,BFSV04, BLRV07].

La methode ainsi envisagee dans [LR03a] revient a supprimer des domaines temporelstoutes les inequations ne pouvant pas etre representees par des DBM. Sur l’exemple de laclasse C3 du graphe de la figure 7.5, cela revient a supprimer l’inequation θ1 + θ3 ≤ 6.Cette operation est assimilable a une relaxation sur le systemes de contraintes representantle domaine temporel.

Puisque la methode repose sur une surapproximation, elle presente le risque de permettrele tir de transitions qui ne le sont normalement pas et d’ainsi ajouter des etats qui ne sont enfait pas accessibles. De plus, en ajoutant des comportements, cette approximation presente lerisque de rendre non borne le marquage des classes d’etats et donc d’en produire une infinite.

Des surapproximations plus fines ont ete proposees par la suite, notamment dans [BLRV07].Elles consistent en une surapproximation parametrable, reposant sur une quantification despolyedres representant les domaines temporels.

Si ces surapproximations ne sont pas genantes pour la verification de proprietes de surete,elles presentent neanmoins le risque d’aboutir a un resultat pessimiste par rapport a la realitedu systeme. C’est pourquoi nous ne nous sommes pas contentes de cette methode et nousavons cherche a ameliorer le calcul exact de l’espace d’etats des reseaux de Petri temporels achronometres.

7.3.1.3 Methode efficace pour le calcul du graphe des classes des reseaux dePetri temporels a chronometres

L’approche que nous developpons ici (et qui a fait l’objet d’une publication dans [MLR05])repose sur les deux remarques suivantes :

1. la classe d’etats initiale d’un reseau de Petri temporel a chronometres peut toujours etrerepresentee a l’aide d’une DBM,

2. il est « facile » de determiner si un polyedre donne est une DBM.

Dans [BFSV04], les auteurs donnent une condition necessaire (qu’ils affirment egalementsuffisante, mais nous avons exhibe un contre-exemple montrant que tel n’est pas le cas) qui,

Page 105: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

7.3 Determination de l’espace d’etats des reseaux de Petri a chronometres 99

lorsqu’elle est verifiee, implique de recourir a des polyedres generaux pour le calcul de l’espaced’etats des reseaux de Petri temporels a chronometres. Nous avons affine cette condition pourla rendre suffisante et nous avons ainsi ete capables de proposer un algorithme de calcul exactde l’espace d’etats qui utilise a la fois la representation sous forme de DBM et, seulementquand c’est absolument necessaire, la representation sous forme de polyedre general. Nousavons implemente cette methode dans l’outil Romeo (cf. chapitre 10).

Nous donnons ci-dessous une condition pour que la surapproximation par DBM englobanterelaxe des contraintes du domaine de tir d’une classe d’etats :

Proposition 7.1. La classe parente comporte a la fois une transition active et une transitioninhibee qui sont toutes deux continument sensibilisees avant, pendant et apres le tir de latransition qui a mene a la classe courante.

Dans [BFSV04], les auteurs affirment que cette condition est necessaire et suffisante. Cettecondition est effectivement necessaire, mais pas suffisante comme nous le prouvons en exhibantdeux contre-exemples.

P1

t1 [5,6]

P2

t2 [0,1]

P4

t4 [3,4]

P3

t3 [1,2]

Fig. 7.6 – Reseau de Petri temporel a chronometres servant de contre-exemple a la conditionenoncee dans la proposition 7.1

Considerons le reseau de la figure 7.6. Dans la classe initiale, il y a a la fois une transitioninhibee (t1) et une transition active (t4), qui restent sensibilisees avant, pendant et apres letir de t2. t2 etant la seule transition tirable depuis la classe initiale, on aboutit a la classesuivante :

{ {P1, P3, P4}, {5 ≤ θ1 ≤ 6, 1 ≤ θ3 ≤ 2, 2 ≤ θ4 ≤ 4} }

Le domaine de tir d’une telle classe peut etre represente sous la forme d’une DBM. Il suitque la condition enoncee dans la proposition 7.1 n’est pas suffisante pour determiner quandle polyedre resultant du tir d’une transition ne peut pas etre mis sous forme de DBM.

Page 106: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

100 Calcul de l’espace d’etats

P1

t1 [5,6]

P2

t2 [0,1]

P4

t4 [3,4]

P3

t3 [1,2]

Fig. 7.7 – Reseau de Petri temporel a chronometres servant de contre-exemple a la conditionenoncee dans la proposition 7.1

En fait, pour etre necessaire et suffisante, la condition de la proposition 7.1 necessite descontraintes additionnelles portant sur les bornes du domaine de tir. Ceci est illustre par lereseau de la figure 7.7. Apres le tir de t2, il y a a la fois une transition inhibee (t1) et unetransition active (t3) qui restent sensibilisees avant, pendant et apres le tir de t4. Le tir de t4conduit a la classe suivante :

{ {P1, P3}, {4 ≤ θ1 ≤ 5, θ3 = 0} }Le domaine de tir d’une telle classe peut lui aussi etre represente sous la forme d’une

DBM. A contrario, si l’intervalle de tir associe a la transition t4 est remplace par [2; 4] (ce quicorrespond au reseau de la figure 7.4 et au graphe des classes associe presente sur la figure7.5), alors la sequence de tirs t2.t4 conduit a la classe :

{ {P1, P3}, {4 ≤ θ1, 0 ≤ θ3 ≤ 1, θ1 + θ3 ≤ 6} }

Nous avons ainsi fait apparaıtre une forme polyedrale ne pouvant pas etre ecrite sous laforme d’une DBM en modifiant simplement l’intervalle de tir de la transition t3. Ceci montreavec encore plus de force que la condition de la proposition 7.1 n’est pas suffisante pour definirles cas dans lesquels la surapproximation relaxe des contraintes.

Nous proposons ainsi le theoreme suivant pour definir precisement les configurations danslesquelles la surapproximation basee sur une DBM englobante relaxe des contraintes.

Theoreme 7.3 (Relaxation de contraintes via la surapproximation). Soit C = (M,D)une classe d’etats d’un reseau de Petri temporel a chronometres telle que D est une DBM(D = {αi ≤ θi ≤ βi, θi − θj ≤ γij} est ecrite sous sa forme canonique). Soit tf une transitiontirable depuis C : le tir de tf conduit a la classe C ′ = (M ′, D′). Soit D′ le domaine obtenuvia la surapproximation basee sur les DBM a partir de D′.D′ relaxe des contraintes de D (i.e. le domaine D′ ne peut pas etre represente sous laforme d’une DBM ; sa representation necessite de recourir a des polyedres generaux) ssi∃ti ∈ active(M),∃tj ∈ (enabled(M) ∩ inhibited(M)) − disabled(M, tf ),∃tk ∈ enabled(M) −disabled(M, tf ), t.q.. i 6= k et (βj + γki > βk + γji) ∨ (αj − γik < αk − γij)

Page 107: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

7.3 Determination de l’espace d’etats des reseaux de Petri a chronometres 101

Preuve. Soit C ′ = (M ′, D′) une classe d’etats d’un reseau de Petri temporel a chronometres.SoitC = (M,D) sa classe parente. Pour les besoins de cette demonstration, nous consideronsun domaine avec 4 variables, mais la preuve peut facilement etre etendue a n variables. Tra-vailler avec 4 variables nous permet d’obtenir toutes les combinaisons possibles d’inequations.Les variables θ1, θ2, θ3 et θ4 sont associees aux transitions sensibilisees t1, t2 , t3 et t4. Noussupposons que t1, t2 et t3 sont actives et que t4 ne l’est pas. Enfin, nous supposons que t1 esttirable, que le tir de t1 depuis la classe C conduit a la classe C ′ et que t2 reste sensibilisee aucours du tir de t1.

Le domaine initial D peut etre ecrit dans sa forme canonique de la maniere suivante :

D =

α1 ≤ θ1 ≤ β1, α2 ≤ θ2 ≤ β2,α3 ≤ θ3 ≤ β3, α4 ≤ θ4 ≤ β4,−γ21 ≤ θ1 − θ2 ≤ γ12, −γ31 ≤ θ1 − θ3 ≤ γ13,−γ41 ≤ θ1 − θ4 ≤ γ14, −γ32 ≤ θ2 − θ3 ≤ γ23,−γ42 ≤ θ2 − θ4 ≤ γ24, −γ43 ≤ θ3 − θ4 ≤ γ34

(7.1)

Supposons maintenant qu’au moins un des quatre inequations suivantes est satisfaite :

β2 + γ41 < β4 + γ21

α4 − γ12 < α2 − γ14

β2 + γ43 < β4 + γ23

α4 − γ32 < α2 − γ34

Calculons le domaine D′ obtenu depuis D par le tir de t1. La premiere etape consiste aeffectuer les changements de variables θi ← θ′i + θ1 pour toutes les transitions actives saufla transition desensibilisee t1. Nous ajoutons egalement les inequations ∀j, θ′j ≥ 0. Ensuite,nous ecrivons le systeme sous la forme de majorants et de minorants de θ1 afin de preparerl’elimination de cette variable par la methode de Fourier-Motzkin :

α1 ≤ θ1, θ1 ≤ β1,α2 − θ′2 ≤ θ1, θ1 ≤ β2 − θ′2,α3 − θ′3 ≤ θ1, θ1 ≤ β3 − θ′3,−γ41 + θ4,≤ θ1 θ1 ≤ γ14 + θ4,−γ42 + θ4 − θ′2 ≤ θ1, θ1 ≤ γ24 + θ4 − θ′2,−γ43 + θ4 − θ′3 ≤ θ1, θ1 ≤ γ34 + θ4 − θ′3,α4 ≤ θ′4 ≤ β4, θ′2 ≥ 0,−γ32 ≤ θ′2 − θ′3 ≤ γ23, θ′3 ≥ 0,−γ21 ≤ −θ′2 ≤ γ12,−γ31 ≤ −θ′3 ≤ γ13

(7.2)

La methode de Fourier-Motzkin consiste alors a ecrire que le systeme a des solutions si etseulement si les minorants de θ1 sont inferieurs ou egaux a ses majorants. Le nouveau systeme

Page 108: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

102 Calcul de l’espace d’etats

est equivalent au precedent. Nous pouvons en deduire la liste suivante de contraintes :

max{0,−γ12} ≤ θ′2 ≤ γ21,max{0,−γ13} ≤ θ′3 ≤ γ31,α4 ≤ θ4 ≤ β4,−γ32 ≤ θ′2 − θ′3 ≤ γ23,−γ42 − β1 ≤ θ′2 − θ4 ≤ γ24 − α1,−γ43 − β1 ≤ θ′3 − θ4 ≤ γ34 − α1

α2 − γ14 ≤ θ′2 + θ4 ≤ β2 + γ41,α3 − γ14 ≤ θ′3 + θ4 ≤ β3 + γ41,α2 − γ34 ≤ θ′2 + θ4 − θ′3 ≤ β2 + γ43,α3 − γ24 ≤ θ′3 + θ4 − θ′2 ≤ β3 + γ42

(7.3)

Nous pouvons voir que les contraintes ne pouvant pas appartenir a une DBM (sur lesquatre dernieres lignes) font chacune intervenir une transition qui etait active dans C (t2 out3) et une transition qui etait inhibee (t4). Il suit que la preuve de la condition necessaireecrite sous la forme de la proposition 7.1 est immediate : apres le tir de t1, si la classe C ′ necomporte pas une transition qui etait active dans C et une transition qui etait inhibee, alorsaucune forme polyedrale non-DBM n’apparaıtra dans le domaine de tir de C ′.

Il est toutefois important de noter que l’assertion inverse est fausse. Supposons par exempleque γ24 = β2 − α4 et γ41 = β4 − α1 (i.e. ces contraintes etaient redondantes dans D, ce quiest effectivement le cas lorsque l’analyse debute avec la classe initiale) , alors l’inequationθ′2 + θ4 ≤ β2 + γ41 peut etre obtenue en combinant θ′2 ≤ γ21 et θ4 ≤ β4. L’inequationest alors redondante, tout comme le sont les autres contraintes apparaissant sur les quatredernieres lignes du domaine exhibe ci-dessus. Cette observation implique, entre autres, qu’ilest impossible d’obtenir une forme polyedrale non-DBM a partir du tir d’une transition depuisla classe initiale.

Nous devons maintenant prouver que, parmi les quatre contraintes polyedrales que nousavons obtenues precedemment, il en existe au moins une qui n’est pas redondante avec lescontraintes sur θ′2 +θ4 que nous pouvons deduire des contraintes individuelles sur θ′2 et θ4 (lesinequations sur θ′3 + θ4 ne sont pas interessantes, t3 pouvant etre desensibilisee par le tir det1), ce qui signifie : {

α4 + max{0,−γ12} ≤ θ′2 + θ4 ≤ β4 + γ21,α4 − γ32 ≤ θ′2 + θ4 − θ′3 ≤ β4 + γ23,

(7.4)

Cette verification est immediate puisque nous avons suppose qu’au moins une des quatreinequations suivantes est satisfaite :

β2 + γ41 < β4 + γ21

α4 − γ12 < α2 − γ14

β2 + γ43 < β4 + γ23

α4 − γ32 < α2 − γ34

Il apparaıt donc, dans le domaine resultant, une contrainte polyedrale non redondante avecles autres contraintes, et qui ne peut pas etre stockee par l’intermediaire d’une structure dedonnees DBM. La surapproximation a base de DBM englobantes relaxe donc cette contrainte.

Page 109: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

7.3 Determination de l’espace d’etats des reseaux de Petri a chronometres 103

Il nous reste desormais a demontrer l’implication inverse. Pour ce faire, nous allons prouverla contraposee. Supposons ainsi que la classe parente ne contienne pas a la fois une transitionactive et une transition inhibee telles que ces deux transitions restent sensibilisees avant,pendant et apres le tir de tf (il est alors immediat que le domaine surapproxime est egal audomaine exact) ou qu’aucune des deux inequations sur αk−γij et βk +γji n’est verifiee (cetteseconde eventualite signifie que la contrainte polyedrale non-DBM pouvant eventuellementapparaıtre est redondante avec les contraintes obtenues separement sur θi et θj , ce qui signifieque nous ne pouvons alors pas aboutir a une contrainte ne pouvant pas etre stockee sous formede DBM). Il vient ainsi que, dans ces cas, la surapproximation ne relaxe aucune contrainte.Le resultat que nous cherchions a prouver est ainsi bien demontre. �

En pratique, quand nous etudions l’espace d’etats de reseaux de Petri temporels a chro-nometres, nous constatons que la surapproximation a base de DBM relaxe souvent descontraintes. Cela signifie que le calcul exact de l’espace d’etats est necessaires pour un grandnombre de systemes sur lesquels nous souhaitons effectuer une verification fine. Toutefois,l’obstacle majeur pose par la manipulation de polyedres generaux est une perte nette entermes de vitesse de calcul et une explosion de l’espace memoire utilise.

Forts du theoreme 7.3, nous avons donc eu l’idee de proposer un algorithme pour lequelnous ne manipulerions pas des polyedres generaux lorsque ces polyedres peuvent etre missous la forme simple d’une DBM. A chaque fois que nous pouvons utiliser des DBM, nous lesutilisons en lieu et place des polyedres generaux. Nous utilisons de plus le theoreme 7.3 afin dedeterminer a priori quand le calcul base sur les DBM s’apprete a relaxer des contraintes. Si lacondition necessaire et suffisante est verifiee, alors nous sommes surs que le calcul base sur despolyedres generaux est necessaires. Dans les autres cas, nous utilisons la structure de donneesDBM : les operations sur cette structure sont en effet bien plus rapides et efficaces. Notrealgorithme mele ainsi calculs bases sur les DBM et manipulation de polyedres generaux : lechoix de l’un ou l’autre est fonction de la structure necessaire pour un calcul exact de l’espaced’etats.

Les avantages de notre methode peuvent etre facilement illustres sur un exemple. Repre-nons le reseau de la figure 7.7 (dont le graphe des classes est represente par la figure 7.5). Lecalcul exact et la surapproximation aboutissent au meme nombre de nœuds et de transitions(7 nœuds et 7 transitions). Cela ne signifie pas pour autant que le graphe des classes d’etatsobtenus par la surapproximation a l’aide de DBM englobante et l’algorithme polyedral exactsoient les memes. Dans le cas present, ils different par une seule classe, C3, obtenue, partantde la classe initiale, par le tir de t2 puis de t4 :{

{P1, P3},{4 ≤ θ1, 0 ≤ θ3 ≤ 1, θ1 + θ3 ≤ 6}

La surapproximation conduit a une classe similaire, a la difference pres que la derniereinequation n’apparaıt pas dans le domaine de tir associe. Mais que cette inequation soit priseou non en compte, une seule transition est tirable depuis cette classe : t3. Apres le tir de t3,le calcul base sur la surapproximation et le calcul exact conduisent a la meme classe C5 :{

{P1},{4 ≤ θ1 ≤ 6}

Page 110: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

104 Calcul de l’espace d’etats

Pour les classes suivantes, il n’est donc plus necessaire de manipuler des polyedres generaux(a moins que la condition du theoreme 7.3 soit verifiee) : la structure de donnees DBM est alorssuffisante pour stocker les domaines de tir. Par consequent, nous effectuons les manipulationssuivantes sur cette structure de donnees plutot que des polyedres generaux.

Le cœur de notre methode reside dans l’algorithme permettant de calculer le successeurd’une classe.

Algorithme 7.2 Methode mixte pour le calcul de la classe suivante (parametre d’entree :la classe courante C = (M,D) et la transition tiree tf ; resultat : la classe successeur C ′ =(M ′, D′))M ′ = M −max(�tf ×M t,•tf ) + t•fsi le domaine courant D est encode a l’aide d’une DBM et la condition 7.3 n’est PASsatisfaite alors

Effectuer le calcul du successeur D′ de D en utilisant la methode basee sur les DBM,comme detaille dans [LR03a]

sinonEffectuer le calcul du successeur D′ de D en utilisant la methode exacte reposant surl’utilisation de polyedres generauxsi D′ peut etre encode a l’aide d’une DBM alors

Encoder D′ sous la forme d’une DBMfin si

fin sirenvoyer (M ′, D′)

La methode pour obtenir la liste des transitions tirables depuis une classe C = (M,D) estla meme pour toutes les classes, que le domaine de tir s’exprime sous la forme d’une DBMou d’un polyedre general. Pour determiner si la transition ti est tirable, il faut suivre lesoperations suivantes : pour toutes les transitions actives tj , j 6= i, nous ajoutons les contraintesθi ≤ θj au domaine courant D et nous regardons si le domaine resultant est vide ou non. S’iln’est pas vide, cela signifie que la transition ti est tirable depuis la classe C = (M,D). Laseule difference eventuelle dans la procedure reside dans le type de domaine manipule : soitune DBM, soit un polyedre general non-DBM.

Remarque. Soit n le nombre de transitions sensibilisees. La complexite (temporelle et spa-tiale) du test permettant de determiner si le successeur d’un polyedre non-DBM peut s’expri-mer sous la forme d’une DBM est en O(n2) tandis que la complexite du test correspondantea la condition 7.3 est en O(n3). Nous rappelons par ailleurs que la complexite des operationssur les polyedres generaux est, quant a elle, en O(exp(n)).

Nous avons integre la methode que nous venons de definir au sein de l’outil Romeo (cf.chapitre 10).

La methode classique de calcul du graphe des classes d’etats pour les reseaux de Petritemporels a chronometres, la surapproximation basee sur une DBM englobante introduite parLime et al. dans [LR03a] et notre algorithme ameliore ont tous trois ete implantes dans l’outilRomeo (cf. chapitre 10). Tandis que les manipulations sur les DBM sont effectuees a l’aide de

Page 111: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

7.3 Determination de l’espace d’etats des reseaux de Petri a chronometres 105

la bibliotheque la UPPAAL DBM Library [Dav07], les manipulations sur les polyedres sontassurees par la Parma Polyhedra Library [BRZH02].

Afin d’illustrer les avantages de notre approche, nous presentons dans les lignes qui suiventun tableau comparatif des resultats obtenus (en termes de temps de calcul et d’utilisationd’espace memoire) par les trois methodes sus-citees. Les algorithmes ont ete executes surune large variete d’exemples. Les principaux resultats sont resumes dans le tableau 8.1 nousdonnons le nombre de nœuds et de transitions du graphe des classes d’etats resultant et letemps de calcul sur un PowerPC G4, 1,33 GHz, 1GB RAM.

NA (pour l’anglais Not Available) signifie que le calcul n’a pas termine en moins de deuxheures sur la machine que nous avons utilisee. Dans le cas de la surapproximation, NA signifieque l’espace d’etats surapproximes conduit a une infinite de marquage alors que le reseau achronometres est borne.

Il va de soi que, lorsque le nombre de classes dans lesquelles le domaine de tir peut etremis sous la forme d’une DBM, notre methode mixte est moins efficace et est meme un peumoins rapide que le calcul basee sur l’utilisation systematique de polyedres generaux (a causedu test pour verifier si le polyedre resultant peut, ou non, etre ecrit sous forme de DBM).Pour des systemes plus gros, nous observons un gain significatif, en termes de temps de calcul,avec notre methode mixte. Ceci est illustre par les exemples 4, 5 ou 6. De plus, un calcul baseuniquement sur des polyedres generaux peut conduire a un depassement de l’espace memoire,depassement que notre algorithme mixte, lui, evitera (exemples 3 et 11).

Une premiere conclusion est que, pour tous les systemes d’interet pratique, notre methodemixte est bien plus efficace que le calcul base integralement sur des polyedres generaux.

En general, la surapproximation est, sans surprise, plus rapide que le calcul exact. Celan’est toutefois plus le cas lorsque le nombre d’etats ajoutes par l’approximation devient im-portant. Ceci apparaıt notamment sur les exemples 9, 10 et 11 : les etats ajoutes par lasurapproximation conduisent a un nombre infini de marquage alors que le reseau de Petritemporel a chronometres est borne. Il reste toutefois un dernier cas a soulever : le calculexact de l’espace d’etats sur les reseaux de Petri temporels a chronometres ne termine pasnecessairement (le probleme de l’accessibilite etant indecidable, comme cela a ete prouvedans [Lim04, BLRV07]) et la surapproximation peut, elle, dans pareil cas, permettre d’obte-nir une abstraction finie (mais approchee) de l’espace d’etats. L’exemple 12 illustre une telleconfiguration.

7.3.2 Calcul de l’espace d’etats d’un reseau de Petri a chronometres borneen temps discret

A notre connaissance, aucune methode n’avait ete proposee pour calculer efficacementl’espace d’etats d’un reseau de Petri temporels a chronometres en temps discret. La seulemethode evidente consistait donc a adopter une approche iterative, en avant, de l’espaced’etats : partant de l’etat initial, calculer successivement chaque etat en les enumerant tous.Une telle demarche souffre bien evidemment d’une explosion combinatoire du nombre d’etats,rendant cette approche inutilisable en pratique. Nous reviendrons plus longuement sur cesaspects dans le chapitre dediee aux approches enumeratives du calcul de l’espace d’etats(chapitre 8).

Page 112: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

106 Calcul de l’espace d’etats

rRdPTI Surapproximation Calcul exactAlgorithme polyedral Algorithme mixte

Temps Classes Transitions Temps Classes Transitions Temps Classes TransitionsExemple 1 0,03 s 21 31 0,23 s 18 25 0,23 s 18 25Exemple 2 0,03 s 5 4 0,19 s 5 4 0,19 s 5 4Exemple 3 85,52 s 15178 49135 NA NA NA 85,59 s 15178 49135Exemple 4 6,63 s 2260 5700 33,51 s 2260 5700 6,69 s 2260 5700Exemple 5 18,88 s 11167 25856 80,9 s 11167 25856 19,08 s 11167 25856Exemple 6 6,45 s 2225 5371 23,51 s 2225 5371 6,61 s 2225 5371Exemple 7 0,03 s 8 10 0,18 s 8 10 0,18 s 8 10Exemple 8 99,66 s 16323 54688 NA NA NA 99,73 s 16323 54688Exemple 9 NA NA NA 0,19 s 19 24 0,19 s 19 24Exemple 10 NA NA NA 26,92 s 4528 8699 13,24 s 4528 8699Exemple 11 NA NA NA NA NA NA 115,11 s 16650 32865Exemple 12 1,72 s 478 1137 NA NA NA NA NA NA

Tab. 7.1 – Comparaison entre la surapproximation basee sur une DBM englobante, l’algo-rithme de calcul exact reposant sur une utilisation systematique de polyedres generaux etnotre methode mixte (PowerPC G4 ; 1,33 GHz ; 1GB RAM)

7.4 Conclusion

Dans ce chapitre, nous avons rappele la principale methode permettant de calculer l’espaced’etats des reseaux de Petri temporels et de leur extension a chronometres en temps dense.Dans le cas des modeles a chronometres, nous avons propose une amelioration de la procedurede calcul. Notre approche, basee sur un melange entre polyedres generaux et DBM, donne desresultats interessants dans la majorite des cas pratiques. Elle permet notamment de calculerl’espace d’etats de reseaux pour lesquels le calcul classique conduit a une explosion de l’espacememoire et pour lesquels la surapproximation genere un nombre infini de marquages. Nostravaux sur le calcul de l’espace d’etats en temps discret sont, eux, trop vastes pour etreintegres a ce chapitre. Ils seront detailles dans les chapitres 8 et 9.

Page 113: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Chapitre 8

Approches enumeratives pour lecalcul de l’espace d’etats desreseaux de Petri en temps discret

ResumeUne approche intuitive pour obtenir l’espace d’etats d’un reseau de Petri temporel borne

(avec ou sans chronometre) en temps discret consiste a enumerer l’ensemble de ses etats.Nous proposons notamment une methode consistant a traduire un reseau de Petri temporel

borne en reseau de Petri non-temporise (en preservant la bisimulation). Il devient des lorspossible de verifier des proprietes temporelles sur un reseau de Petri temporel en raisonnantsur le reseau non-temporise sous-jacent. Nous approfondissons ce travail en mettant en œuvreune autre traduction, vers des systemes a compteurs cette fois. Une implementation pratiquede ces traductions nous permet d’illustrer non seulement l’efficacite mais aussi les limites deces differentes methodes.

Ces travaux ont ete publies dans la huitieme edition de la conference internationale WODES(WOrkshop on Discrete Event Systems) en 2006 [MMR06b]. Ils ont fait l’objet d’un seminaireinvite donne au LaBRI (Laboratoire Bordelais de Recherche en Informatique) en octobre 2006.

Page 114: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

108 Calcul enumeratif de l’espace d’etats des SwPN en temps discret

Sommaire

8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1098.2 Traduction des reseaux de Petri en temps discret vers des reseaux

non-temporises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108.2.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1108.2.2 Exemple d’analyse de l’espace d’etats . . . . . . . . . . . . . . . . . 111

8.3 Traduction des modeles en temps discret vers des systemes acompteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

8.3.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1128.3.2 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1128.3.3 Techniques basees sur l’acceleration . . . . . . . . . . . . . . . . . . 1138.3.4 Techniques basees sur la theorie de l’apprentissage . . . . . . . . . . 1148.3.5 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

8.4 Comparaison des performances . . . . . . . . . . . . . . . . . . . . 1178.4.1 Comparaison des performances entre le calcul en temps dense assure

par Romeo et le calcul en temps discret effectue par Markg . . . . . 1188.4.2 Comparaison des performances entre le calcul en temps dense assure

par Romeo et le calcul en temps discret effectue par Markg, FASTet Lever . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

8.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

Page 115: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

8.1 Introduction 109

8.1 Introduction

Les principaux travaux sur le calcul de l’espace d’etats de reseaux en temps discret selimitent aux reseaux de Petri temporels (et ne considerent donc pas des reseaux a chro-nometres) : la methode proposee par Popova consiste ainsi a analyser le comportement d’unreseau en ses seuls « etats entiers » (c’est-a-dire des etats pour lesquels un marquage est as-socie a des valeurs d’horloges toutes entieres), ce qui est suffisant pour connaıtre l’integralitedu comportement du reseau [Pop91b]. Cette approche souffre neanmoins de l’explosion com-binatoire du nombre des etats.

Les theories stochastiques constituent un autre axe de recherche en termes de reseauxde Petri temporels dotes d’une semantique de temps discret. Dans ce cas, les modeles sontenrichis d’informations stochastiques afin de permettre une evaluation des performances dessystemes modelises. Le modele stochastique le plus repandu est constitue des reseaux de Petrideterministes et stochastiques (Deterministic and Stochastique Petri Net, DSPN) [MC87] :les transitions peuvent etre tirees soit en un temps nul, soit en un temps determine par unedistribution exponentielle. Afin de contenir le probleme de l’explosion combinatoire du nombredes etats, Zijal et al. ont propose un nouveau modele, baptise reseau de Petri discretementdeterministe et stochastique (DDSPN) [ZCH97] : les transitions peuvent alors etre tirees soiten un temps nul, soit en un temps determine par une distribution geometrique discrete. Lecas ou les instants de tir sont deterministes constituent alors un cas particulier inclus danscette distribution geometrique discrete. Des techniques de reduction de l’espace d’etats ontete proposees et implementees dans l’outil TimeNET. Cet outil ne permet malheureusementpas de modeliser des comportements preemptifs.

Bucci et al. se sont attaches a definir une semantique de concurrence veritable pour uneextension en temps discret des reseaux de Petri temporels (extension qui etend les contraintesde tir avec une densite de probabilite discrete), les reseaux de Petri temporels preemptifset stochastiques (Stochastic Preemptive Time Petri Nets, ou spTPNs) [BSV03]. Les auteursdonnent une technique enumerative pour l’obtention de l’espace d’etats du modele. Les auteursposent l’hypothese que l’avancement du temps n’est faisable que dans les etats pour lesquelsil n’y a aucune transition tirable. Cette semantique est, de fait, legerement contre-intuitive.De plus, l’espace d’etats resultant ne contient pas tous les etats qui pourraient etre atteintvia la semantique classique des reseaux de Petri temporels [Mer74].

Calcul de l’espace d’etats et explosion combinatoire

Dans le cas des reseaux de Petri temporels en temps dense, le probleme de l’accessibilite estdecidable a la condition que le reseau est borne. Meme si l’espace d’etats est infini, les horlogesprenant leur valeur dans l’ensemble des reels positifs, il est possible de representer cet espacesous la forme d’une partition finie. Le graphe des classes d’etats propose par Berthomieu etal. [BD91] et le graphe des regions etendu par Gardey et al. [GRR06] en constituent deuxexemples. Le principal souci souleve par la conjonction des reseaux a chronometres et dutemps dense reside dans le fait que des problemes de verification formelle classiques (telque le probleme de vivacite) ne sont pas decidables, meme pour des reseaux bornes. Unemethode alternative d’analyse du systeme consiste donc a l’envisager muni d’une semantiquede temps discret et a calculer l’espace d’etats ainsi. Nous avons en effet vu que l’accessibilite,notamment, est decidable pour les reseaux a chronometres bornes en temps discret.

Page 116: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

110 Calcul enumeratif de l’espace d’etats des SwPN en temps discret

Par ailleurs, certains auteurs parviennent a contenir l’explosion combinatoire du nombred’etats liee aux modeles discrets. Il en va ainsi de l’outil Markg [MDR02, MM06] (cf. cha-pitre 10) dedie aux reseaux de Petri non temporises. Le logiciel integre un algorithme decalcul ensembliste du graphe des marquages accessibles base sur des structures de donneesinspirees par les Diagrammes de Decision Binaire (Binary Decision Diagrams, ou BDD) : lesVector Decision Diagrams (VDD) et les Arithmetic Expression Decision Diagrams (AEDD)modelisant, respectivement, les etats du reseau et ses fonctions d’incidence.

Les resultats sont encourageants : Markg est ainsi capable de calculer un nombre tresimportant d’etats en un temps raisonnable (plus de 1014 etats et 1015 transitions en 24 minutessur un Pentium III - 400 MHz).

Modelisation explicite du temps

Bui Thanh et al. ont adopte une approche radicalement differente [BTKP03] : alors qu’ha-bituellement, le temps enrichit le modele des reseaux de Petri sous la forme d’une donnee« externe » au systeme, il est ici modelise explicitement. L’avancement du temps est alorsexprime sous la forme d’un evenement dedie baptise tick. Cet evenement permet de specifierdes contraintes temporelles entre l’occurrence de deux evenements. Par ailleurs, au lieu detravailler directement sur les reseaux de Petri, les auteurs preferent etudier des reseaux dePetri interactifs de plus haut niveau. Cela ne les empeche toutefois pas d’etre confrontes auprobleme de l’explosion de l’espace d’etats.

Notre objectif

Dans les chapitres precedents, nous avons presente une methode pour traduire un reseaude Petri a chronometres en temps discret en un reseau de Petri non temporise tel que lesdeux modeles soient bisimilaires. Cette traduction nous a conduit a enoncer des resultatsd’expressivite, mais aussi de decidabilite, sur les modeles en temps discret. Nous allons lareutiliser dans cette partie pour construire une methode efficace de calcul de l’espace d’etatsdes reseaux en temps discret. Nous nous proposons ainsi de recourir a des outils d’analysedes reseaux de Petri non temporises (a l’instar de Markg) pour calculer l’espace d’etats desreseaux de Petri a chronometres en temps discret. Nous verrons egalement que nous pouvonsetendre notre methode et proposer une traduction vers les automates a compteurs. Cela nouspermet d’utiliser des outils ayant demontre leur efficacite sur le modele en question, a l’instarde FAST [BFLP03, BFL04] et de Lever [VV06].

8.2 Traduction des reseaux de Petri en temps discret vers desreseaux non-temporises

8.2.1 Principe

Dans le chapitre 5, nous avons propose une methode pour traduire un reseau de Petria chronometres en temps discret en reseau non temporise de maniere a ce que les deuxmodeles soient bisimilaires. Il devient des lors possible de verifier des proprietes sur le reseaua chronometres en adaptant la-dite propriete et en la verifiant sur le reseau non temporise.Dans ces conditions, notre idee est la suivante : partant d’un reseau de Petri a chronometresen temps discret, nous traduisons ce reseau en reseau non temporise ; ceci fait, nous utilisons

Page 117: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

8.2 Traduction des reseaux de Petri en temps discret vers des reseaux non-temporises 111

un outil classique de calcul de l’espace d’etats d’un reseau non temporise pour obtenir uneabstraction de l’espace d’etats du reseau a chronometres initial. L’outil que nous avons choisid’utiliser pour obtenir l’espace d’etats des reseaux non temporises est Markg (cf. chapitre 10).

8.2.2 Exemple d’analyse de l’espace d’etats

P1

t1 [3,3]

P3 P4

t4 [0,2]t3 [2,4]

P5

t5 [0,0]

P6

t6 [4,4]

t2 [2,5]t7 [10,10]

P2P7

Fig. 8.1 – Exemple de reseau de Petri avec arcs inhibiteurs

Considerons le RdPTI de la figure 8.1 (etudie auparavant dans [RL04]). Nous commenconspar traduire ce reseau dote d’une semantique de temps discret en reseau de Petri non temporiseavec arcs de reset et hyperarcs inhibiteurs. Il est alors possible de recourir a l’outil Markgpour calculer l’espace d’etats du reseau. Nous obtenons alors 490 etats et 749 transitions.Dans la suite, nous proposons une analyse de l’espace d’etats obtenu de ce reseau de Petrinon temporise obtenu via la traduction decrite dans le chapitre 5. L’etat initial du reseau est :

{p1, pnotEnabled,1, pnotEnabled,2, p3, pnotEnabled,3, p4, pnotEnabled,4, pnotEnabled,5, pnotEnabled,6, pnotEnabled,7}

Apres le tir des transitions instantanees que sont tstartClock,1, tstartClock,3 et tstartClock,4,nous obtenons l’etat initial effectif :

{p1, penabled,1, pnotEnabled,2, p3, penabled,3, p4, penabled,4, pnotEnabled,5, pnotEnabled,6, pnotEnabled,7}

L’analyse du reseau en temps discret effectuee a l’aide de Markg conduit, apres la sequencede tir composee de t4, ecoulement de 3 unites de temps, t1.t5, a l’etat suivant :

{pnotEnabled,1, p2, penabled,2, 3×pν,2, p3, penabled,3, pnotEnabled,4, pnotEnabled,5, p6, penabled,6, pnotEnabled,7}

Il est alors immediat que nous devons tirer t2 avant t6 dans le reseau construit via notretraduction. Une analyse similaire s’applique pour n’importe quelle sequence de tir. Puisque

Page 118: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

112 Calcul enumeratif de l’espace d’etats des SwPN en temps discret

le reseau de Petri non temporise et le reseau de Petri a chronometres en temps discret sontbisimilaires via une abstraction du temps, cela signifie que t6 n’est pas tirable avant t2 ou t3.

Cet exemple nous permet ainsi d’illustrer la demarche generale d’analyse d’un reseau dePetri a chronometres dote d’une semantique de temps discret via la methode enumerative quenous avons exhibee.

8.3 Traduction des modeles en temps discret vers des systemesa compteurs

Les reseaux de Petri a arcs de reset sont une sous-classe des systemes a compteurs pourlesquels des outils efficaces de calcul de l’espace d’etats ont vu le jour [Ler03]. Apres avoirpropose une traduction preservant la bisimulation entre les reseaux de Petri a chronometresen temps discret et les reseaux de Petri non temporises a arcs de reset et hyperarcs inhibi-teurs, il apparaissait de fait naturel de construire une traduction directe entre les modeles achronometres en temps discret et les systemes a compteurs. C’est ce que nous exposons dansce paragraphe.

Constatant que l’idee sous-jacente de notre traduction pouvait s’etendre aux systemes detransitions, nous avons cherche a ameliorer son efficacite en nous penchant sur les techniquesd’acceleration. Ces methodes s’utilisent habituellement au sein d’algorithmes de verificationsur des automates [FL02].

8.3.1 Principe

Les systemes a compteurs sont des automates etendus a l’aide de variables entieres nonbornees et dont les transitions sont etiquetees par une fonction affine combinee avec une gardeexprimee comme une formule de Presburger. Dans le cas general, le probleme d’accessibilite surces systemes est indecidable. Cela n’exclut pas pour autant de proposer des semi-algorithmescalculant efficacement l’espace d’etats. Pour ce faire, l’approche naıve consiste a declencherles transitions une par une jusqu’a atteindre un point fixe. Tres souvent, cette demarche netermine pas. Pour pallier ce probleme, plusieurs voies sont possibles :

– recourir a des techniques d’elargissement (ou widening techniques) ;– recourir a des techniques d’acceleration ;– recourir a des techniques basees sur la theorie de l’apprentissage.

La premiere procedure se base sur l’idee d’approximer l’ensemble des etats accessibles dusysteme. La seconde permet de calculer en un pas l’effet d’un nombre quelconque d’iterationsdu systeme. La troisieme consiste, enfin, a voir la verification comme un probleme ou l’en-semble resultant d’un calcul de point fixe necessite d’etre appris a travers des exemples.

Dans la suite, nous nous focaliserons sur l’efficacite qu’apportent les techniques d’accelerationet d’apprentissage sur le calcul de l’espace d’etats des reseaux de Petri en temps discret.

8.3.2 Definitions

Definition 8.1. Un systeme a m ≥ 0 compteurs est un systeme de transitionsS = (Q,Q0,Σ,→) tel que Q = Nm.

Page 119: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

8.3 Traduction des modeles en temps discret vers des systemes a compteurs 113

Definition 8.2. Un systeme de transitions S = (Q,Q0,Σ,→) est deterministe si, pour toutq ∈ Q et pour tout σ ∈ Σ, il existe au plus un q′ ∈ Q tel que q σ−→ q′.

Les systemes a compteurs que nous allons manipuler sont tous deterministes.

8.3.3 Techniques basees sur l’acceleration

Le probleme de l’accessibilite est indecidable sur les systemes a compteurs. Une methodepour ameliorer l’efficacite des semi-algorithmes permettant le calcul de l’espace d’etats de cesmodeles consiste a developper des techniques d’acceleration [FL02]. Il s’agit de chercher acalculer l’ensemble des etats accessibles en iterant a la limite des composees d’actions.

Definition 8.3. L’acceleration d’une composee d’actions σ ∈ Σ∗ d’un systeme de transitionsS = (Q,Q0,Σ,→) est la relation notee σ∗

−→, definie par : σ∗−→= ( σ−→)∗.

Exemple 8.1. Considerons l’automate de la figure 8.2. Notons Reach son espace d’etats accessible.Un algorithme classique calcule iterativement l’espace d’etats du systeme et ne termine jamais : si l’etatinitial estQ0 = {0}, la premiere iteration conduit a Reach ⊇ {0}, la seconde iteration a Reach ⊇ {0, 1},la troisieme iteration a Reach ⊇ {0, 1, 2}, etc. A contrario, l’application d’une technique d’accelerationsur le modele permet d’obtenir en une iteration l’espace d’etats accessible : Reach = N

si x ≥ 0 alors x := x + 1

Fig. 8.2 – Exemple de modele tel que l’acceleration permet d’obtenir l’espace d’etats accessibleen une passe

Nous ne rentrerons pas dans les details des algorithmes permettant de determiner desaccelerations au cours du calcul de l’espace d’etats d’un systeme a compteurs, ce sujetdepassant le cadre de notre travail.

L’acceleration a fait l’objet de nombreuses etudes et implementations. Pour notre etude,notre choix s’est arrete sur les travaux de Sebastien Bardin, Alain Finkel, Jerome Lerouxet Laure Petrucci autour de l’outil FAST (Fast Acceleration of Symbolic Transition Systems)[BFLP03, BFL04]. Cette decision se justifie, d’une part, par les modeles acceptes en entree parFAST, et, d’autre part, par les performances de ce logiciel comparees a d’autres programmesdu meme type (LASH [WB98, Boi07] qui presente l’inconvenient de laisser a l’utilisateur latache de specifier les cycles a accelerer ; TReX [ABS01, CABS07] qui, embrassant un domaineplus large, se limite toutefois a un sous-ensemble des fonctions traitees par LASH et FAST).FAST est parvenu a calculer une representation de l’ensemble des etats accessibles dans plusde 80% des cas etudies dans [BFLP03] (comportant des reseaux de Petri, des abstractionsde programmes multi-thread Java mais aussi des modelisations de systemes embarques com-plexes).

Page 120: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

114 Calcul enumeratif de l’espace d’etats des SwPN en temps discret

FAST integre notamment un algorithme de calcul, par acceleration, de l’ensemble desetats accessibles d’un systeme a compteurs, avec une recherche automatique de l’ensemblereduit des composees d’actions a accelerer. Il contient egalement un algorithme de calcul desinvariants de places d’un systeme a compteurs.

FAST prend en entree un fichier contenant une description du systeme a compteurs aanalyser et une strategie permettant a l’utilisateur de controler ce que FAST doit calculer.Dans le cadre de notre etude, nous avons seulement besoin de demander au logiciel un calculautomatique de l’ensemble des etats accessibles.

8.3.4 Techniques basees sur la theorie de l’apprentissage

La verification de systemes passe habituellement par le calcul de l’ensemble des etatsaccessibles a partir d’un etat initial (ou d’un ensemble d’etats initiaux). La demarche classiqueconsiste alors a calculer un point fixe : l’ensemble des etats accessibles est le plus petit ensembleclos par la relation de transition du systeme.

Dans [VV05], les auteurs proposent une approche originale qui consiste a voir l’ensembledes etats accessibles comme un ensemble dont la determination se fait via une procedured’apprentissage (en repondant a des questions portant sur l’appartenance ou l’equivalence).En general, il n’est pas possible de repondre a ces questions directement pour l’ensembledes etats accessibles. De fait, au lieu d’apprendre l’espace d’etats accessibles, l’algorithme vaapprendre un ensemble plus riche. Les elements de cet ensemble sont des couples composesd’un etat accessible et d’un « temoin » qui montre comment l’etat est accessible. La procedured’apprentissage a ete etendue a la verification de proprietes de vivacite et de proprietes CTL(Computational Tree Logic).

Les avantages de cette methode par apprentissage sont les suivants :– Le temps d’execution de l’algorithme ne depend pas du temps necessaire pour conver-

ger au point fixe, mais plutot de la taille de la representation symbolique de l’espaceresultant du calcul au point fixe ;

– L’algorithme evite les depassements de memoire lies a des approximations intermediairesdu calcul de point fixe (ces approximations n’etant ici jamais calculees) ;

– Si l’ensemble des etats accessibles est regulier, alors la terminaison de l’algorithme demodel-checking est garantie.

Ces techniques ont ete implantees dans un outil developpe par Abhay Vardhan et MaheshViswanathan : Lever [VV06]. Il s’agit d’un model-checker CTL sur les systemes a etatsinfinis. Respectant la meme syntaxe que FAST, Lever prend en entree un fichier contenantune description du systeme a compteurs a analyser et la propriete a verifier. Il recourt auxtechniques d’apprentissage pour trouver les points fixes necessaires a la verification. Une etudeportant sur les performances du logiciel montre que Lever se comporte bien face a des outilspour la verification de proprietes de surete sur des systemes a etats finis. En particulier,Lever est parfois beaucoup plus efficace que FAST, ce qui est l’une des raisons de notreinteret pour cet outil.

8.3.5 Principe

Afin de pouvoir utiliser les logiciels portant sur la verification des systemes a compteurs,nous proposons une traduction, preservant la bisimulation, de tout reseau de Petri a chro-

Page 121: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

8.3 Traduction des modeles en temps discret vers des systemes a compteurs 115

nometres en temps discret en systeme a compteurs. Pour ce faire, nous allons considerer lesvaluations des chronometres associes aux transitions comme des compteurs. L’idee maıtressede notre demarche est d’assurer qu’une fois que le temps augmente pour une transition, il aug-mente bien pour toutes les transitions sensibilisees et actives. Cela est garanti par le recoursa un superviseur.

Nous partons d’un rRdPTI N = (P, T,•(.), (.)•,�(.), a, b,M0, I) avec P = {P1, . . . , Pm} etT = {t1, . . . , tn}, dote d’une semantique de temps discret.

A chaque place Pj de P, nous associons un compteur mj correspondant a la valeur dumarquage de Pj . L’etat initial de chaque compteur depend de l’etat initial du reseau de Petria chronometres. A chaque transition ti de T, nous associons un compteur νi correspondant a lavaleur du chronometre de ti (on notera ν le vecteur dont les composantes sont ν1, ν2, . . . , νn),mais aussi une transition discrete transi du systeme a compteurs. La condition de franchis-sement de ces transitions transi decoule directement de la semantique des reseaux de Petri.Une transition ti n’est franchissable que si elle est sensibilisee continument et non inhibeedepuis un temps compris entre sa date de tir au plus tot et sa date de tir au plus tard :la condition sur transi decoule directement de la traduction de ces conditions exprimee al’aide des variables mi. Les affectations associees au tir d’une transition transi portent surles variables mi : elles constituent une traduction directe de la fonction d’incidence aval etdes fonctions de reset associees a ti.

Il reste a definir, dans le systeme a compteurs resultant, une transition correspondant al’ecoulement d’une unite de temps dans tout le reseau, transition que nous noterons 1−→. C’estdans la definition de cette transition que reside la subtilite de notre traduction. Nous devonsen effet recourir a un superviseur. Celui-ci est represente par la figure 8.3. Afin que le motifreste lisible, certaines des informations apparaissant sur le superviseur sont notees dans lasyntaxe propre au reseau de depart (a l’instar d’une condition telle que « ti ∈ enabled(M) »)et non sous la forme d’une conjonction d’inequations sur les variables du systemes a compteursque nous definissons. Ceci facilite la comprehension du mecanisme que nous introduisons etn’a pas d’impact sur la correction de notre traduction.

Sur le superviseur que nous construisons, nous faisons apparaıtre n+1 compteurs supple-mentaires dont le role est le suivant :

– fire vaut 1 lorsque le reseau peut tirer une transition discrete, 0 lorsqu’un ecoulementtemporel a eu lieu au niveau d’une des variables ν(ti) (et qu’il est donc necessaire, avantde tirer une nouvelle transition discrete, de s’assurer que le temps a bien avance d’uneunite de temps pour tous les compteurs correspondant a des transitions tj) ;

– Pour tout i de {1, . . . , n}, g(i) vaut 1 lorsque le reseau est engage dans une procedured’ecoulement du temps et que l’avancement du temps a bien deja ete pris en compte auniveau du compteur correspondant a la transition ti, c’est-a-dire ν(ti). Il vaut 0 sinon.

Le passage de la localite DiscreteF iring (indiquant que ce sont des transitions discretesqui sont tirees au sein du reseau) a Elapse0 signifie qu’un pas temporel de 1 peut etre franchiau niveau des compteurs « temporels » du systeme. Les localites Elapse0, Elapse1, . . . , Elapsensont urgentes, au sens ou le temps ne peut pas s’ecouler pendant que l’on passe de l’une al’autre. L’etat initial du superviseur est l’etat DiscreteF iring. Chacune des transitions du

Page 122: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

116 Calcul enumeratif de l’espace d’etats des SwPN en temps discret

superviseur fait partie des transitions du systemes a compteurs que nous definissons. La tran-sition d’ecoulement du temps du systeme a compteurs est donc definie comme la succession destransitions du superviseur pour l’accomplissement d’un cycle de DiscreteF iring a elle-memeen passant par chacune des localites Elapse0, Elapse1, . . . , Elapsen.

Au final, nous notons Scount = (Qcount, Qcount0 ,Σcount,→count) le systeme a compteurs

ainsi associe au rRdPTI N .

DiscreteFiring

Elapse0

Elapse1

Elapse2

Elapsen

fire := 0∀i s.t. ti ∈ T, g(i) := 0

∧t0 ∈ enabled(M)

g(0) := 1

g(1) := 1g(1) := 1

...

fire = 1

...

fire := 1

g(n) := 1

∧tn ∈ enabled(M)

fire := 1

g(n) := 1

g(0) := 1

fire = 0fire = 0

fire = 0 fire = 0

fire = 0 fire = 0

∧(tn ∈ inhibited(M)∨tn /∈ enabled(M))

∨t1 /∈ enabled(M))

∨t0 /∈ enabled(M))∧(t0 ∈ inhibited(M)

∧(t1 ∈ inhibited(M) ∧t1 /∈ inhibited(M)∧t1 ∈ enabled(M)

∧t0 /∈ inhibited(M)

∧tn /∈ inhibited(M)

∧fire = 1

(∀ti ∈ T s.t. ti ∈ enabled(M) ∧ ti /∈ inhibited(M),

ν0 := ν0 + 1

ν1 := ν1 + 1

νn := νn + 1

νi ≤ b(ti))

Fig. 8.3 – Automate du superviseur associe a la traduction des reseaux de Petri a chro-nometres en temps discret en systemes a compteurs

Il reste a prouver la correction de cette traduction. Pour ce faire, nous devons relier lesetats de N a ceux de Scount. Nous definissons donc la relation d’equivalence suivante :

Definition 8.4 (Equivalence entre etats). Soit (M,ν) (respectivement (m, ν, g, fire)) unetat de Sdiscrete

N (respectivement de Scount). Nous definissons la relation suivante ≈ta⊂ QN ×Qcount (ou QN et Qcount representent, respectivement, l’ensemble des etats de N et de Scount) :{

∀(M,ν) ∈ QN∀(m, ν, g, fire) ∈ Qcount

, (M,ν) ≈ta (m, ν, g, fire)⇔

∀j ∈ {1, . . . ,m},M(Pj) = mj

∀i ∈ {1, . . . , n}, ν(ti) = νi, g(i) = 0fire = 1

Page 123: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

8.4 Comparaison des performances 117

Deux etats sont relies (en relation) par ≈ta si les etats correspondent en termes de donneessur le marquage des places et la valuation des chronometres.

Il reste a prouver que notre traduction preserve le comportement du reseau de Petri achronometres initial au sens ou la semantique en temps discret de ce reseau et la semantiquede sa traduction sont (faiblement) bisimilaires via une abstraction du temps. Pour ce faire,nous definissons la relation de bisimulation suivante :

Theoreme 8.1 (Bisimulation). ≈ta est une relation de bisimulation faible via une abs-traction du temps, ce qui signifie : pour tout (M,ν) ∈ SN et (m, ν, g, fire) ∈ Qcount tels que(M,ν) ≈ta (m, ν, g, fire), nous avons :

– (M,ν) ti−→ (M ′, ν ′) ⇔

{(m, ν, g, fire) transi−−−−→ (m′, ν ′, g, fire)(M ′, ν ′) ≈ta (m′, ν ′, g, fire)

(1)

– (M,ν) 1−→ (M,ν ′) ⇔

{(m, ν, g, fire) 1−→ (m, ν ′, g, fire)(M,ν ′) ≈ta (m, ν ′, g, fire)

(2)

La preuve est semblable a celle que nous avons menee, dans le chapitre 5, pour la traduc-tion des reseaux de Petri a chronometres dotes d’une semantique de temps discret en reseaude Petri non temporise. Ayant tres fortement detaille la demonstration sus-citee, nous choi-sissons d’omettre la preuve portant sur les systemes a compteurs, d’autant que celle-ci estrelativement evidente.

Maintenant que nous avons exhibe une traduction preservant la bisimulation d’un reseaude Petri a chronometres en temps discret en systemes a compteurs, nous pouvons utiliser lesoutils specialement developpes pour les systemes a compteurs (a l’instar de FAST et Lever)afin de calculer l’espace d’etats de reseaux de Petri a chronometres. C’est ce que nous allonsfaire dans le paragraphe suivant, en comparant notamment les performances de ces logicielsa celles de Markg.

8.4 Comparaison des performances

Afin de mettre en evidence les avantages pratiques de notre demarche, nous avons meneune etude qui compare les performances, en termes de temps de calcul et d’espace memoireconsomme, du calcul de l’espace d’etat general en utilisant le graphe des classes d’etats [BM83][BD91] et une analyse du reseau dote d’une semantique de temps discret. La premiere methodea fait l’objet d’une implementation dans Romeo [GLMR05, RLG+07]. Elle calcule toutes lesclasses d’etats du reseau, sachant qu’une classe d’etats peut representer un nombre infinid’etats. Le calcul de l’espace d’etats du reseau en temps discret a ete effectue a l’aide de lacombinaison de trois traductions avec trois outils :

– La traduction des reseaux de Petri a chronometres en temps discret vers les reseauxde Petri non temporises a arcs de reset et hyperarcs inhibiteurs, combinee avec Markg,outil de calcul de l’espace d’etats de reseaux non temporises ;

– La traduction des reseaux de Petri a chronometres en temps discret vers les systemesa compteurs, combinee avec FAST [BFLP03, BFL04], outil de verification automatiquedes systemes a compteurs a monoıde fini ;

– La traduction des reseaux de Petri a chronometres en temps discret vers les systemes acompteurs, combinee avec Lever [VV06], outil de verification automatique des systemesa compteurs base sur l’apprentissage de l’ensemble des etats accessibles.

Page 124: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

118 Calcul enumeratif de l’espace d’etats des SwPN en temps discret

Dans un premier temps, nous nous focaliserons sur la comparaison entre les calculs entemps dense via le graphe des classes d’etats et les calculs enumeratifs en temps discret. Dansune deuxieme partie, nous elargirons notre etude au cas des systemes a compteurs et desoutils associes.

Mais avant d’aller plus loin, revenons sur les raisons qui nous poussent a comparer lesapproches reposant sur un modele exprime avec une semantique de temps dense et celles quisont liees a un modele dote d’une semantique de temps discret. A premiere vue, une tellecomparaison manque de pertinence pour ce qui est de l’analyse d’un systeme. En effet, alorsque l’approche en temps dense garde trace de l’integralite des comportements du reseau, letemps discret ne se focalise que sur les etats correspondant a des dates entieres. Nous avonstoutefois prouve qu’une des differences fondamentales entre le temps dense et le temps discretreside dans le fait que le probleme d’accessibilite est decidable, en temps discret, pour lesreseaux de Petri a chronometres bornes. De plus, a travers l’etude que nous avons menee,nous avons souhaite demonter l’un des prejuges les plus repandus concernant l’explosioncombinatoire du nombre des etats en temps discret : nous montrons en effet que des structuresde donnees ou des methodes de calcul appropriees permettent de calculer efficacement l’espaced’etats d’un reseau de Petri en temps discret.

Nous avons teste les differents algorithmes preservant LTL sur des exemples adaptes dela modelisation de systemes temps reel. Les principaux resultats sont synthetises dans lestableaux 8.1 et 8.2.

8.4.1 Comparaison des performances entre le calcul en temps dense assurepar Romeo et le calcul en temps discret effectue par Markg

Les resultats de la comparaison des performances entre le calcul en temps dense assurepar Romeo et le calcul en temps discret effectue par Markg sont resumes dans le tableau 8.1.Nous y faisons figurer le nombre de classes d’etats (respectivement le nombre d’etats) et detransition du graphe des classes d’etats resultant (respectivement de l’espace d’etats), ainsique le temps de calcul et la consommation de memoire sur un Pentium 2 GHz, 2Go RAM.Les exemples 1 a 5 concernent des reseaux de Petri temporels bornes tandis que les exemples 6a 11 impliquent des reseaux de Petri a chronometres bornes. Dans tous les exemples envisagesici, l’ensemble des marquages accessibles par les reseaux en temps dense est identique a celuides reseaux associes en temps discret.

Il n’est pas surprenant de constater que, lorsque l’espace d’etats du reseau de Petri tem-porel ne comporte que peu de classes (ce qui est le cas pour les exemples 1, 2 et 6), il n’y apas d’interet particulier a preferer etudier le reseau dote d’une semantique de temps discret.En effet, le temps de calcul en temps discret englobe deux etapes : d’une part, la traductiondu reseau temporel en reseau non temporise puis le calcul de chacun des etats du reseauresultant.

En revanche, dans le cas general, notre methode est bien plus efficace pour determinerl’espace d’etats d’un reseau de Petri a chronometres en temps discret. Ces performancesdecoulent directement des techniques fondees sur les BDD. Ceci est illustre par les exemples3 et 4 (reseaux de Petri temporels) et les exemples 7, 8 9, 10 et 11 (reseaux de Petri achronometres bornes). Bien que le calcul de l’espace d’etats du reseau resultant puisse contenir

Page 125: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

8.4 Comparaison des performances 119

Reseau Temps dense - Romeo Temps discret - MarkgTemps Classes d’etats Transitions Memoire Temps Etats Transitions Memoire

Exemple 1 0,05 s 59 79 1320 KB 1,03 s 804 1260 96032 KBExemple 2 0,4 s 355 661 2940 KB 1,21 s 42659 122991 97840 KBExemple 3 33,01 s 14418 46079 15896 KB 2,95 s 5544270 21017491 111700 KBExemple 4 42,72 s 14086 56929 17280 KB 2,3 s 7115395 63715112 106140 KBExemple 5 0,01 s 2 1 1320 KB 8,82 s 2003 3002 175576 KBExemple 6 0,17 s 18 25 1320 KB 1,07 s 490 749 134080 KBExemple 7 14,27 s 11167 25856 40796 KB 14,13 s 4395244 10205356 175576 KBExemple 8 70,79 s 15178 49135 56240 KB 6,28 s 33458182 136989372 134088 KBExemple 9 33 s 5734 18340 39824 KB 9,45 s 5791714 18135017 143490KBExemple 10 5,01 s 2225 5371 24012 KB 4,2 s 1732983 5511736 117924 KBExemple 11 NA NA NA NA 1,07s 55 85 95796 KB

Tab. 8.1 – Comparaison des performances entre le calcul en temps dense assure par Romeoet le calcul en temps discret effectue par Markg – Pentium ; 2 GHz ; 2Go RAM

plus de 107 etats, il reste plus rapide que le calcul du graphe des classes d’etats. Cela estpossible grace a la combinaison de differents facteurs : le recours a un algorithme symboliquepour l’enumeration de l’espace d’etats des reseaux de Petri non temporises et la souplesse demanipulation des structures de donnees fondes sur les BDD.

Neanmoins, lorsque le reseau comporte certaines transitions avec un large intervalle entreleur date de tir au plus tot et leur date de tir au plus tard, le calcul de l’espace d’etatsdu modele dote d’une semantique de temps discret souffre de l’explosion combinatoire dunombre d’etats. Ce cas est illustre par l’exemple 5 : le reseau ne contient qu’une transition(dont l’intervalle de tir est [0, 1000]) avec une place d’entree. La methode des classes d’etatsconduit a 2 classes et 1 transition tandis que la methode en temps discret conduit a plus de2000 etats.

Enfin, l’exemple 11 illustre les resultats donnes par les theoremes 6.4 et 6.8 : alors que lecalcul de l’espace d’etats du reseau dote d’une semantique de temps dense ne termine pas, lecalcul de l’espace d’etats du modele en temps discret conduit a un graphe fini !

Pour finir, il est important de noter qu’en depit de l’explosion combinatoire, la memoireconsommee par le calcul de l’espace d’etats en temps discret reste raisonnable. En fait, pourtous les reseaux modelisant des systemes reels tels que la largeur de l’intervalle de tir n’estpas superieur a 100, le calcul de l’espace d’etats du modele en temps discret est plus rapideque celui du modele en temps dense. De plus, le calcul de l’espace d’etats sur des reseaux dePetri a chronometres bornes en temps dense ne termine pas necessairement (le probleme del’accessibilite etant indecidable [BLRV05]) ; le calcul sur le modele en temps discret, lui, seterminera.

8.4.2 Comparaison des performances entre le calcul en temps dense assurepar Romeo et le calcul en temps discret effectue par Markg, FASTet Lever

Nous avons vu que, dans le cadre du calcul de l’espace d’etats de reseaux de Petri achronometres en temps discret, Markg n’est plus efficace des lors que la difference entre ladate de tir au plus tard et la date de tir au plus tot d’une transition est importante. Ainsi,

Page 126: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

120 Calcul enumeratif de l’espace d’etats des SwPN en temps discret

Reseau Temps dense - Romeo Temps discret - Markg Temps discret - FAST Temps discret - LeverTemps Memoire Temps Memoire Temps Memoire Temps Memoire

Exemple 12 0,04 s 1320 KB 336,15 s 55040 KB 0,22 s 3000 KB 0,07 s 1320 KBExemple 13 0,11 s 1320 KB NA NA 62,04 s 20196 KB 0,26 s 3596 KBExemple 14 0,10 s 1320 KB 612,85 s 55116 KB 0,65 s 3404 KB 0,05 s 1320 KBExemple 15 0,11 s 1320 KB NA NA NA NA NA NAExemple 16 (avec ∞) 0,10 s 1320 KB 0,12 s 9596 KB 0,33 s 2524KB NA NAExemple 17 (avec ∞) 0,10 s 1320 KB 1148,18 s 139800 KB 0,55 s 3352KB NA NA

Tab. 8.2 – Comparaison des performances entre le calcul en temps dense assure par Romeoet le calcul en temps discret effectue par Markg, FAST et Lever – Pentium ; 2 GHz ; 2GoRAM

dans cette partie, nous etudions l’efficacite des techniques d’acceleration mises au point pourles systemes a compteurs en presence de telles configurations. C’est ainsi que les exemples 12a 17 (sur lesquels portent les tests resumes dans le tableau 8.2) concernent des reseaux tressimples (contenant au maximum 9 places et 10 transitions) mais pour lesquels l’ecart entreles dates de tir au plus tot et au plus tard de certaines transitions peut etre superieur a 100.Les exemples 16 et 17 presentent la particularite de contenir des transitions associees a desintervalles temporels non bornes.

Rien d’etonnant a constater que le calcul en temps dense est particulierement rapideet efficace sur ces exemples de reseau conduisant a peu de classes d’etats. Ce qui est plusinteressant pour l’objet de notre etude, c’est de comparer les performances des differentsoutils operant avec des modeles discret. Dans le cas ou le reseau fait apparaıtre une seuletransition avec un intervalle temporel [1, 1000] (exemple 12), FAST et Lever sont bien plusrapides que Markg : les techniques d’acceleration et de determination de l’espace d’etats parapprentissage font ainsi leurs preuves. Par contre, lorsque les entrelacements possibles entretransitions se multiplient (exemples 13 a 15 faisant apparaıtre de deux a cinq transitionsavec des intervalles temporels [1, 1000], transitions pouvant etre sensibilisees simultanement),FAST et Lever atteignent eux aussi leurs limites. Nous remarquons que, lorsque le calculse termine effectivement pour ces deux outils, Lever est le plus rapide (ce qui est conformeaux resultats annonces dans [VV06]). Par contre, en presence de transitions temporelles nonbornees (exemples 16 et 17), la suprematie de Lever est remise en cause : FAST reste, al’heure actuelle, le logiciel gerant le mieux des variables non bornees lors d’un calcul globalde l’espace d’etats. Il nous faut toutefois preciser que Lever est concu pour verifier, a lavolee, des formules CTL et non pour produire un espace d’etats sous forme symbolique : celaexplique pourquoi le programme de Abhay Vardhan et Mahesh Viswanathan ne termine pas,meme dans le cas ou nous ne faisons figurer qu’une seule transition non bornee dans le reseaude Petri en temps discret.

Cette comparaison entre differents outils capables d’operer (moyennant une traductionvers le modele adequat) sur des reseaux de Petri a chronometres en temps discret montreque FAST et Lever se comportent mieux que Markg sur des exemples tres academiques (nefaisant intervenir qu’une a trois transitions avec un intervalle de tir large de plus de 100 unitesde temps). Mais dans le cas de reseaux plus complexes, modelisant des systemes temps reeleffectifs, les trois outils se retrouvent a egalite, incapables de calculer l’espace d’etats en untemps raisonnable. C’est pourquoi nous allons nous pencher, dans le prochain chapitre, surl’elaboration d’un algorithme permettant le calcul symbolique de l’espace d’etats des reseauxen temps discret.

Page 127: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

8.5 Conclusion 121

8.5 Conclusion

Dans cette partie, nous avons mis a profit la traduction proposee dans le chapitre 5 etl’avons utilisee pour proposer une methode enumerative efficace de calcul de l’espace d’etatsd’un reseau de Petri a chronometres dote d’une semantique de temps discret. Partant d’untel reseau, nous le transformons en reseau de Petri non temporise qui lui est (faiblement)bisimilaire. Des lors, nous pouvons utiliser n’importe quel algorithme ou outil dedie auxreseaux de Petri classiques (avec arcs de reset et hyperarcs inhibiteurs, ou un equivalent)pour determiner l’espace d’etats d’un reseau a chronometres en temps discret. Nous avonsnotamment implante cette traduction dans le logiciel Romeo (cf. chapitre 10). Nous avonsegalement effectue des recherches dans une autre voie : plutot que de traduire le reseaua chronometres en reseau de Petri non temporise, nous avons cherche a le transformer enautomate a compteurs bisimilaire. Cette procedure nous permet alors de recourir a des outilsqui ont fait leurs preuves sur ces modeles a l’instar de FAST [BFLP03, BFL04] et de Lever[VV06]. Toutefois, quels que soient le modele de sortie et l’outil utilises, nous avons eteconfrontes a l’explosion combinatoire du nombre des etats des que l’intervalle de tir associe aune transition est important (superieur a une centaine d’unites de temps). Cela rend difficile laverification de certains modeles en temps discret, nous incitant ainsi a elaborer une methodenon plus enumerative mais symbolique de calcul de l’espace d’etats des reseaux en tempsdiscret.

Page 128: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

122 Calcul enumeratif de l’espace d’etats des SwPN en temps discret

Page 129: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Chapitre 9

Approches symboliques pour lecalcul de l’espace d’etats desreseaux de Petri en temps discret

ResumeLes approches enumeratives visant a calculer l’espace d’etats des reseaux de Petri tem-

porels (avec ou sans chronometres) en temps discret souffrent de l’explosion combinatoiredu nombre d’etats. C’est pour contrer cet obstacle que, dans ce chapitre, nous etendons lesrepresentations symboliques classiques du temps dense (assurees via des polyedres convexes)au temps discret. Pour ce faire, nous proposons de calculer l’espace d’etats des reseaux entemps discret comme la discretisation de l’espace d’etats du modele associe en temps dense.Dans un premier temps, nous montrons que cette demarche est correcte pour les reseaux dePetri temporels, mais pas pour les reseaux a chronometres : en effet, pour ces derniers, unetelle procedure peut conduire a ajouter de faux comportements discrets, c’est-a-dire des com-portements qui ne sont pas accessibles avec la semantique en temps discret. Pour surmonterce probleme, nous preconisons de decomposer les polyedres generaux representant l’informa-tion temporelle du reseau en une union de polyedres plus simples garantissant la validite ducalcul du successeur symbolique. Nous developpons alors un algorithme permettant de calculersymboliquement l’espace d’etats d’un reseau en temps discret. Nous terminons en exhibantune methode symbolique pour la verification « a la volee » de formules TCTL sur les modelesa chronometres en temps discret.

Page 130: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

124 Calcul symbolique de l’espace d’etats des SwPN en temps discret

Sommaire

9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1259.2 Calcul de l’espace d’etats de modeles en temps discret . . . . . . 1269.3 Espace d’etats symbolique des reseaux de Petri temporels en

temps discret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1279.3.1 References bibliographiques . . . . . . . . . . . . . . . . . . . . . . . 1279.3.2 Discretisation de l’espace d’etats des reseaux de Petri temporels en

temps dense . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1279.3.3 Approche symbolique pour le calcul de l’espace d’etats des reseaux

de Petri temporels en temps discret . . . . . . . . . . . . . . . . . . 1289.4 Espace d’etats symbolique des SwPN en temps discret . . . . . . 128

9.4.1 Differences entre semantique en temps dense et semantique en tempsdiscret en termes d’accessibilite de marquage et de langage non tem-porise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128

9.4.2 Une condition suffisante pour que la discretisation de l’espace d’etatsdu reseau en temps dense et l’espace d’etats du reseau en tempsdiscret coıncident . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

9.4.3 Approche symbolique pour le calcul de l’espace d’etats des reseauxde Petri a chronometres en temps discret . . . . . . . . . . . . . . . 136

9.5 Verification de proprietes . . . . . . . . . . . . . . . . . . . . . . . 1389.5.1 Vision informelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1389.5.2 Procedure formelle pour la verification de formules TCTL sur les

reseaux de Petri a chronometres en temps discret . . . . . . . . . . . 1409.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

Page 131: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

9.1 Introduction 125

9.1 Introduction

Comme nous l’avons indique precedemment, les principaux travaux relatif au temps discretdans le cas des reseaux de Petri temporels (sans chronometre) sont l’œuvre de Popova. Lamethode qu’elle propose consiste a analyser le comportement d’un reseau en ses seuls « etatsentiers » (c’est-a-dire des etats pour lesquels un marquage est associe a des valeurs d’horlogestoutes entieres), ce qui est suffisant pour connaıtre l’integralite du comportement du reseau[Pop91b]. Cette approche souffre neanmoins de l’explosion combinatoire de l’espace d’etats.

L’originalite de notre demarche repose notamment sur la volonte d’appliquer une ana-lyse en temps discret non plus seulement a des reseaux temporels, mais egalement a desreseaux a chronometres. Dans le chapitre 5, nous avons compare l’expressivite des reseaux dePetri temporels et a chronometres en temps dense et en temps discret. Nous avons montrequ’en temps discret, les reseaux de Petri temporels, les reseaux de Petri a chronometres etles reseaux de Petri non temporises sont d’expressivite equivalente en termes de bisimulation(faible). Nous avons par ailleurs prouve, dans le chapitre 6, que le probleme de l’accessibilited’etats, indecidable en temps dense, devient decidable en temps discret. Via la bisimulationprecedemment evoquee, nous avons donc propose, dans le chapitre 8, une methode permet-tant de calculer l’espace d’etats d’un reseau de Petri a chronometres en temps discret. Aussiefficace que puisse etre notre implementation (notamment basee sur des structures de donneesinspirees par les Diagrammes de Decisions Binaires (BDD) [MDR02]), elle atteint ses limitesdes que le reseau fait apparaıtre plusieurs transitions avec un intervalle temporel de tir d’am-plitude importante (par exemple [1, 10000]).

C’est pour contrer ces obstacles que nous proposons ici de mettre au point une methodesymbolique permettant le calcul de l’espace d’etats d’un reseau de Petri a chronometres entemps discret. L’idee la plus naturelle est d’etendre la demarche adoptee en temps dense,a savoir calculer l’espace d’etats a l’aide de classes d’equivalence regroupant tous les com-portements discrets equivalents (cette notion de similitude restant bien entendu a definirprecisement). Pour ce faire, une voie possible consiste a calculer symboliquement l’espaced’etats du modele en temps dense (incluant ainsi a la fois les comportements denses et discrets)tant que cela est significatif et a le discretiser ensuite pour remonter au seul comportementen temps discret.

Notre demarche consiste donc, en quelque sorte, a etablir le pendant inverse des resultatsde Popova : nous allons montrer, dans le cadre du graphe des classes (la preuve est facilementextensible au graphe des zones), que, pour acceder a l’espace d’etats d’un reseau de Petritemporel en temps discret, on peut discretiser l’espace d’etats du reseau associe en tempsdense. Nous nous interessons ensuite au cas des reseaux de Petri bornes a chronometres.Notre objectif est de proposer une methode symbolique pour calculer l’espace d’etats d’unreseau en temps discret. Nous prouvons que, dans certains cas, il est possible d’obtenir l’espaced’etats du modele en temps discret en discretisant simplement l’espace d’etat resultant d’uncalcul symbolique sur le modele associe en temps dense. Nous exhibons un exemple montranttoutefois que, dans le cas general, cette demarche peut conduire a des etats ou des executionsqui, en fait, n’appartiennent pas a la semantique en temps discret du modele. Nous terminonsen decrivant une methode combinant les specificites des approches symboliques du tempsdense avec celles des approches enumeratives du temps discret pour calculer efficacement unpartitionnement fini de l’espace d’etats des reseaux de Petri a chronometres.

Page 132: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

126 Calcul symbolique de l’espace d’etats des SwPN en temps discret

9.2 Calcul de l’espace d’etats de modeles en temps discret

En temps discret, les seules methodes existantes jusqu’ici pour calculer l’espace d’etatsdu modele etaient enumeratives. De fait, elles ne terminaient pas dans tous les cas (parexemple, lorsque le reseau comporte une transition avec une date de tir au plus tard infinie).Il est important de noter que cela n’a pas d’incidence sur la decidabilite du probleme del’accessibilite d’etats, comme nous l’avons montre dans le chapitre 6. Dans cette partie, nousallons etendre les methodes symboliques usuellement reservees au temps dense au cas dutemps discret. Nous limiterons ainsi l’explosion combinatoire propre a une enumeration dechaque etats du reseau. Pour commencer, nous proposons une extension de la notion de classesd’etats au cas des reseaux dotes d’une semantique de temps discret.

Comme en temps dense, une classe d’etats en temps discret contient l’ensemble des etatsdu reseau entre le tir de deux transitions consecutives.

Definition 9.1. Une classe d’etats C d’un reseau de Petri a chronometres dotes d’unesemantique de temps discret est un couple (M,D) ou M est un marquage du reseau et Dun ensemble (eventuellement vide) de points de Nn, n etant le nombre de transitions sensibi-lisees par le marquage de la classe.

Dans un reseau de Petri a chronometres, seules les transitions sensibilisees qui ne sont pasinhibees sont potentiellement tirables. Cela se manifeste par la definition suivante :

Definition 9.2 (Transition tirable depuis une classe d’etats). Soit C = (M,D) uneclasse d’etats d’un reseau de Petri a chronometres dote d’une semantique de temps discret.Une transition ti est dite tirable depuis C si il existe un point (θ∗0, . . . , θ

∗n−1) de D, tel que

∀j ∈ [0..n− 1]− {i}, t.q. tj est sensibilisee et non inhibee, θ∗i ≤ θ∗j .

Soient une classe C = (M,D) et une transition tirable tf . La classe successeur de C parle tir de tf est notee C ′ = (M ′, D′) = (M ′, nextdiscrete(D)).

L’objet de ce chapitre est d’etendre les methodes symboliques du temps dense au tempsdiscret de la maniere suivante :

– Decrire l’ensemble de points d’un domaine temporel D non pas par une enumerationde points, mais par un polyedre convexe Poly tel que D = Disc(Poly)

– Calculer Csymb′ = (M ′, Poly′), successeur de Csymb = (M,Poly) par le tir de tf (notee(M,nextdense(D))) via la methode symbolique classique et relier les classes symboliquesCsymb, Csymb′ , . . . a l’espace d’etats de N muni de sa semantique de temps discretSdiscreteN .

Afin de permettre l’emergence d’une approche symbolique, nous definissons aussi la notionde classe d’etats symbolique d’un reseau de Petri temporel (a chronometres) en temps discret :

Definition 9.3. Soient un reseau de Petri a chronometres N , n ∈ N et Csymb = (M,Poly)ou M ∈ NP et Poly est un polyedre convexe de Rn. Csymb = (M,Poly) est une classe d’etatssymbolique de la semantique en temps discret du reseau Sdiscrete

N si, pour tout ν ∈ D(Poly),(M,ν) est un etat de Sdiscrete

N .

Nous allons calculer symboliquement l’espace d’etats des reseaux en temps discret a l’aidede ces classes d’etats symboliques. A la fin de la procedure de calcul, nous obtiendrons unensemble de classes d’etats dont la discretisation donnera l’espace d’etats du reseau en tempsdiscret.

Page 133: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

9.3 Espace d’etats symbolique des reseaux de Petri temporels en temps discret 127

9.3 Espace d’etats symbolique des reseaux de Petri temporelsen temps discret

9.3.1 References bibliographiques

Dans [Pop91b], Popova a propose une methode d’analyse des reseaux de Petri temporelsqui differe du traditionnel graphe des classes de Berthomieu, Diaz et Menasche [BM83, BD91].Les deux methodes reposent sur le calcul d’un graphe d’accessibilite, mais la ou Berthomieu etal. manipulent des classes qui representent une infinite d’etats, Popova se contente de raisonnersur un etat. Elle definit un etat comme la conjonction d’un marquage et d’un vecteur temporelassociant, pour chacune des transitions sensibilisees, la valeur de l’horloge correspondante et,pour les transitions desensibilisees, une valeur absorbante fixee. Des lors, elle construit ungraphe d’accessibilite base uniquement sur ce qu’elle nomme des etats « entiers » : il s’agit lad’etats dans lesquels les valeurs de toutes les horloges associees a des transitions sensibiliseessont entieres. Elle a montre que la connaissance du comportement du reseau dans ces etatsentiers suffit a determiner le comportement global du reseau. Ce resultat, d’abord introduitsur les reseaux de Petri temporels aux dates de tir au plus tard finies, a ete etendu aux datesde tir au plus tard infinies dans [PZ96].

Poursuivant ces travaux, Popova et al. ont presente, dans [PZS99], une description pa-rametrique d’une sequence de transitions d’un reseau de Petri temporel, basee sur cette notiond’etats entiers.

Ramenes dans le contexte d’une comparaison entre temps dense et temps discret, lesresultats de Popova etablissent l’assertion suivante : pour etudier le comportement d’un reseaude Petri temporel en temps dense, il suffit d’en faire une analyse en temps discret. Dans cettepartie, nous proposons en quelque sorte la reciproque de ce resultat : nous montrons, dansle cadre du graphe des classes (la preuve est facilement extensible au graphe des zones), quel’espace d’etats du reseau de Petri temporel en temps discret peut etre obtenu directement endiscretisant l’espace d’etats du reseau associe en temps dense. En fait, ce resultat ne s’appliquepas uniquement pour les reseaux de Petri temporels. En le reliant a la condition necessaireet suffisante (du theoreme 7.3) exhibee dans le chapitre 7 precisant les cas dans lesquels nousdevons recourir a des polyedres generaux, nous pouvons identifier un ensemble de cas tels quele calcul de l’espace d’etats du modele en temps discret peut etre realise a l’aide d’une simplediscretisation de l’espace d’etats du modele associe en temps dense.

9.3.2 Discretisation de l’espace d’etats des reseaux de Petri temporels entemps dense

Notre propos ici est de montrer qu’une discretisation de l’espace d’etats d’un reseau dePetri temporel en temps dense suffit a obtenir l’espace d’etats du reseau associe en tempsdiscret. Ce resultat s’applique pour tous les reseaux de Petri temporels.

Theoreme 9.1. Soit N un reseau de Petri temporel. Soit C une des classes d’etats de lasemantique en temps dense du reseau Sdense

N ; C est un couple constitue de la donnee d’unmarquage et d’une DBM : C = (M,DBM). On suppose que DBM contient au moins unpoint entier a partir duquel une transition tf est tirable. L’ensemble des successeurs en tempsdiscret des points entiers de D et l’ensemble des points entiers du successeur en temps densede D se confondent, c’est-a-dire nextdiscrete(Disc(DBM)) = Disc(nextdense(DBM))

Page 134: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

128 Calcul symbolique de l’espace d’etats des SwPN en temps discret

Ce theoreme est en fait un cas particulier du theoreme presente dans la section suivante(theoreme 9.7). Le procede de demonstration sera, de fait, introduit sur la classe generale desreseaux de Petri a chronometres plutot que sur la seule classe des reseaux de Petri temporels.

Il s’ensuit immediatement le corollaire suivant :

Corollaire 9.1. Soit N un reseau de Petri temporel. L’espace d’etats du reseau dote d’unesemantique de temps discret peut etre obtenu en discretisant l’espace d’etats du modele considereen temps dense.

Remarque. Dans le cas ou un intervalle temporel d’une transition peut ne contenir aucunentier (par exemple [0.2; 0.8]), il vient immediatement que l’espace d’etats du reseau en tempsdiscret ne correspond pas necessairement a la discretisation de l’espace d’etats du modele entemps dense.

9.3.3 Approche symbolique pour le calcul de l’espace d’etats des reseauxde Petri temporels en temps discret

Soit N un reseau de Petri temporel. Rappelons que notre objectif est de determinersymboliquement l’espace d’etats associe a sa semantique en temps discret Sdiscrete

N . Pour cefaire, la procedure est relativement simple : nous commencons par calcul l’espace d’etats de Ndote de sa semantique de temps dense Sdense

N . La discretisation de chacune des classes d’etatsidentifiees durant le calcul donne directement l’espace d’etats du reseau dote de sa semantiquede temps discret Sdiscrete

N . Ce resultat decoule directement du theoreme 9.1, sachant que toutesles classes d’etats d’un reseau de Petri temporel en temps dense peuvent s’exprimer a l’aidede DBM.

Maintenant que nous avons etabli ce resultat sur les reseaux de Petri temporels, nousallons chercher a en obtenir un equivalent pour les reseaux de Petri a chronometres.

9.4 Espace d’etats symbolique des reseaux de Petri a chro-nometres en temps discret

9.4.1 Differences entre semantique en temps dense et semantique en tempsdiscret en termes d’accessibilite de marquage et de langage non tem-porise

Nous allons montrer que, dans le cas general des reseaux de Petri a chronometres, il estfaux de penser que l’espace d’etats d’un modele en temps discret et la discretisation de l’espaced’etats du modele associe en temps dense sont similaires.

Theoreme 9.2. Contrairement a ce qui vaut pour les reseaux de Petri temporels, il existedes reseaux de Petri a chronometres tels que les comportements de la semantique en tempsdiscret ne rendent pas compte de l’integralite des comportements en temps dense du reseau,en termes de trace non temporisee et d’accessibilite de marquage. Formellement, cela signifiequ’il existe un rRdPTI N = (P, T,•(.), (.)•, a, b,M0, I), avec Sdense

N = (Qdense, q0, T,→dense)(resp. Sdiscrete

N = (Qdiscrete, q0, T,→discrete)) sa semantique en temps dense (respectivementen temps discret), tel que Qdiscrete ( Disc(Qdense).

Page 135: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

9.4 Espace d’etats symbolique des SwPN en temps discret 129

Preuve. Raisonnons par l’absurde en supposant que pour tout reseau de Petri a chro-nometres, l’analyse en temps discret rend compte de l’ensemble des comportements en tempsdense du reseau en termes de trace non temporisee ou d’accessibilite de marquage. Nous avonsprouve dans [MMR06a] que l’accessibilite de marquage est decidable pour les reseaux de Petribornes a chronometres en temps discret. En combinant ce resultat avec l’hypothese initiale dela preuve, il viendrait que l’accessibilite de marquage est decidable pour les reseaux de Petribornes a chronometres en temps dense. Ce qui n’est pas le cas, comme il l’a ete prouve dans[BLRV07]. Nous aboutissons ainsi a une contradiction. �

guess[0,1]

c[4,4]

u[4,4]

too_early[0,0]

too_late[0,0]

test[1,1]

t[4,4]

r[4,4]

reset[0,0]

s[4,4]

in_time[0,0]

P1 P2 P3P4

P5P6

P7

Pgoal

P8 P9 P10P11

Fig. 9.1 – Reseau de Petri mettant en evidence les problemes propres a une analyse en tempsdiscret de reseaux a chronometres

Il s’ensuit immediatement le theoreme suivant :

Theoreme 9.3. L’espace d’etats d’un reseau de Petri a chronometres dote d’une semantiquede temps discret n’est pas la discretisation de l’espace d’etats du reseau associe en temps dense.

Nous pouvons approfondir ces resultats de la maniere suivante :

Theoreme 9.4. Meme en se restreignant a la sous-classe des reseaux de Petri a chro-nometres tels que le probleme de l’accessibilite de marquage est decidable, il existe des reseauxtels que les comportements de la semantique en temps discret ne rendent pas compte del’integralite des comportements en temps dense du reseau, en termes de trace non tempo-risee et d’accessibilite de marquage. Formellement, cela signifie qu’il existe un rRdPTI N =(P, T,•(.), (.)•, a, b,M0, I), with Sdense

N = (Qdense, q0, T,→dense) (resp. SdiscreteN = (Qdiscrete, q0,

T,→discrete)) sa semantique en temps dense (respectivement en temps discret), tel que leprobleme de l’accessibilite pour N est decidable et Qdiscrete ( Disc(Qdense).

Page 136: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

130 Calcul symbolique de l’espace d’etats des SwPN en temps discret

Autrement dit, meme dans l’hypothese ou l’on se restreint a des reseaux pour lesquelsl’espace d’etats est calculable, il est possible d’exhiber un reseau N (par exemple, le reseaude la figure 9.1 est tel qu’en temps discret, contrairement a ce qui est le cas en temps dense,l’analyse du reseau ne conduit jamais au tir de in time) tel que la discretisation de l’espaced’etats de la semantique dense est differente de l’espace d’etats de la semantique discrete.Formellement, il existe une classe d’etats C = (M,D) de la semantique en temps dense Sdense

Ntel qu’il existe un etat (M, θ) ∈ C (ou θ est un point entier de D) tel que (M, θ) n’appartientpas a l’espace d’etats de la semantique en temps discret Sdiscrete

N .

Preuve. Exhibons maintenant un tel rRdPTI. Considerons le reseau N = (P, T,•(.), (.)•, a, b,M0, I) de la figure 9.1.

Analysons son comportement. Les espaces d’accessibilite en semantique en temps dense(conduisant a 31 classes differentes) et en semantique en temps discret sont calculables.

En temps dense, l’execution suivante est notamment possible :

{p1, p8}θ(guess) = 0θ(r) = 0

0.5−→{p1, p8}θ(guess) = 0.5θ(r) = 0.5

guess−→

{p2, p5, p8}θ(c) = 0θ(s) = 0θ(r) = 0.5

3.5−→

{p2, p5, p8}θ(c) = 3.5θ(s) = 3.5θ(r) = 4

r−→

{p2, p5, p7, p9}θ(c) = 3.5θ(s) = 3.5θ(t) = 0

0.5−→

{p2, p5, p7, p9}θ(c) = 3.5θ(s) = 4θ(t) = 0.5

s−→

{p2, p6, p7, p9}θ(c) = 3.5θ(t) = 0.5θ(reset) = 0

reset−→{p2, p9}θ(c) = 3.5θ(t) = 0.5

0.5−→

{p2, p9}θ(c) = 4θ(t) = 1

c−→{p3, p9}θ(u) = 0θ(t) = 1

3−→{p3, p9}θ(u) = 3θ(t) = 4

t−→{p3, p10}θ(u) = 3θ(test) = 0

1−→

{p3, p10}θ(u) = 4θ(test) = 1

u−→{p4, p10}θ(test) = 1θ(too early) = 0

test−→

{p4, p11}θ(too early) = 0θ(too late) = 0θ(in time) = 0

in time−→ {pgoal}

Ramene dans le contexte d’une analyse en temps dense fonde sur le graphe des classesd’etats etendu aux reseaux de Petri a chronometres [BLRV07], ce comportement corresponda l’execution symbolique suivante :

{p1, p8}0 ≤ θ(guess) ≤ 1θ(r) = 4

guess−→

{p2, p5, p8}3 ≤ θ(r) ≤ 4θ(s) = 4θ(c) = 4

r−→

{p2, p5, p7, p9}0 ≤ θ(s) ≤ 10 ≤ θ(c) ≤ 1θ(s) = θ(c)θ(t) = 4

s−→

{p2, p6, p7, p9}0 ≤ θ(c) ≤ 1θ(c) + θ(t) = 4θ(reset) = 0

reset−→

{p2, p9}0 ≤ θ(c) ≤ 1θ(c) + θ(t) = 4

c−→{p3, p9}2 ≤ θ(t) ≤ 4θ(u) = 4

t−→{p3, p10}θ(test) = 10 ≤ θ(u) ≤ 2

u−→{p4, p10}0 ≤ θ(test) ≤ 1θ(too early) = 0

test−→

Page 137: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

9.4 Espace d’etats symbolique des SwPN en temps discret 131

{p4, p11}θ(too early) = 0θ(too late) = 0θ(in time) = 0

in time−→ {pgoal}

Notre but est de prouver qu’a contrario de l’analyse du reseau dote de la semantique entemps dense Sdense

N , l’execution du modele dote de la semantique en temps discret SdiscreteN

n’aboutit jamais au tir de in time. Pour ce faire, il suffit d’envisager l’integralite des executionspossibles dans Sdiscrete

N , ce qui ne pose pas de souci majeur :– Lorsque guess est tiree a 0, toutes les traces resultantes se terminent par le tir detoo early ;

– A contrario, lorsque guess est tiree a 1, c’est par le tir de too late que se terminenttoutes les traces resultantes ; �

La specificite du reseau que l’on propose reside dans l’arc inhibiteur qui bloque le chro-nometre associe a la transition c aussi longtemps que la transition reset (et de fait, s, etantdonne que reset est tiree en temps nul) n’est pas tiree. Cette inhibition est la source d’undecalage temporel entre la sous-partie haute du reseau et sa sous-partie basse (qui ont toutesdeux une structure similaire) : si guess est tiree a 0, alors on peut dire que la sous-partiehaute prend de l’avance par rapport a la sous-partie basse ; au contraire, si guess est tiree a1, la sous-partie haute est en retard. Le seul moyen pour que ces deux-parties soient en phaseest de voir guess franchie a 0.5 : la structure du reseau assure des lors une evolution pa-rallele et conjointe des deux branches, de sorte que p4 et p11 seront marquees simultanement,permettant le tir de in time.

Il en decoule le resultat suivant :

Theoreme 9.5. Meme pour la sous-classe des reseaux de Petri a chronometres dont l’espaced’etats est calculable, l’espace d’etats d’un reseau dote d’une semantique de temps discret n’estpas la discretisation de l’espace d’etats du reseau associe en temps dense.

On deduit le theoreme suivant du reseau de la figure 9.1 :

Theoreme 9.6. Lors de l’analyse d’un reseau de Petri a chronometres en temps dense parune methode symbolique, les points entiers d’un domaine temporel d’une classe d’etats n’ap-partiennent pas forcement tous a l’espace d’etat du reseau associe en temps discret. Formelle-ment, cela signifie qu’il peut exister une classe d’etats C = (M,D) de Sdense

N telle qu’il existe(M, θ) ∈ Disc(C) et (M, θ) n’appartient pas a l’espace d’etats de Sdiscrete

N .

Cette propriete peut etre reformulee de la maniere suivante : au sein d’un domaine tem-porel, il peut exister des points entiers dont tous les predecesseurs sont des points non-entiers. Cela signifie que, dans le cas particulier des reseaux de Petri a chronometres, lademarche consistant a discretiser les classes d’etats de la semantique en temps dense Sdense

Npour recuperer l’espace d’etats de Sdiscrete

N est fausse.

Preuve. Pour prouver ce resultat, repartons de l’analyse basee sur le graphe des classesque nous avons proposee precedemment pour le reseau de la figure 9.1. Considerons la traceguess.r.s.reset qui aboutit a la classe suivante :

Page 138: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

132 Calcul symbolique de l’espace d’etats des SwPN en temps discret

{p2, p9}0 ≤ θ(c) ≤ 1θ(c) + θ(t) = 4

En tirant c depuis cette classe, on arrive a la classe suivante :

{p3, p9}2 ≤ θ(t) ≤ 4θ(u) = 4

Notre propos est de montrer que le point entier {θ(t) = 3, θ(u) = 4} n’a pas de predecesseuren temps discret. Si on etudie la classe precedant le tir de c, on remarque qu’elle ne comporteque deux points aux coordonnees entieres : A, de coordonnees {θ(c) = 0, θ(t) = 4}, et B, decoordonnees {θ(c) = 1, θ(t) = 3} (qui sont, eux, tous deux bien associes a des etats effectifsdu reseau dote d’une semantique en temps discret). Il est immediat que le successeur entemps discret de A est {θ(t) = 4, θ(u) = 4} et celui de B est {θ(t) = 2, θ(u) = 4}. Ayantexhibe l’ensemble des successeurs en temps discret des points entiers du domaine initial, il estimmediat que le point entier {θ(t) = 3, θ(u) = 4} n’a pas de predecesseur entier.

9.4.2 Une condition suffisante pour que la discretisation de l’espace d’etatsdu reseau en temps dense et l’espace d’etats du reseau en tempsdiscret coıncident

Etendons le theoreme 9.1 aux reseaux de Petri a chronometres :

Theoreme 9.7. Soit N un reseau de Petri temporel a chronometres. Soit C une des classesd’etats de la semantique en temps dense du reseau Sdense

N telle que C est un couple constituede la donnee d’un marquage et d’une DBM : C = (M,DBM). Soit tf une transition tirablea partir de C. L’ensemble des successeurs en temps discret des points entiers de DBM etl’ensemble des points entiers du successeur en temps dense de DBM se confondent, c’est-a-dire nextdiscrete(Disc(DBM)) = Disc(nextdense(DBM))

Preuve. Soit C ′ = (M ′, D′) une classe d’etats du reseau de Petri a chronometres N . SoitC = (M,D) sa classe parente par le tir d’une transition t1. Dans le cadre de cette preuve,nous considerons un domaine avec 4 variables (car cela nous permet de faire apparaıtre toutesles combinaisons d’inequations possibles), mais la demonstration peut facilement etre etenduea n variables. Chaque transition sensibilisee t1, t2 , t3 et t4 se voit associee aux variables θ1,θ2, θ3 et θ4.

A des fins de simplification, nous allons travailler sur des domaines elementaires. Nousvoulons dire par la que les variables θ2, θ3 et θ4 ne peuvent evoluer que dans des intervallesd’amplitude au maximum egale a 1. L’extension de la procedure de demonstration au casgeneral ou ces variables sont bornees par deux entiers sans condition sur leur difference est,la encore, immediate.

La preuve exhaustive exige de considerer toutes les combinaisons possibles d’inequations.Les cas resultants ont de grandes similitudes les uns par rapport aux autres, de sorte que

Page 139: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

9.4 Espace d’etats symbolique des SwPN en temps discret 133

nous ne detaillerons ici qu’une configuration. Celle-ci est significative car elle aboutit a lageneration d’un domaine temporel qui ne peut pas etre mis sous la simple forme d’une DBM.

Dans le cas qui nous interesse ici, nous supposons que t1, t2 et t3 sont actives et que t4 nel’est pas. Enfin, nous supposons que t1 est tirable, que le tir de t1 depuis la classe C conduita la classe C ′ et que t2 reste sensibilisee dans C ′.

Nous supposons enfin que le domaine initial D, dans sa forme canonique, peut etre ecritde la maniere suivante :

D =

α1 ≤ θ1 ≤ β1, α2 ≤ θ2 ≤ α2 + 1,α3 ≤ θ3 ≤ α3 + 1, α4 ≤ θ4 ≤ α4 + 1,−γ41 ≤ θ1 − θ4

(9.1)

Nous supposons ici que γ41 = α4 − α1.

Pour les besoins de la demonstration, nous allons decomposer l’intervalle dans lequel latransition t1 peut etre tiree en un nombre fini de segments d’amplitude 1. Autrement dit, nousdecomposons D =

⋃Di en une union finie de DBM Di dont les seules differences au niveau du

systeme d’inequations resident dans la premiere ligne : α1 ≤ θ1 ≤ α1+1, α1+1 ≤ θ1 ≤ α1+2,α1 + 2 ≤ θ1 ≤ α1 + 3, . . ., β1 − 1 ≤ θ1 ≤ β1.

La transition t1 est tirable depuis D ce qui signifie qu’il existe au moins un point de D enlequel la transition est tirable. Le point suivant est conforme a ces besoins : {θ1 = α1, θ2 =α2 + 1, θ3 = α3 + 1, θ4 = α4}. Ce qui implique que t1 est tirable depuis D1.

Considerons D1 et son systeme d’inequations associe :

D1 =

α1 ≤ θ1 ≤ α1 + 1, α2 ≤ θ2 ≤ α2 + 1,α3 ≤ θ3 ≤ α3 + 1, α4 ≤ θ4 ≤ α4 + 1,−γ41 ≤ θ1 − θ4

(9.2)

Nous allons donc calculer le domaine de la classe obtenue a partir de D1 par le tir de t1.

La premiere etape consiste a effectuer les changements de variables θi ← θ′i+θ1 pour toutesles transitions actives sauf la transition desensibilisee t1. Nous ajoutons ensuite les inequations∀j, θ′j ≥ 0. Enfin, nous eliminons la variable θ1 en appliquant la methode de Fourier-Motzkin.

Finalement, nous obtenons le domaine D′1 suivant :

max{0, α2 − α1 − 1} ≤ θ′2 ≤ α2 − α1 + 1,max{0, α3 − α1 − 1} ≤ θ′3 ≤ α3 − α1 + 1,α4 ≤ θ4 ≤ α4 + 1,α2 − α3 − 1 ≤ θ′2 − θ′3 ≤ α2 − α3 + 1,θ′2 + θ4 ≤ α2 + α4 − α1 + 1,θ′3 + θ4 ≤ α3 + α4 − α1 + 1

(9.3)

Les deux dernieres inequations ne sont pas redondantes. Autrement dit, il n’est pas possiblede modeliser un tel systeme avec une DBM.

Le fait que t1 est tirable depuis D1 ne signifie pas pour autant que la transition est tirablesur l’ensemble du domaine D1. Il nous faut ainsi distinguer deux cas :

Page 140: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

134 Calcul symbolique de l’espace d’etats des SwPN en temps discret

– la transition t1 est tirable sur l’integralite du domaine D1 ;– la transition t1 n’est tirable que sur une portion du domaine D1, au moins au point{θ1 = α1, θ2 = α2 + 1, θ3 = α3 + 1, θ4 = α4}

Nous commencerons par supposer que t1 est tirable depuis chaque point de D1. Celasignifie, entre autres, que t1 est tirable au point {θ1 = α1 + 1, θ2 = α2, θ3 = α3, θ4 = α4}.Nous en deduisons que α1 + 1 ≤ α2 et que α1 + 1 ≤ α3. Cela nous permet ainsi de simplifierl’ecriture du domaine D′

1 en retirant les max{...} de nos inequations.

Nous allons montrer que tous les points de D′1 aux coordonnees entieres ont au moins un

predecesseur ayant lui aussi toutes ses coordonnees entieres dans D1.

Pour ce faire, enumerons l’ensemble des points entiers deD′1 et citons un de leur predecesseur

dans D1 ayant toutes ses coordonnees entieres :– {θ′2 = α2 − α1 − 1, θ′3 = α3 − α1 − 1, θ4 = α4} ∈ D′

1 a notamment pour predecesseur{θ1 = α1 + 1, θ2 = α2, θ3 = α3, θ4 = α4} ∈ D1

– {θ′2 = α2 − α1 − 1, θ′3 = α3 − α1 − 1, θ4 = α4 + 1} a notamment pour predecesseur{θ1 = α1 + 1, θ2 = α2, θ3 = α3, θ4 = α4 + 1} ∈ D1

– {θ′2 = α2 − α1 − 1, θ′3 = α3 − α1, θ4 = α4} a notamment pour predecesseur {θ1 =α1 + 1, θ2 = α2, θ3 = α3 + 1, θ4 = α4} ∈ D1

– {θ′2 = α2 − α1 − 1, θ′3 = α3 − α1, θ4 = α4 + 1} a notamment pour predecesseur {θ1 =α1 + 1, θ2 = α2, θ3 = α3 + 1, θ4 = α4 + 1} ∈ D1

– {θ′2 = α2 − α1, θ′3 = α3 − α1 − 1, θ4 = α4} a notamment pour predecesseur {θ1 =

α1 + 1, θ2 = α2 + 1, θ3 = α3, θ4 = α4} ∈ D1

– {θ′2 = α2 − α1, θ′3 = α3 − α1 − 1, θ4 = α4 + 1} a notamment pour predecesseur {θ1 =

α1 + 1, θ2 = α2 + 1, θ3 = α3, θ4 = α4 + 1} ∈ D1

– {θ′2 = α2 − α1, θ′3 = α3 − α1, θ4 = α4} a notamment pour predecesseur {θ1 = α1, θ2 =

α2, θ3 = α3, θ4 = α4} ∈ D1

– {θ′2 = α2 − α1, θ′3 = α3 − α1, θ4 = α4 + 1} a notamment pour predecesseur {θ1 =

α1 + 1, θ2 = α2 + 1, θ3 = α3 + 1, θ4 = α4 + 1} ∈ D1

– {θ′2 = α2−α1, θ′3 = α3−α1+1, θ4 = α4} a notamment pour predecesseur {θ1 = α1, θ2 =

α2, θ3 = α3 + 1, θ4 = α4} ∈ D1

– {θ′2 = α2−α1+1, θ′3 = α3−α1, θ4 = α4} a notamment pour predecesseur {θ1 = α1, θ2 =α2 + 1, θ3 = α3, θ4 = α4} ∈ D1

– {θ′2 = α2 − α1 + 1, θ′3 = α3 − α1 + 1, θ4 = α4} a notamment pour predecesseur {θ1 =α1, θ2 = α2 + 1, θ3 = α3 + 1, θ4 = α4} ∈ D1

Nous constatons que tous les points aux coordonnees entiers de D′1 ont, dans D1, au moins

un predecesseur aux coordonnees toutes entieres.

Envisageons desormais le cas ou t1 n’est pas tirable sur tout le domaine D1. Cela signifiequ’il existe δ ∈ [α1, α1 + 1] (δ 6= α1 + 1, sinon on est ramene au cas precedent) tel que t1 esttirable sur [α1, δ] et n’est pas tirable sur ]δ, α+ 1].

Dans ce cas, t1 n’est pas tirable au point {θ1 = α1 + 1, θ2 = α2 + 1, θ3 = α3 + 1, θ4 = α4},ce qui signifie α1 + 1 > α2 + 1 ou α1 + 1 > α3 + 1.

Page 141: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

9.4 Espace d’etats symbolique des SwPN en temps discret 135

Si α1 + 1 > α2 + 1 , alors α1 > α2, d’ou α1 ≥ α2 + 1. Par ailleurs, puisque t1 est tirableen {θ1 = α1, θ2 = α2 + 1, θ3 = α3 + 1, θ4 = α4}, nous avons α1 ≤ α2 + 1 et α1 ≤ α3 + 1. Nousen deduisons alors que α1 = α2 + 1 et α2 ≤ α3.

Nous allons suivre la meme demarche que precedemment pour prouver que tous les pointsaux coordonnees entiers de D′

1 ont, dans D1, au moins un predecesseur aux coordonneestoutes entieres.

Dans le cas qui nous occupe ici, D1 s’ecrit la maniere simplifiee suivante :

D1 =

α2 + 1 ≤ θ1 ≤ α2 + 2, α2 ≤ θ2 ≤ α2 + 1,α3 ≤ θ3 ≤ α3 + 1, α4 ≤ θ4 ≤ α4 + 1,−γ41 ≤ θ1 − θ4

(9.4)

Quant a D′1, il s’ecrit :

θ′2 = 0,max{0, α3 − α2 − 1} ≤ θ′3 ≤ α3 − α2,θ4 = α4,θ′3 + θ4 ≤ α3 + α4 − α2

(9.5)

Dans un premier temps, nous supposons α3 ≥ α2 + 1.

Enumerons donc l’ensemble des points entiers de D′1 et citons un de leur predecesseur

dans D1 ayant toutes ses coordonnees entieres :– {θ′2 = 0, θ′3 = α3 − α2 − 1, θ4 = α4} ∈ D′

1 a notamment pour predecesseur {θ1 =α2 + 1, θ2 = α2 + 1, θ3 = α3, θ4 = α4} ∈ D1

– {θ′2 = 0, θ′3 = α3−α2, θ4 = α4} ∈ D′1 a notamment pour predecesseur {θ1 = α2 +1, θ2 =

α2 + 1, θ3 = α3 + 1, θ4 = α4} ∈ D1

Dans le cas ou α3 < α2 + 1 :– Si α3 = α2, alors le domaine D′

1 ne comporte qu’un seul point entier : {θ′2 = 0, θ′3 =0, θ4 = α4} ∈ D′

1 ayant notamment comme predecesseur {θ1 = α2 + 1, θ2 = α2 + 1, θ3 =α3, θ4 = α4} ∈ D1.

– Si α3 < α2, alors α3 +1 < α2 +1, ce qui signifie que t1 n’est pas tirable depuis D1. Celacontredit notre hypothese.

Nous avons donc montre que, dans tous les cas, tous les points entiers de D′1 ont au moins

un predecesseur dans D1 ayant toutes ses coordonnees entieres.

Nous reiterons la meme procedure de raisonnement pour chaque domaine exprime sousforme de domaine Di tel que D =

⋃Di. Nous prouvons ainsi que tous les points entier d’un

domaine D′i possedent au moins un predecesseur dans Di aux coordonnees toutes entieres.

Il nous reste toutefois un dernier point a prouver pour achever la demonstration : est-cequ’il est equivalent d’etudier le comportement du reseau sur D et sur l’union de DBM

⋃Di ?

Nous apportons une reponse positive a cette question.

Page 142: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

136 Calcul symbolique de l’espace d’etats des SwPN en temps discret

En effet, apres le tir de t1, le successeur en temps dense de D est le suivant :

max{0, α2 − β1} ≤ θ′2 ≤ α2 − α1 + 1,max{0, α3 − β1} ≤ θ′3 ≤ α3 − α1 + 1,α4 ≤ θ4 ≤ α4 + 1,α2 − α3 − 1 ≤ θ′2 − θ′3 ≤ α2 − α3 + 1,θ′2 + θ4 ≤ α2 + α4 − α1 + 1,θ′3 + θ4 ≤ α3 + α4 − α1 + 1

(9.6) �

Il vient de maniere immediate que D′ =⋃D′

i. Autrement dit, nous confirmons la validitede notre demarche consistant a decomposer le domaine D en une union finie de DBM.

Dans le chapitre 4, nous avons etudie les conditions dans lesquelles apparaissent des do-maines temporels polyedraux ne pouvant pas etre exprimes a l’aide de DBM ; nous avonsnotamment exhibe une condition necessaire et suffisante caracterisant ce type de configura-tion. Il suit le corollaire suivant :

Corollaire 9.2. Soit N un reseau de Petri a chronometres. Soit C une des classes d’etatsde sa semantique en temps dense Sdense

N telle que C est un couple constitue de la donneed’un marquage et d’une DBM : C = (M,DBM). Soit tf une transition tirable a partir de C.L’enveloppe non convexe de Disc(nextdense(DBM)) est une union de DBM.

En effet, nous avons precedemment prouve que nextdiscrete(Disc(DBM)) =Disc(nextdense(DBM)). Or nextdiscrete(Disc(DBM)) est un ensemble de points (nous en pro-fitons pour rappeler qu’un point est un cas particulier de DBM). Le resultat suit immediatement.Nous avons egalement le corollaire suivant :

Corollaire 9.3. Soit N un reseau de Petri a chronometres. Nous cherchons a obtenir l’espaced’etats de la semantique en temps discret Sdiscrete

N du reseau en le reliant au calcul a la volee del’espace d’etats de Sdense

N . Aussi longtemps qu’aucune classe de SdenseN ne satisfait la condition

necessaire et suffisante du theoreme 7.3 (exhibe dans le chapitre 4), les proprietes suivantessont verifiees :

– La discretisation de l’espace d’etats de SdenseN aboutit a des etats qui appartiennent tous

a l’espace d’etats de SdiscreteN .

– L’ensemble des traces non-temporisees de SdenseN identifiees est inclus dans l’ensemble

des traces non-temporisees de SdiscreteN .

9.4.3 Approche symbolique pour le calcul de l’espace d’etats des reseauxde Petri a chronometres en temps discret

Dans le paragraphe precedent, nous avons etabli le resultat suivant : aussi longtempsque le calcul de l’espace d’etats d’un reseau en temps dense ne fait intervenir que des do-maines temporels pouvant etre exprimes sous forme de DBM, l’ensemble des points issusde la discretisation de l’espace d’etats resultant conduit a des etats qui appartiennent tousa l’espace d’etats du modele associe plonge en semantique discrete. Cette propriete n’estplus garantie des lors que les domaines temporels symboliques font intervenir des polyedresgeneraux ne pouvant pas etre mis sous forme de DBM.

Page 143: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

9.4 Espace d’etats symbolique des SwPN en temps discret 137

Dans le chapitre 4, nous avons justement mis en evidence une condition necessaire etsuffisante etablissant les cas dans lesquels un polyedre ne pouvant etre exprime sous la formed’une DBM intervient lors du calcul de l’espace d’etats d’un reseau de Petri a chronometres.

Soit N un reseau de Petri a chronometres. Nous cherchons a calculer symboliquementl’espace d’etats associe a sa semantique de temps discret Sdiscrete

N . Pour ce faire, nous allonsrecourir aux classes d’etats symboliques que nous avons introduites dans la definition 9.3.Considerons la classe d’etats initiale de N dote d’une semantique de temps dense, (M0, D0).Il est immediat qu’il s’agit d’une classe d’etats symbolique de Sdiscrete

N que nous notons Csymb0 .

Nous calculons les successeurs de cette classe de la meme maniere qu’on calculerait ses suc-cesseurs en temps dense. Nous iterons le processus tant que l’espace d’etats calcule ainsi a lavolee ne fait intervenir que des DBM. Mais des qu’un polyedre non-DBM apparaıt dans ledomaine de tir Poly d’une classe d’etats Cpoly = (Mpoly, Poly), alors on le decompose en uneunion de DBM DBM split(Poly) =

⋃Dsplit

i .

En pratique, si un domaine Poly ne peut pas etre ecrit sous la forme d’une DBM, c’estque certaines de ses variables sont impliquees dans des inequations plus compliquees que desimples differences bornees. Or notre but est ici de calculer non pas l’espace d’etats exact de lasemantique temps dense Sdense

N , mais celui de SdiscreteN ; nous pouvons, par consequent, prendre

le parti de faire disparaıtre les inequations sus-citees en envisageant toutes les valeurs entierespossibles que peuvent revetir ces variables. Il en resulte une decomposition du polyedre Polyen autant de DBM que necessaires pour conserver l’integralite des etats de la semantiquediscrete de N . La decomposition doit donc garantir la propriete suivante : Disc(Poly) =⋃Disc(Dsplit

i )

La procedure DBM split(.) de decomposition d’un polyedre en une union de DBM(preservant la proprieteDisc(Poly) =

⋃Disc(Dsplit

i )) n’est pas unique. Un algorithme evident(mais pas veritablement efficace) consiste a decomposer le polyedre Poly en l’union de tous sespoints entiers Disc(Poly) (cf. corollaire 9.2). Une approche plus subtile consiste a decomposerle polyedre en fonction des variables impliquees dans les contraintes polyedrales non-DBMdu domaine temporel. La figure 9.2 nous permet d’illustrer les enjeux lies a la fonctionDBM split(.) : nous proposons une decomposition possible (parmi d’autres), sous la formedes ensembles representes a l’aide des lignes pointilles. Beaucoup d’autres solutions pour-raient etre envisagees pour la fonction de decomposition. Nous reviendrons sur ce sujet dansle paragraphe suivant.

Au terme de ce calcul, la discretisation de l’ensemble des classes d’etats symboliquesidentifiees permet d’obtenir l’espace d’etats de Sdiscrete

N comme nous l’avons montre dans leparagraphe precedent (cf. corollaire 9.3). Le graphe des classes d’etats symbolique est doncune abstraction de l’espace d’etats de N dote d’une semantique de temps discret. Cetteabstraction preserve les proprietes temporelles lineaires.

La procedure generale pour le calcul symbolique de l’espace d’etats des reseaux en tempsdiscret est resumee par l’algorithme 9.1.

Theoreme 9.8. L’algorithme 9.1 est correct, en termes d’accessibilite de marquage, d’acces-sibilite d’etat et de langage, pour les reseaux de Petri a chronometres dotes d’une semantiquede temps discret. La terminaison de l’algorithme est assuree pour les reseaux de Petri a chro-nometres bornes en temps discret.

Page 144: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

138 Calcul symbolique de l’espace d’etats des SwPN en temps discret

θ1

θ2 Notation

Poly

DBM split(Poly)

Fig. 9.2 – Exemple de fonction de decomposition. Poly represente le domaine temporel as-socie a une classe d’etats symboliques d’un reseau de Petri a chronometres en temps discret.DBM split(Poly) correspond a une decomposition (parmi d’autres) du polyedre en une unionde DBM telle que Disc(Poly) = Disc(DBM split(Poly)).

Preuve. Le resultat decoule des theoremes precedents et, plus particulierement, du theoreme9.7 et du corollaire 9.3. La convergence de l’algorithme est une consequence de la decidabilitedu probleme de l’accessibilite d’etat et de marquage pour les reseaux de Petri a chronometresbornes en temps discret. �

Nous rappelons qu’un calcul classique de l’espace d’etats d’un reseau de Petri a chro-nometres (borne) ne termine pas necessairement. Il a toutefois ete prouve que ce calcul setermine lorsque nous considerons les reseaux associes munis d’une semantique de temps dis-cret. La difference entre notre demarche et le calcul classique en temps dense reside dans laprocedure de decoupage de tout polyedre non-DBM en unions de DBM. C’est cette procedurequi garantit la terminaison de l’algorithme que nous proposons sur les reseaux en temps dis-cret.

9.5 Verification de proprietes sur les reseaux de Petri a chro-nometres en temps discret

9.5.1 Vision informelle

L’abstraction que nous avons mise en evidence au paragraphe precedent a de nombreuxchamps d’application : elle permet notamment d’utiliser les algorithmes et les outils dediesaux reseaux de Petri temporels et bases sur les DBM afin de verifier des proprietes sur lesreseaux de Petri a chronometres dotes d’une semantique de temps discret.

Page 145: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

9.5 Verification de proprietes 139

Algorithme 9.1 Algorithme symbolique pour le calcul de l’espace d’etats des reseaux dePetri a chronometres dotes d’une semantique de temps discretPassed← ∅Waiting ← {(M0, D0)}tant que Waiting 6= ∅ faire

(M,D)← pop(Waiting)Passed← Passed ∪ (M,D)pour tout tf tirable depuis (M,D) faireM ′ ← M − max(�tf ×M t,•tf ) + t•fsi la condition 7.3 du chapitre 4 n’est pas satisfaite alorsD′ ← nextdense(D, tf ) [RL04]si (M ′, D′) /∈ Passed alorsWaiting ←Waiting ∪ {(M ′, D′)}

fin sisinon⋃

(D′i)i∈[1,...,n] ← DBM split(nextdense(D, tf ) [RL04])

pour tout i ∈ [1, . . . , n] fairesi (M ′, D′

i) /∈ Passed alorsWaiting ←Waiting ∪ {(M ′, D′

i)}fin si

fin pourfin si

fin pourfin tant que

Nous utilisons notamment le logiciel Romeo [GLMR05], developpe pour l’analyse desreseaux de Petri temporels, que nous presentons plus longuement dans le chapitre suivant. Ilintegre notamment le calcul de l’espace d’etats et la verification « a la volee » de formulesTCTL. Il est des lors possible de verifier des proprietes temps reel exprimees a l’aide de TCTLsur les reseaux de Petri a chronometres bornes en temps discret via une adaptation tres simplede l’outil.

Donnons-en une appreciation intuitive. Dans [Gar05, BGR06], les auteurs proposent unedemarche pour verifier des proprietes exprimees dans la logique TCTL (ou dans une sous-classe de la logique TCTL) sur les reseaux de Petri temporels via le graphe des zones. Cettemethode est naturellement etendue du graphe des classes [HB06]. En fait, la demarche suivieest generale : elle s’applique a toutes les extensions temporisees des reseaux de Petri tellesque les domaines de tir de toutes les classes d’etats du modele sont des DBM. D’autre part,l’algorithme 9.1 decrit comment calculer l’espace d’etats de reseaux de Petri a chronometresen temps discret en n’utilisant que des DBM. La combinaison des deux procedures permetd’obtenir une methode elegante pour verifier des formules TCTL sur les reseaux de Petri achronometres en temps discret.

Nous allons, dans la suite de cette partie, formaliser cette demarche. Ce travail a eterealise conjointement avec Gilles Benattar dans le cadre d’un stage de Master que j’encadrais[Ben07].

Page 146: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

140 Calcul symbolique de l’espace d’etats des SwPN en temps discret

9.5.2 Procedure formelle pour la verification de formules TCTL sur lesreseaux de Petri a chronometres en temps discret

La methode s’inspire de celle definie dans [HB06, BGR06]. Nous integrons au reseau dePetri etudie un observateur ; celui-ci nous permet de remplacer la verification de contraintestemporelles par la verification de proprietes de marquage. Ceci fait, nous calculons l’espaced’etats du reseau suivant l’algorithme 9.1. L’etude de formules TCTL sur le reseau initialrevient alors a l’analyse de formules CTL sur le reseau muni de l’observateur.

Les algorithmes formels permettant la verification de formules TCTL sont resumes dansl’annexe D. Nous aboutissons au theoreme suivant :

Theoreme 9.9. La demarche de verification de proprietes TCTL que nous proposons estvalide sur les reseaux de Petri a chronometres dotes d’une semantique de temps discret.

La preuve formelle de ce resultat figure dans l’annexe D.5. Elle consiste a demontrerque la methode que nous presentons est correcte, autrement dit : etant donne un reseaude Petri a chronometres dote d’une semantique temps discret, une propriete TCTL est vraie(respectivement fausse) si elle est vraie (respectivement fausse) sur l’espace d’etats (obtenu vial’algorithme 9.1) du reseau muni des observateurs definis de maniere adequate. Pour ce faire,nous montrons que la verification de formules TCTL sur un reseau de Petri a chronometres entemps discret se ramene a la verification de proprietes qui ne dependent que des sequences detirs des transitions (et donc de l’evolution du marquage) du reseau enrichi avec les observateursnecessaires. De fait, comme la procedure de calcul de l’espace d’etats exposee dans l’algorithme9.1 est correcte, il suit que la verification de formules TCTL l’est egalement.

L’implantation pratique des algorithmes permettant de verifier des formules TCTL surles modeles en temps discret a ete realisee par Gilles Benattar dans le cadre de son stage deMaster [Ben07]. Romeo est donc dorenavant capable de verifier des proprietes temporellesquantitatives sur les reseaux de Petri a chronometres dotes d’une semantique de temps discret.

Afin d’ameliorer les performances de ces algorithmes, nos recherches portent desormais surl’amelioration de l’efficacite de la fonction de decoupage d’un polyedre en DBM. Ces travauxconsistent a envisager plusieurs procedures de decomposition et a comparer leur pertinence.

9.6 Conclusion

Apres avoir exhibe, dans le chapitre precedent, les limites des approches enumerativesdu calcul de l’espace d’etats des reseaux de Petri a chronometres dotes d’une semantique detemps discret, nous avons cherche a etablir une methode symbolique de determination del’espace d’etats. Nous avons ainsi etendu les methodes symboliques habituellement reserveesaux reseaux en temps dense au calcul de l’espace d’etats des reseaux en temps discret. L’ap-proche que nous proposons consiste a relier l’espace d’etats des reseaux en temps discret ala discretisation de l’espace d’etats du reseau associe dote d’une semantique de temps dense.Une telle methode est applicable directement sur une sous-classe des reseaux de Petri a chro-nometres (incluant les reseaux de Petri temporels) mais non sur la classe generale des reseauxde Petri a chronometres. En effet, sur cette sous-classe, l’espace d’etats d’un reseau en tempsdiscret se confond avec la discretisation de l’espace d’etats du reseau associe en temps dense.

Page 147: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

9.6 Conclusion 141

A contrario, dans le cas general, nous avons exhibe un reseau tel que ces deux ensemblesdifferent. Nous devons donc raffiner notre approche afin de parvenir a proposer une methodepermettant, dans tous les cas, de calculer symboliquement l’espace d’etats des reseaux entemps discret. Notre demarche repose sur la decomposition d’un polyedre general (corres-pondant aux informations temporelles d’un etat du reseau) en une union de polyedres plussimples (des DBM). L’efficacite de l’algorithme symbolique depend alors de la fonction quidecoupe les polyedres en unions de DBM. Cette decomposition permet notamment de verifierdes proprietes temporelles quantitatives exprimees dans la logique TCTL sur les modelesa chronometres en temps discret. La procedure a ete integree au logiciel Romeo (cf. cha-pitre 10). Elle justifie, en partie, le recours a une semantique de temps discret pour analyserle comportement de certains modeles a chronometres.

Page 148: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

142 Calcul symbolique de l’espace d’etats des SwPN en temps discret

Page 149: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Chapitre 10

Implementation : Romeo et Markg

ResumeLes differentes methodes etudiees au cours de la these ont ete implementees et integrees

dans l’atelier logiciel Romeo, dedie a la verification de reseaux de Petri temporels, et dansl’outil Markg, consacre au calcul de l’espace d’etats de reseaux de Petri non temporises. Dansce chapitre, nous presentons brievement les deux programmes.

L’outil Romeo a fait l’objet d’une publication dans la conference internationale CAV(Computer Aided Verification) en 2005 [GLMR05].

Page 150: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

144 Implementation : Romeo et Markg

Sommaire

10.1 Romeo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14510.1.1 Modeles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14510.1.2 Detail des fonctionnalites de Romeo . . . . . . . . . . . . . . . . . . 14510.1.3 Notre contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14610.1.4 Valorisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

10.2 Markg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14710.2.1 Modeles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14710.2.2 Fonctionnalites et principe . . . . . . . . . . . . . . . . . . . . . . . . 14810.2.3 Notre contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

Page 151: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

10.1 Romeo 145

10.1 Romeo

Initialement developpe par Olivier (H.) Roux au sein de l’equipe « Systemes Temps Reel »de l’IRCCyN, le logiciel Romeo [GLMR05, RLG+07] est un atelier pour l’analyse de systemestemps reel modelises a l’aide de reseaux de Petri temporels et de leur extension a chro-nometres. Le logiciel fonctionne sur les plates-formes Windows, Linux et MacOS X. Disponiblea l’adresse http://romeo.rts-software.org, il est distribue sous une licence libre CeCILL.

10.1.1 Modeles

Romeo permet de modeliser des systemes temps reel par le biais de deux formalismes :les reseaux de Petri temporels et une sous-classe des reseaux de Petri a chronometres, appeleereseaux de Petri temporels etendus a l’ordonnancement a priorites fixes.

10.1.1.1 Reseaux de Petri temporels

Les reseaux de Petri temporels ont ete definis par Merlin [Mer74]. Le temps est pris encompte au niveau des transitions par l’ajout d’un intervalle temporel specifiant les instantsde franchissement de la transition par rapport a l’instant ou la transition a ete nouvellementsensibilisee pour la derniere fois.

10.1.1.2 Reseaux de Petri temporels etendus a l’ordonnancement

Les reseaux de Petri temporels etendus a l’ordonnancement (ou Scheduling time Petrinets) constituent une sous-classe des reseaux de Petri a chronometres. Ils ont ete introduitspar Roux et Deplanche dans [RD02]. Ils etendent les reseaux de Petri temporels en incluantdans la semantique du modele la notion de chronometre et la politique d’ordonnancement dusysteme.

Le modele integre dans Romeo, les reseaux de Petri temporels etendus a l’ordonnancementa priorites fixes, se definit par l’ajout de deux nouveaux attributs associes aux places dureseau : l’un designe l’identite du processeur auquel la place est affectee, l’autre la priorite,sur ce processeur, de la tache dont le modele contient cette place.

Romeo implante egalement, tant pour les reseaux de Petri temporels que pour leur exten-sion a l’ordonnancement, les arcs de reset. Comme nous l’avons vu dans ce manuscrit, ces arcspermettent de vider l’integralite des jetons contenus dans une place lors du tir d’une transition.Ils facilitent ainsi la modelisation des systemes possedant des fonctions de reinitialisation.

10.1.2 Detail des fonctionnalites de Romeo

Romeo se compose d’une interface graphique programmee en Tcl/Tk, d’une bibliothequepour la simulation des reseaux et d’un module de calcul, Mercution, programmes en C++.Il est dedie a la saisie, la simulation, le calcul de l’espace d’etats, la verification et le controledes reseaux de Petri temporels et de leur extension a chronometres dediee a la modelisationd’ordonnancements preemptifs, le tout en temps dense. Dans ce paragraphe, nous allonsrevenir plus precisement sur ces fonctionnalites.

Les personnes contribuant, ou ayant contribue, au developpement du logiciel sont lessuivantes : Olivier (H.) Roux, Didier Lime, Guillaume Gardey, Charlotte Seidner, Louis-MarieTraonouez et moi-meme.

Page 152: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

146 Implementation : Romeo et Markg

Calcul de l’espace d’etats. L’espace d’etats des reseaux de Petri temporels dotes d’unesemantique de temps dense peut etre determine, via Romeo, a l’aide du graphe des classesou du graphe des zones. Pour ce dernier, differentes approximations sont proposees dans lecas de reseaux de Petri temporels a dates de tir au plus tard infinies.

Les methodes issues du graphe des classes sont egalement implantees pour les reseauxde Petri temporels etendus a l’ordonnancement a priorites fixes, qu’il s’agisse de la surap-proximation basee sur les DBM, du calcul exact n’utilisant que des polyedres generaux ou ducalcul optimise que nous avons propose (cf. chapitre 4). Ces programmes reposent sur les bi-bliotheques Parma Polyhedra Library [BRZH02] pour la manipulation de polyedres generauxet la UPPAAL DBM Library [Dav07] pour les operations sur les DBM.

Enfin, sur les reseaux dotes d’une semantique de temps discret, Romeo propose uneimplantation effective de l’algorithme de calcul symbolique de l’espace d’etats presente auchapitre 9.

Simulation. Romeo permet de simuler le comportement des reseaux de Petri temporelsen utilisant la methode du graphe des classes [BD91, BM83] ou celle du graphe des zones[GRR06]. La meme fonctionnalite est proposee pour les reseaux de Petri temporels etendusa l’ordonnancement a priorites fixes, mais seulement dans le cadre du graphe des classes. Eneffet, la methode du graphe des zones n’a pas encore fait l’objet d’une extension aux reseauxde Petri a chronometres.

Traductions vers les automates temporises. Plusieurs traductions vers les automatestemporises sont proposees pour les reseaux de Petri temporels

– une traduction structurelle en un reseau d’automates temporises [CR06] ;– une traduction utilisant la technique du graphe des classes generant l’automate tempo-

rise des classes d’etats [LR03b].– une traduction utilisant la technique du graphe des zones donnant l’automate temporise

des marquages d’un reseau de Petri temporel borne [GRR06].Pour les reseaux de Petri temporels etendus a l’ordonnancement a priorites fixes, Romeointegre une traduction en un automate a chronometres [LR04].

Model-checking. Romeo offre une implantation pratique d’algorithmes pour la verificationde proprietes d’un fragment de la logique TCTL (Time Computation Tree Logic) dediee auxreseaux de Petri temporels (baptisee TPN-TCTL [BGR06]) en temps dense. Il est ainsi pos-sible de verifier des proprietes temporelles quantitatives a la volee sur ce modele.

Traductions des modeles en temps discret. Romeo integre les traductions des reseauxde Petri temporels etendus a l’ordonnancement en temps discret vers Markg et FAST tellesqu’elles ont ete presentees dans le chapitre 5.

10.1.3 Notre contribution

Resumons, en quelques lignes, notre apport au logiciel Romeo :– Programmation du calcul exact de l’espace d’etats des reseaux de Petri temporels

etendus a l’ordonnancement a priorites fixes en temps dense, dans le cas ou nous n’uti-lisons que des polyedres generaux, puis dans le cas ou nous recourons aux polyedresgeneraux seulement lorsque c’est necessaire.

Page 153: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

10.2 Markg 147

– Integration des procedures correspondantes dans la bibliotheque de simulation ;– Programmation des traductions vers Markg et FAST des reseaux de Petri temporels

etendus a l’ordonnancement a priorites fixes dotes d’une semantique de temps discret.Nos traductions sont optimises au sens ou nous minimisons le nombre de places et detransitions qu’elles font intervenir : ainsi, via une pre-analyse du reseau, chaque transi-tion qui ne sera jamais inhibee est traduite a l’aide du motif correspondant aux reseauxde Petri temporels classiques, et non pas via le motif plus complique correspondant auxreseaux a chronometres.

10.1.4 Valorisation

Romeo a vu le jour en 2000. Il a aujourd’hui atteint une maturite suffisante pour etre aucœur de collaborations academiques et industrielles :

– Romeo a ete integre a l’outil PEP de l’universite Ossietzky Oldenburg (Allemagne)[Old04], qui permet notamment une exportation des fichiers PEP vers le format d’entreede Romeo.

– En 2005, Romeo a ete evalue puis retenu (parmi 3 logiciels de model-checking) parDassault Aviation pour la verification de contraintes temporelles sur leurs systemesavioniques.

– En 2005-2006, Romeo a fait l’objet d’une collaboration avec l’entreprise Sodius, dansle cadre du Master de Charlotte Seidner (dont j’ai co-encadre le stage pratique avecOlivier (H.) Roux) portant sur la mise en œuvre d’une traduction preservant la bisimu-lation d’un modele d’architecture fonctionnelle de haut niveau vers les reseaux de Petritemporels. Ce travail a conduit a la signature d’une convention CIFRE qui permet al’etudiante de poursuivre ses recherches en these.

10.2 Markg

Initialement developpe par Pierre Molinaro au sein de l’equipe « Systemes Temps Reel » del’IRCCyN, le logiciel Markg [MDR02, MM06] est un outil dedie au calcul de l’espace d’etatsde reseaux de Petri non temporises. Le logiciel fonctionne sur les plates-formes Windows, Linuxet MacOS X. Disponible a l’adresse http://markg.rts-software.org, il est distribue sousune licence libre GPL.

10.2.1 Modeles

Markg permet l’analyse de reseaux de Petri non temporises classiques, mais aussi dereseaux de Petri etendus a l’aide de predicats. Nous entendons par la des reseaux pour lesquelsdes combinaisons de conditions booleennes sont associees en amont de chaque transition,precisant les configurations dans lesquelles une transition est tirable et, en aval, des affectationsur les variables du reseau. Les reseaux de Petri a arcs de reset et hyperarcs inhibiteurs quenous avons considere au cours de cette these constituent ainsi une sous-classe des modelesacceptes en entree par Markg.

Page 154: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

148 Implementation : Romeo et Markg

10.2.2 Fonctionnalites et principe

Markg est programme en C++. Il est dedie au calcul de l’espace d’etats des reseaux dePetri non temporises. Il determine ainsi le graphe des marquages d’un reseau de Petri, c’est-a-dire le graphe etiquete ou les etats correspondent aux differents marquages du reseau et lestransitions aux transitions du modele.

L’etat initial du graphe correspond au marquage initial du reseau. L’espace d’etats est deslors calcule via un algorithme en avant classique :

Algorithme 10.1 Algorithme en avant de calcul du graphe des marquages d’un reseau dePetri non temporiseReach = {M0}Explore = {M0}tant que Explore 6= ∅ faireM = recuperer un element de ExploreExplore = Explore \ {M}pour transition t ∈ T faire

si M ≥• t alorsM ′ = M + t• −• tVerifier que ∀Ma ∈ Reach,M ′ ≤Ma

si M ′ 6∈ Reach alorsReach = Reach ∪ {M ′}Explore = Explore ∪ {M ′}

fin sifin si

fin pourfin tant que

Au cours de l’execution de cet algorithme, l’ensemble Reach s’enrichit des differents mar-quages accessibles. L’ensemble Explore contient, quant a lui, les marquages accessibles quin’ont pas encore ete explores.

Markg repose sur des structures de donnees inspirees par les Diagrammes de DecisionBinaires (Binary Decision Diagrams, ou BDD) [Lee59] dont l’efficacite n’est plus a prouver.Les structures de donnees developpees par Pierre Molinaro specialement pour l’analyse desreseaux de Petri sont les suivantes :

– Les Vector Decision Diagrams (VDD) sont dedies au stockage des etats ;– Les Arithmetic Expression Decision Diagrams (AEDD) modelisent les fonctions d’inci-

dence •(.), (.)• et �(.).

Les VDD permettent de calculer, de maniere concise et efficace, chaque etat accessible al’aide d’une representation implicite des ensembles. Les principes majeurs sur lesquels reposentles VDD sont les suivants :

– tout ensemble de marquages est represente par un graphe ordonne acyclique et compact ;– un etat (c’est-a-dire une valeur du vecteur donnant le marquage de chaque place) admet

une unique representation : il est des lors aise de tester l’egalite entre deux ensemblesde marquages en effectuant une comparaison entre les adresses memoires auxquelles cesinformations sont stockees ;

Page 155: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

10.2 Markg 149

– l’implantation pratique est optimisee grace a l’utilisation d’un cache logiciel pour chaqueoperation.

Un nœud d’un VDD est caracterise par un identifiant de place, un entier representant lemarquage de la place, un pointeur en direction d’un premier nœud dans le cas ou le marquagede la place est egal au nombre donne, et un pointeur en direction d’un second nœud dansle cas ou le marquage de la place est strictement superieur au nombre donne. Deux nœudssupplementaires sont definis :

– NUL est un vecteur dont toutes les composantes sont nulles (il signifie que la rechercheest terminee ; autrement dit, les etats representes sont ceux dont on peut etablir unchemin jusqu’a NUL).

– VIDE represente un ensemble vide (il represente le fait qu’il n’y a pas d’etat correspon-dant a la condition donnee).

Nous illustrons ces principes sur l’exemple simple de VDD donne par la figure 10.1.

Fig. 10.1 – Representation sous la forme d’un VDD de l’ensemble des etats (0, 0), (0, 1), (1, 0)et (1, 1)

Un AEDD, quant a lui, est un graphe dont chaque nœud est caracterise par l’identifiant dela place (un entier positif qui identifie la place), une constante entiere, un pointeur en directiond’un premier nœud si le marquage de la place est superieur ou egal a la constante, un pointeuren direction d’un second nœud si le marquage est strictement inferieur a la constante. Commepour les BDD, un nœud VRAI et un nœud FAUX sont definis. Les AEDD permettent derepresenter de maniere elegante les conditions pour qu’une transition soit tirable. La figure10.2 illustre l’efficacite des AEDD pour stocker un ensemble de conditions booleennes sur desvariables (en l’occurrence, des marquages).

Nous ne nous etendrons pas plus sur les subtilites de l’implementation, mais le lecteursoucieux d’en savoir plus pourra se reporter a [MDR02]. Nous retiendrons surtout que, gracea ces structures de donnees inspirees par les BDD, Markg est capable de calculer un nombreimpressionnant de marquages (superieur a 1014 etats et 1015 transitions) en un temps tout a

Page 156: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

150 Implementation : Romeo et Markg

Fig. 10.2 – Representation sous la forme d’un AEDD de la fonction f(x, y, z) = ((x ≥ 1)∧(y ≥2) ∪ ((x < 1) ∧ (z ≥ 1))

fait raisonnable (environ 24 minutes sur un Pentium III - 400 MHz). Ces chiffres illustrent l’ef-ficacite du logiciel et justifie que nous l’ayons utilise pour proposer une methode enumerativede calcul de l’espace d’etats des reseaux de Petri a chronometres en temps discret.

10.2.3 Notre contribution

Nous avons apporte quelques modifications a Markg pour qu’il permette, dans les meilleursconditions, le calcul de l’espace d’etats des reseaux de Petri a chronometres en temps discretvia une methode enumerative. Rappelons que la premiere etape de la procedure consiste apartir d’un reseau de Petri a chronometres modelise avec Romeo et a l’exporter au formatd’entree de Markg en suivant les regles propres a la traduction explicitee dans le chapitre 5.Markg traite alors le reseau resultant et en retourne le graphe des marquages. Nous disposonsalors de l’espace d’etats du reseau de Petri a chronometres en temps discret puisque nousavons montre que le modele initial et sa traduction sont bisimilaires.

Suite a notre contribution, Markg est desormais notamment capable d’analyser les reseauxde Petri pour lesquels le marquage d’une place peut devenir infini (auparavant, le logiciel bou-clait a l’infini). Ceci est possible grace a l’insertion, dans le code du programme, d’une valeursymbolique correspondant a l’infini : lorsque cette valeur est incrementee ou decrementeed’une grandeur finie, elle reste egale a elle-meme.

Les resultats auxquels nous aboutissons, precedemment exposes dans le chapitre 8, sontparticulierement satisfaisants pour une methode enumerative de calcul de l’espace d’etats.

Page 157: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Chapitre 11

Conclusions et Perspectives

Bilan

Les reseaux informatiques embarques sont devenus, au cours des trois dernieres decennies,omnipresents dans l’industrie. Leur proliferation a fait de leur bon fonctionnement un facteurcritique : une defaillance peut desormais avoir des consequences tant humaines qu’economiquesdesastreuses. C’est pourquoi il est devenu primordial de verifier a priori leur bon fonction-nement. Il convient ainsi de developper des formalismes permettant d’ecrire et de valider lesinteractions entre les activites des processeurs et les reseaux de communication. Les reseaux dePetri temporels sont un de ces formalismes. Ils permettent de modeliser la duree de differentesactions sous la forme d’un intervalle de temps. Ils peuvent par ailleurs etre enrichis, via unmodele baptise reseau de Petri a chronometres, afin de representer des taches susceptiblesd’etre suspendues puis relancees.

Lors de la modelisation d’un systeme, se pose la question du choix d’un temps dense oud’un temps discret. Le temps dense consiste a considerer le temps comme une grandeur densetandis que le temps discret l’assimile a une grandeur discrete. Nous avons propose, dans cettethese, de comparer ces deux approches.

Nous avons commence notre etude en approfondissant les liens entre reseaux de Petri,reseaux de Petri temporels et reseaux de Petri a chronometres, en fonction de leur semantiqueen temps dense et en temps discret [MMR07]. Ainsi, nous avons notamment montre, d’unepart, que les reseaux de Petri a chronometres bornes et 1-saufs sont d’expressivite equivalenteen termes de bisimulation temporelle et, d’autre part, que les reseaux de Petri temporelsen temps discret, les reseaux de Petri a chronometres en temps discret et les reseaux dePetri avec hyperarcs inhibiteurs et arcs de reset sont d’expressivite equivalente en termesde bisimulation. Ces resultats ont ete obtenus en exhibant une traduction d’un modele versl’autre, traduction qui preserve la bisimulation.

Nous avons pu en deduire des resultats de decidabilite importants sur les modeles entemps discret. Nous avons ainsi prouve que les problemes d’accessibilite d’etat, d’accessibilitede marquage, de k-bornitude et de vivacite - indecidables en temps dense sur des reseauxde Petri a chronometres bornes - sont decidables pour ces memes reseaux mais dotes d’unesemantique de temps discret.

Page 158: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

152 Conclusions et Perspectives

En pratique, les procedures de verification formelle par model-checking reposent sur lecalcul et l’exploration de l’espace d’etats. C’est pourquoi nous nous sommes ensuite attachesa proposer des methodes efficaces pour la determination de celui-ci, tant en temps dense qu’entemps discret.

Dans un premier temps, nous avons perfectionne le calcul de l’espace d’etats des reseaux dePetri a chronometres en temps dense via une extension du graphe des classes d’etats [MLR05].Dans le cas general, celui-ci met en œuvre des polyedres couteux a manipuler tant en termesde vitesse de calcul que d’espace memoire. Nous avons donc propose une methode qui consistea ne recourir aux polyedres generaux que lorsque c’est necessaire et, dans les autres cas, a desDBM, structures de donnees plus legeres a utiliser.

Nous nous sommes ensuite concentres sur les modeles munis d’une semantique de tempsdiscret. Les traductions mises en evidence lors de l’etablissement d’une classification completeentre modeles nous ont egalement permis d’elaborer une methode enumerative efficace decalcul de l’espace d’etats des reseaux en temps discret [MMR06b]. Il est en effet alors pos-sible de recourir a n’importe quel outil d’analyse des reseaux de Petri non temporise pourdeterminer l’espace d’etats des modeles en temps discret. Nous avons ensuite generalise cettedemarche en montrant qu’il est possible d’etablir des traductions preservant la bisimulationentre reseaux de Petri en temps discret et systemes a compteurs. Meme si les outils sur cesmodeles beneficient de nombreux optimisations pratiques, ces approches atteignent leurs li-mites lorsque l’explosion combinatoire du nombre d’etats du reseau en temps discret devienttrop importante.

C’est pourquoi nous avons mis au point une methode symbolique de determination del’espace d’etats [MLR07]. Notre approche consiste a relier l’espace d’etats des reseaux entemps discret a la discretisation de l’espace d’etats du reseau associe dote d’une semantiquede temps dense. Elle repose sur la decomposition d’un polyedre general (correspondant auxinformations temporelles d’un etat du reseau) en une union de polyedres plus simples (desDBM). Cette procedure permet de verifier des proprietes exprimees dans la logique TCTL surles reseaux de Petri a chronometres en temps discret. Nous aboutissons la a des resultats tresencourageants, qui renforcent l’interet de recourir a une semantique de temps discret pouranalyser le comportement de certains modeles a chronometres.

L’ensemble des algorithmes concus au cours de cette these ont fait l’objet d’une integrationdans les outils Romeo [GLMR05, RLG+07] et Markg [MM06].

Perspectives

Expressivite. Une large variete d’arcs vient enrichir le modele classique des reseaux dePetri (temporels). Apres les travaux menes pour etablir des liens formels entre reseaux dePetri temporels et automates temporises d’une part, entre reseaux de Petri temporels pourlesquels le temps est associe aux arcs, aux places et aux transitions d’autre part, il nous paraıtimportant de comparer l’expressivite des differents types d’arcs que sont les arcs de reset, lesarcs inhibiteurs, les arcs de transfert, les arcs de lecture, etc. Des recherches ont ete meneessur le sujet pour des modeles non temporises [DFS98]. Dans le cas des deux premiers typesd’arcs cites, nous avons commence l’etude dans le cadre de cette these. Nous souhaiterions lageneraliser pour disposer d’une classification complete de l’expressivite des differents arcs.

Page 159: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

153

Reseaux de Petri a predicats. L’introduction de nouveaux types d’arcs traduit l’interetpour l’enrichissement des reseaux de Petri. Une extension prometteuse des reseaux temporelsconsiste a leur adjoindre des predicats. Nous entendons par la le fait d’associer, en amont destransitions, un ensemble de conditions booleennes (pour indiquer si la transition est active ounon, si elle est tirable ou non ; ces conditions peuvent tout autant porter sur des variables dureseau que sur les valeurs des horloges) et, en aval, des affectations sur les variables du reseau.Une telle approche a ete deja ete envisagee par certains auteurs dans le cadre des reseauxde Petri non temporises (l’outil Markg [MM06] traite ce genre de modeles) mais, a notreconnaissance, aucune etude sur le sujet n’a ete menee dans le contexte des reseaux temporelsou a chronometres.

Reseaux de Petri et modeles de haut niveau. Les methodes formelles jouissent d’uninteret croissant dans l’industrie. Elles sont toutefois difficiles a apprehender pour un concep-teur non specialiste, de sorte qu’il est necessaire, dans le contexte d’une valorisation indus-trielle, de les interfacer avec un modele de plus haut niveau que les automates ou les reseauxde Petri. Il s’agit la de demandes recurrentes de la part d’acteurs du monde de l’aeronautiqueet de l’ingenierie systeme pour l’utilisation du logiciel Romeo [SLRM06]. L’integration d’unmeta-langage (UML ou AADL) au sein de cet outil et la mise en evidence des liens entreles modeles decrits avec ce langage et les reseaux de Petri nous semblent, de fait, un axe derecherche privilegie afin de favoriser la percee du model-checking dans l’industrie.

Extension des domaines d’application de la verification formelle. Historiquement,la verification formelle est nee du besoin de verifier qu’un systeme temps reel satisfasse sesspecifications. De nombreux outils de modelisation et methodes de verification ont des lors vule jour. Depuis quelques annees, il apparaıt que ces formalismes peuvent etre utilises dans denouveaux domaines, notamment la bio-informatique [BCC+03]. Ainsi certains systemes bio-logiques (a l’instar des reseaux de regulation de genes) peuvent etre exprimes sous la forme demodeles formels. Afin de verifier des proprietes sur ces systemes, il est alors possible de mettreen œuvre des methodes de model-checking au lieu de simuler l’ensemble des comportementspossibles. La consolidation des liens entre les formalismes etudies au cours de cette these etleur application en bio-informatique nous paraıt particulierement motivante, tant en termesde valorisation de nos recherches que d’exercice intellectuel.

Distance entre le modele formel et le systeme reel. Le model-checking consiste averifier des proprietes sur un modele. Le passage d’un systeme a un modele, de specificationsexprimees en langage naturel a des proprietes exprimees en termes mathematiques supposeune abstraction au cours de laquelle des informations peuvent etre perdues. De fait, il esterrone de croire que la reponse apportee par un algorithme a une valeur de verite absolue surla realite d’un systeme [DDR04, AT05]. De plus, une procedure de model-checking precise siun modele verifie une propriete ; mais elle echoue a donner des indications sur les modificationsa apporter eventuellement au systeme pour qu’il verifie la-dite propriete (car tel n’est pas,de toutes manieres, l’objectif du model-checking). La question de la distance entre le modeleformel et le systeme reel et le developpement de methodologies pour aider le concepteur aetudier les problemes souleves par un model-checker (a l’instar de la synthese de controleur)sont deux enjeux tant theoriques que pratiques que nous avons a cœur d’approfondir.

Page 160: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

154 Conclusions et Perspectives

Page 161: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Bibliographie

[AB06] Eugene Asarin and Patricia Bouyer, editors. Formal Modeling and Analysis ofTimed Systems, 4th International Conference, FORMATS 2006, Paris, France,September 25-27, 2006, Proceedings, volume 4202 of Lecture Notes in ComputerScience. Springer, 2006.

[ABS01] Aurore Annichini, Ahmed Bouajjani, and Mihaela Sighireanu. Trex : A tool forreachability analysis of complex systems. In Computer Aided Verification, pages368–372, 2001.

[ACD90] R. Alur, C. Courcoubetis, and D.L. Dill. Model-checking for real-time systems.In 5th IEEE Symposium on Logic in Computer, pages 414–425. IEEE ComputerSociety Press, june 1990.

[AD94] Rajeev Alur and David L. Dill. A theory of timed automata. Theoretical Com-puter Science, 126(2) :183–235, 1994.

[AFP02] D. Avis, K. Fukuda, and S. Picozzi. On canonical representations of convexpolyhedra. In A. M. Cohen, X.-S. Gao, and N. Takayama, editors, Mathema-tical Software, Proceedings of the First International Congress of MathematicalSoftware, pages 350–360. World Scientific Publishing, 2002.

[AK77] T. Araki and T. Kasami. Some decision problems related to the reachabilityproblem for petri nets. Theor. Computer Science 3, pages 85–104, 1977.

[AN01] Parosh Aziz Abdulla and Aletta Nylen. Timed petri nets and bqos. In 22ndInternational Conference on Application and Theory of Petri Nets (ICATPN’01),volume 2075 of Lecture Notes in Computer Science, pages 53–70, Newcastle uponTyne, United Kingdom, june 2001. Springer-Verlag.

[Arn94] Andre Arnold. Finite transition systems. Prentice-Hall, 1994.[AT05] Karine Altisen and Stavros Tripakis. Implementation of timed automata : An

issue of semantics or modeling ? Technical Report TR-2005-12, Verimag, CentreEquation, 38610 Gieres, France, June 2005.

[BCC+03] Gilles Bernot, Franck Cassez, Jean-Paul Comet, Franck Delaplace, Celine Muller,Olivier Roux, and Olivier (H.) Roux. Semantics of Biological Regulatory Net-works. In Vincent Danos and Cosimo Laneve, editors, Workshop on ConcurrentModels in Molecular Biology (BioConcur 2003), Electronic Notes in TheoreticalComputer Science, Marseille (France), September 2003. Elsevier’s ENTCS series.

[BCH+05a] Beatrice Berard, Franck Cassez, Serge Haddad, Didier Lime, and Olivier (H.)Roux. Comparison of different semantics for time Petri nets. In AutomatedTechnology for Verification and Analysis (ATVA’05), volume 3707 of LectureNotes in Computer Science, Taiwan, October 2005. Springer.

Page 162: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

156 BIBLIOGRAPHIE

[BCH+05b] Beatrice Berard, Franck Cassez, Serge Haddad, Didier Lime, and Olivier (H.)Roux. Comparison of the expressiveness of timed automata and time Petri nets.In 3rd International Conference on Formal Modelling and Analysis of TimedSystems (FORMATS 05), volume 3829 of Lecture Notes in Computer Science,Uppsala, Sweden, September 2005. Springer.

[BCH+05c] Beatrice Berard, Franck Cassez, Serge Haddad, Didier Lime, and Olivier (H.)Roux. When are timed automata weakly timed bisimilar to time Petri nets ? In25th Conference on Foundations of Software Technology and Theoretical Compu-ter Science (FSTTCS 2005), volume 3821 of Lecture Notes in Computer Science,Hyderabad, India, December 2005. Springer.

[BD91] B. Berthomieu and M. Diaz. Modeling and verification of time dependent systemsusing time Petri nets. IEEE transactions on software engineering, 17(3) :259–273,1991.

[Ben07] Gilles Benattar. La verification de proprietes tctl sur les reseaux de petri tem-porels a chronometres en temps discret. Master’s thesis, Universite de Nantes etEcole Centrale de Nantes, septembre 2007.

[Ber01] B. Berthomieu. La methode des classes d’etats pour l’analyse des reseaux tem-porels. In 3e congres Modelisation des Systemes Reactifs (MSR’2001), pages275–290, Toulouse, France, october 2001. Hermes.

[BFL04] Sebastien Bardin, Alain Finkel, and Jerome Leroux. FASTer acceleration ofcounter automata in practice. In Kurt Jensen and Andreas Podelski, editors,Proceedings of the 10th International Conference on Tools and Algorithms forConstruction and Analysis of Systems (TACAS’04), volume 2988 of Lecture Notesin Computer Science, pages 576–590, Barcelona, Spain, March 2004. Springer.

[BFLP03] Sebastien Bardin, Alain Finkel, Jerome Leroux, and Laure Petrucci. FAST : FastAcceleration of Symbolic Transition systems. In Warren A. Hunt, Jr and FabioSomenzi, editors, Proceedings of the 15th International Conference on ComputerAided Verification (CAV’03), volume 2725 of Lecture Notes in Computer Science,pages 118–121, Boulder, Colorado, USA, July 2003. Springer.

[BFSV04] G. Bucci, A. Fedeli, L. Sassoli, and E. Vicario. Time state space analysis of real-time preemptive systems. IEEE transactions on software engineering, 30(2) :97–111, February 2004.

[BGR06] Hanifa Boucheneb, Guillaume Gardey, and Olivier (H.) Roux. TCTL modelchecking of time Petri nets. Technical Report number RI2006-14, IRCCyN, 2006.

[BH04] H. Boucheneb and R. Hadjidj. Towards optimal CTL* model checking of timePetri nets. In WODES’04, REIMS (France), June 2004.

[BLRV05] Bernard Berthomieu, Didier Lime, Olivier (H.) Roux, and Francois Vernadat.Problemes d’accessibilite et espaces d’etats abstraits des reseaux de Petri tempo-rels a chronometres. Journal europeen des systemes automatises - Numero specialen francais sur la Modelisation des Systemes Reactifs, 39(1-2-3) :223–238, 2005.

[BLRV07] Bernard Berthomieu, Didier Lime, Olivier (H.) Roux, and Francois Vernadat.Reachability problems and abstract state spaces for time Petri nets with stop-watches. Journal of Discrete Event Dynamic Systems (DEDS), 17(2), 2007. Toappear.

Page 163: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

BIBLIOGRAPHIE 157

[BM83] B. Berthomieu and M. Menasche. An enumerative approach for analyzing timePetri nets. IFIP Congress Series, 9 :41–46, 1983.

[Boi07] Bernard Boigelot. Lash. Disponible surhttp ://www.montefiore.ulg.ac.be/∼boigelot/research/lash/, 2007.

[Bou02] Patricia Bouyer. Modeles et algorithmes pour la verification des systemes tempo-rises. These de doctorat, Laboratoire Specification et Verification, ENS Cachan,France, April 2002.

[BR07] Marc Boyer and Olivier (H.) Roux. Comparison of the expressiveness of arc, placeand transition time Petri nets. In 28th International Conference on Applicationand Theory of Petri Nets and other models of concurrency (ICATPN’07), volume4546 of Lecture Notes in Computer Science, pages 63–82, Siedlce, Poland, jun2007. Springer-Verlag.

[BRZH02] Roberto Bagnara, Elisa Ricci, Enea Zaffanella, and Patricia M. Hill. Possibly notclosed convex polyhedra and the parma polyhedra library. In Proceedings of the9th International Symposium on Static Analysis, pages 213–229. Springer-Verlag,2002.

[BSV03] G. Bucci, L. Sassoli, and E. Vicario. A discrete time model for performanceevaluation and correctness verification of real time systems. In 10th Internatio-nal Workshop on Petri Nets and Performance Models (PNPM 2003), Urbana,Illinois, USA, pages 134–143. IEEE Press, September 2003.

[BT01] E. Brinksma and J. Tretmans. Testing transition systems. In Modelling andVerification of Parallel Processes (MOVEP2k), volume 2067 of Lecture Notes inComputer Science, pages 187–195, Nantes, France, 2001. Springer-Verlag.

[BTKP03] Cecile Bui Thanh, Hanna Klaudel, and Franck Pommereau. Petri nets withcausal time for system verification. volume 68 of Electronic Notes in TheoreticalComputer Science, pages 1–16. Elsevier, 2003.

[BV03] Bernard Berthomieu and Francois Vernadat. State class constructions for bran-ching analysis of time petri nets. In 9th International Conference on Tools andAlgorithms for the Construction and Analysis of Systems (TACAS 2003), volume2619 of Lecture Notes in Computer Science, pages 442–457, Warsaw, Poland,April 2003. Springer Verlag.

[CABS07] Aurore Collomb-Annichini, Ahmed Bouajjani, and Mihaela Sighireanu. Lash.Disponible sur http ://www.liafa.jussieu.fr/trex/, 2007.

[CGP99] Edmund M. Clarke, Orna Grumberg, and Doron A. Peled. Model Checking. MITPress, Cambridge, Massachusetts, mit press edition, 1999.

[CKLY98] Jordi Cortadella, Michael Kishinevsky, Luciano Lavagno, and Alexandre Yakov-lev. Deriving Petri nets from finite transition systems. IEEE Transactions onComputers, 47(8) :859–882, 1998.

[CL00a] Franck Cassez and Kim Larsen. The impressive power of stopwatches. LectureNotes in Computer Science, 1877 :138+, 2000.

[CL00b] Franck Cassez and Kim Guldstrand Larsen. The impressive power of stopwatches.In Catuscia Palamidesi, editor, CONCUR’00, number 1877 in Lecture Notes inComputer Science, pages 138–152, University Park, P.A., USA, July 2000.

Page 164: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

158 BIBLIOGRAPHIE

[CR06] Franck Cassez and Olivier (H.) Roux. Structural translation from Time Petri Netsto Timed Automata – Model-Checking Time Petri Nets via Timed Automata.The journal of Systems and Software, 79(10) :1456–1468, 2006.

[Dav07] Alexandre David. Uppaal dbm library. Disponible surhttp ://www.cs.aau.dk/ adavid/UDBM/, 2007.

[DDR04] Martin De Wulf, Laurent Doyen, and Jean-Francois Raskin. Almost ASAP se-mantics : From timed models to timed implementations. In Proc. 7th Internatio-nal Workshop on Hybrid Systems : Computation and Control (HSCC’04), volume2993 of Lecture Notes in Computer Science, pages 296–310. Springer, 2004.

[dFRA00] David de Frutos Escrig, Valentın Valero Ruiz, and Olga Marroquın Alonso. De-cidability of properties of timed-arc petri nets. In 21st International Conferenceon Application and Theory of Petri Nets (ICATPN’00), volume 1825 of Lec-ture Notes in Computer Science, pages 187–206, Aarhus, Denmark, june 2000.Springer-Verlag.

[DFS98] C. Dufourd, A. Finkel, and Ph. Schnoebelen. Reset nets between decidability andundecidability. In Kim Guldstrand Larsen, Sven Skyum, and Glynn Winskel,editors, ICALP’98, volume 1443 of Lecture Notes in Computer Science, pages103–115, 1998.

[Dil89] David Dill. Timing assumptions and verification of finite-state concurrent sys-tems. In Proc. of Workshop on Computer Aided Verification Methods for FiniteState Systems, volume 407, pages 197–212, 1989.

[DJS99] C. Dufourd, P. Jancar, and Ph. Schnoebelen. Boundedness of reset P/T nets.Lecture Notes in Computer Science, 1644 :301–310, 1999.

[Duf98] C. Dufourd. Reseaux de Petri avec Reset/Transfert : Decidabilite etindecidabilite. PhD thesis, ENS de Cachan, 1998.

[FL02] Alain Finkel and Jerome Leroux. How to compose presburger-accelerations :Applications to broadcast protocols. In FST TCS ’02 : Proceedings of the 22ndConference Kanpur on Foundations of Software Technology and Theoretical Com-puter Science, pages 145–156, London, UK, 2002. Springer-Verlag.

[Fle02] Emmanuel Fleury. Automates temporises avec mises a jour. These de doctorat,Laboratoire Specification et Verification, ENS Cachan, France, December 2002.

[Gar05] Guillaume Gardey. Contribution a la verification et au controle des systemestemps reel – Application aux reseaux de Petri temporels et aux automates tem-porises. PhD thesis, Universite de Nantes et Ecole Centrale de Nantes, decembre2005.

[GLMR05] Guillaume Gardey, Didier Lime, Morgan Magnin, and Olivier (H.) Roux. Romeo :A tool for analyzing time Petri nets. In 17th International Conference on Com-puter Aided Verification (CAV’05), volume 3576 of Lecture Notes in ComputerScience, Edinburgh, Scotland, UK, July 2005. Springer.

[GRR03] G. Gardey, O.H. Roux, and O.F. Roux. A zone-based method for computing thestate space of a time Petri net. In In Formal Modeling and Analysis of TimedSystems, (FORMATS’03), volume LNCS 2791. Springer-Verlag, September 2003.

[GRR06] Guillaume Gardey, Olivier (H.) Roux, and Olivier (F.) Roux. State space compu-tation and analysis of time Petri nets. Theory and Practice of Logic Programming

Page 165: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

BIBLIOGRAPHIE 159

(TPLP). Special Issue on Specification Analysis and Verification of Reactive Sys-tems, 6(3) :301–320, 2006.

[Hac76] M. Hack. Decidability questions for petri nets. Technical report, Cambridge,MA, USA, 1976.

[HB06] Rachid Hadjidj and Hanifa Boucheneb. On-the-fly tctl model checking for timepetri nets using state class graphs. In ACSD, pages 111–122. IEEE ComputerSociety, 2006.

[Hen96] Thomas Henzinger. The theory of hybrid automata. In Proceedings of the 11thAnnual IEEE Symposium on Logic in Computer Science (LICS ’96), pages 278–292, New Brunswick, New Jersey, 1996.

[HHWT95] Thomas A. Henzinger, Pei-Hsin Ho, and Howard Wong-Toi. Hytech : The nextgeneration. In IEEE Real-Time Systems Symposium, pages 56–65, 1995.

[HMP92] Thomas A. Henzinger, Zohar Manna, and Amir Pnueli. What good are digitalclocks ? In Automata, Languages and Programming, pages 545–558, 1992.

[IEE94] IEEE. IEEE-1220 : Application and management of systems engineering process.IEEE Computer Society, 1994.

[JLL77] N. D. Jones, L. H. Landweber, and Y. E. Lien. Complexity of some problems inpetri nets. Theoretical Computer Science 4, pages 277–299, 1977.

[Kha92] Wael Khanza. Reseau de Petri P-Temporels. Contribution a l’etude des systemesa evenements discrets. PhD thesis, Universite de Savoie, 1992.

[Kos82] S. Rao Kosaraju. Decidability of reachability in vector addition systems (pre-liminary version). In STOC ’82 : Proceedings of the fourteenth annual ACMsymposium on Theory of computing, pages 267–281, New York, NY, USA, 1982.ACM Press.

[Lee59] C. Y. Lee. Representation of switching circuits by binary-decision programs. BellSystem Technical Journal, 38 :985–999, July 1959.

[Ler03] Jerome Leroux. Algorithmique de la verification des systemes a compteurs. Ap-proximation et acceleration. Implementation de l’outil FAST. These de doctorat,Laboratoire Specification et Verification, ENS Cachan, France, December 2003.

[Lim04] Didier Lime. Verification d’applications temps reel a l’aide de reseaux de Petritemporels etendus. PhD thesis, Universite de Nantes et Ecole Centrale de Nantes,decembre 2004.

[LPY95] K. G. Larsen, P. Pettersson, and W. Yi. Model-checking for real-time systems.In Fundamentals of Computation Theory, pages 62–88, 1995.

[LR03a] Didier Lime and Olivier (H.) Roux. Expressiveness and analysis of schedulingextended time Petri nets. In 5th IFAC International Conference on FieldbusSystems and their Applications, (FET’03), pages 193–202, Aveiro, Portugal, July2003. Elsevier Science.

[LR03b] Didier Lime and Olivier (H.) Roux. State class timed automaton of a time petrinet. In The 10th International Workshop on Petri Nets and Performance Models,(PNPM’03). IEEE Computer Society, Sept. 2003.

[LR04] Didier Lime and Olivier (H.) Roux. A translation based method for the timedanalysis of scheduling extended time Petri nets. In The 25th IEEE International

Page 166: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

160 BIBLIOGRAPHIE

Real-Time Systems Symposium, (RTSS’04), pages 187–196, Lisbon, Portugal,December 2004. IEEE Computer Society Press.

[LR06] Didier Lime and Olivier (H.) Roux. Model checking of time Petri nets usingthe state class timed automaton. Journal of Discrete Events Dynamic Systems -Theory and Applications (DEDS), 16(2) :179–205, 2006.

[May84] Ernst W. Mayr. An algorithm for the general petri net reachability problem.SIAM Journal on Computing, 13(3) :441–460, 1984.

[MC87] M. Ajmone Marsan and G. Chiola. On petri nets with deterministic and expo-nentially distributed firing times. Lecture Notes in Computer Science : Advancesin Petri Nets 1987, 266 :132–145, 1987.

[MDR02] Pierre Molinaro, David Delfieu, and Olivier (H.) Roux. Improving the calculusof the marking graph of Petri net with bdd like structure. In 2002 IEEE in-ternational conference on systems, man and cybernetics (SMC 02), Hammamet,Tunisia, October 2002.

[Mer74] P.M. Merlin. A study of the recoverability of computing systems. PhD thesis, De-partment of Information and Computer Science, University of California, Irvine,CA, 1974.

[MLR05] M. Magnin, D. Lime, and O.(H.) Roux. An efficient method for computing exactstate space of Petri nets with stopwatches. In third International Workshop onSoftware Model-Checking (SoftMC’05), Electronic Notes in Theoretical ComputerScience, Edinburgh, Scotland, UK, July 2005. Elsevier.

[MLR07] M. Magnin, D. Lime, and O. H. Roux. Symbolic state space of discrete-timepetri nets with stopwatches. Technical report, Institut de Recherche en Commu-nication et Cybernetique de Nantes (IRCCyN), Nantes, France, 2007. Availableat http ://www.irccyn.ec-nantes.fr/∼magnin/.

[MM06] Pierre Molinaro and Morgan Magnin. Markg. Disponible sur http ://markg.rts-software.org, 2006.

[MMR06a] M. Magnin, P. Molinaro, and O. H. Roux. How to deal efficiently with petrinets with stopwatches in discrete-time ? Technical report, Institut de Rechercheen Communication et Cybernetique de Nantes (IRCCyN), Nantes, France, 2006.Available at http ://www.irccyn.ec-nantes.fr/∼magnin/.

[MMR06b] Morgan Magnin, Pierre Molinaro, and Olivier (H.) Roux. Decidability, expres-sivity and state-space computation of stopwatch petri nets with discrete-timesemantics. In 8th International Workshop on Discrete Event Systems (WO-DES’06), Ann Arbor, USA, July 2006.

[MMR07] M. Magnin, P. Molinaro, and O. H. Roux. Expressiveness and decidability ofdiscrete-time stopwatch petri nets. Technical report, Institut de Recherche enCommunication et Cybernetique de Nantes (IRCCyN), Nantes, France, 2007.Available at http ://www.irccyn.ec-nantes.fr/∼magnin/.

[Old04] Universite Ossietzky Oldenburg. Pep. Disponible surhttp ://theoretica.informatik.uni-oldenburg.de/∼pep/, 2004.

[Pnu77] A. Pnueli. The temporal logic of programs. In 18th IEEE Symposium on Foun-dations of Computer Science (FOCS’77), pages 46–57. IEEE Computer SocietyPress, 1977.

Page 167: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

BIBLIOGRAPHIE 161

[Pom02] Franck Pommereau. Modeles composables et concurrents pour le temps reel. PhDthesis, Universite Paris 12, juin 2002.

[Pop91a] L. Popova. On time petri nets. Journal Information Processing and Cybernetics,27(4) :227–244, 1991.

[Pop91b] Louchka Popova. On time petri nets. Journal Inform. Process. Cybern., EIK(formerly : Elektron. Inform. verarb. Kybern.), 27(4) :227–244, 1991.

[PZ96] L. Popova-Zeugmann. Essential states in time petri nets, 1996.

[PZS99] L. Popova-Zeugmann and D. Schlatter. Analyzing paths in time petri nets. Fun-damenta Informaticae, 37(3) :311–327, 1999.

[Rak05] Eva Rakotomalala. Specifications robustes du systeme de pilotage d’une fonctionelectronique automobile. PhD thesis, Universite de Nantes et Ecole Centrale deNantes, decembre 2005.

[Ram74] C. Ramchandani. Analysis of asynchronous concurrent systems by timed Petrinets. PhD thesis, Massachusetts Institute of Technology, Cambridge, MA, 1974.Project MAC Report MAC-TR-120.

[RD01] Olivier H. Roux and Anne-Marie Deplanche. Extension des reseaux de Petri t-temporels pour la modelisation de l’ordonnancement de taches temps-reel. In 3econgres Modelisation des Systemes Reactifs (MSR’2001), pages 327–342, Tou-louse, France, 2001. Hermes Science.

[RD02] O. (H.) Roux and A.-M. Deplanche. A T-time Petri net extension for real time-task scheduling modeling. European Journal of Automation (JESA), 36(7) :973–987, 2002.

[Rei96] K. Reinhardt. Reachability in petri nets with inhibitor arcs, 1996.

[RL04] Olivier (H.) Roux and Didier Lime. Time Petri nets with inhibitor hyperarcs.Formal semantics and state space computation. In The 25th International Confe-rence on Application and Theory of Petri Nets, (ICATPN’04), volume 3099 ofLecture Notes in Computer Science, pages 371–390, Bologna, Italy, June 2004.Springer.

[RLG+07] Olivier (H.) Roux, Didier Lime, Guillaume Gardey, Morgan Magnin, CharlotteSeidner, and Louis-Marie Traonouez. Romeo. Disponible sur http ://romeo.rts-software.org, 2007.

[Rus01] J. M. Rushby. Theorem proving for verification. In Modelling and Verificationof Parallel Processes (MOVEP2k), volume 2067 of Lecture Notes in ComputerScience, pages 39–57, Nantes, France, 2001. Springer-Verlag.

[Sch86] A. Schrijver. Theory of Linear and Integer Programming. John Wiley and Sons,NY,, 1986.

[Sei06] Charlotte Seidner. Etude des representations haut-niveau en ingenierie systeme etde leur aptitude a supporter des verifications formelles. Master’s thesis, Universitede Nantes et Ecole Centrale de Nantes, septembre 2006.

[SLRM06] Charlotte Seidner, Jean-Philippe Lerat, Olivier (H.) Roux, and Morgan Magnin.Verification dynamique et formelle d’un systeme decrit par son architecture fonc-tionnelle a l’aide de reseaux de Petri temporels : promesses et perspectives. In4th AFIS National Conference, Toulouse, France, May 2006.

Page 168: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

162 BIBLIOGRAPHIE

[TSLT97] Joel Toussaint, Francoise Simonot-Lion, and Jean-Pierre Thomesse. Timeconstraint verifications methods based time petri nets. In 6th Workshop onFuture Trends in Distributed Computing Systems (FTDCS’97), pages 262–267,Tunis, Tunisia, 1997.

[VV05] Abhay Vardhan and Mahesh Viswanathan. Learning to verify branching timeproperties. In ASE ’05 : Proceedings of the 20th IEEE/ACM international Confe-rence on Automated software engineering, pages 325–328, New York, NY, USA,2005. ACM Press.

[VV06] Abhay Vardhan and Mahesh Viswanathan. Lever : A tool for learning basedverification. In CAV, pages 471–474, 2006.

[WB98] Pierre Wolper and Bernard Boigelot. Verifying systems with infinite but regularstate spaces. In Computer Aided Verification, pages 88–97, 1998.

[WB00] Pierre Wolper and Bernard Boigelot. On the construction of automata from lineararithmetic constraints. In Tools and Algorithms for Construction and Analysisof Systems, pages 1–19, 2000.

[Yov96] Sergio Yovine. Model checking timed automata. In European Educational Forum :School on Embedded Systems, volume 1494 of LNCS, pages 114–152. SpringerVerlag, 1996.

[YR98] T. Yoneda and H. Ryuba. CTL model checking of time Petri nets using geometricregions. IEICE Transactions on Information and Systems, E99-D(3) :297–396,march 1998.

[ZCH97] Robert Zijal, Gianfranco Ciardo, and Gunter Hommel. Discrete deterministicand stochastic petri nets. In MMB, pages 103–117, 1997.

Page 169: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Annexe A

Correction de la traduction, entemps dense, des reseaux de Petri achronometres bornes vers lesreseaux de Petri a chronometres1-saufs

Afin de prouver que la semantique de ∆(N ) est intimement liee a la semantique de N ,nous devons d’abord expliciter une relation liant les etats de N aux etats de ∆(N ). Pour cefaire, nous definissons l’equivalence suivante :

Definition A.1 (Equivalence entre etats). Soit (M,ν) (respectivement (M∆(N ), ν∆(N )))un etat de Sdense

N (respectivement de S∆(N )). Nous definissons la relation suivante ≈⊂ QN ×Q∆(N ) (ou QN et Q∆(N ) representent, respectivement, l’ensemble des etats de N et de∆(N )) : {

∀(M,ν) ∈ QN∀M∆(N ) ∈ Q∆(N )

, (M,ν) ≈M∆(N ) ⇔

∀i ∈ [1, n],∀j ∈ [1,m],∀g ∈ [1, k]

{M∆(N )(Pj,g) = 1 ssi g = M(Pj)M∆(N )(Pj,g) = 0 sinon

M∆(N )(Pi,firing,pre) = M∆(N )(Pi,firing,post) = 0

∀j′ ∈ [1,m] t.q. •ti(Pj) > 0,

{M∆(N )(Pj′,en,i) = 1 ssi M(Pj′) ≥• ti(Pj)M∆(N )(Pj′,en,i) = 0 sinon

∀ti ∈ enabled(M), νi = νi,∆(N )

Deux etats sont relies par ≈ si les etats correspondent en termes de marquage des placeset de valuation des horloges.

Nous prouvons desormais que notre traduction preserve le comportement du reseau dePetri a chronometres initial au sens ou la semantique du reseau a chronometres borne et satraduction 1-sauve sont (faiblement) temporellement bisimilaires.

Page 170: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

164 Correction de la traduction des SwPN bornes vers SwPN 1-saufs

Considerons un reseau de Petri temporel a arcs de reset et hyperarcs inhibiteurs borneN = (P, T,•(.), (.)•,�(.), α, β,M0, I), avec Sdense

N = (Q, q0, T,→) sa semantique. Soit Ni lereseau de Petri a arcs de reset et hyperarcs inhibiteurs associes a la transition ti de N , definicomme precedemment. La semantique de ∆(N ) = (N1×. . .×Nn)f est le systeme de transitiontemporise S∆(N ) = (Q∆(N ), q

∆(N )0 , T∆(N ),→∆(N )).

Theoreme A.1 (Bisimilarite). ≈ est une relation de bisimulation temporelle faible, ce quisignifie : pour tout (M,ν) ∈ Sdense

N et M∆(N ) ∈ S∆(N ) tel que (M,ν) ≈ (M∆(N ), ν∆(N )), nousavons :

– (M,ν) ti−→ (M ′, ν ′) ⇔

(M∆(N ), ν∆(N ))wti−−�∆(N ) (M ′

∆(N ), ν′∆(N ))

(M ′, ν ′) ≈ (M ′∆(N ), ν

′∆(N ))

(1)

wti = ti,∆(N ), ti,pre,(i1,ji1),(i2,ji2

),...,(il,jil) ti,post,(g1,jg1 ),(g2,jg2 ),...,(gq ,jgq ) ou i1, . . . , il sont

tels que ti1 , . . . , til (respectivement tg1 , . . . , tgq) sont les l places d’entree (respective-ment les q places de sortie) de ti et ji1 = M(Pi1), . . . , jil = M(Pil) (respectivementjg1 = M(Pg1), . . . , jgl

= M(Pgl)).

– (M,ν)ε(d)−−→ (M,ν ′) ⇔

(M∆(N ), ν∆(N ))ε(d)−−→ (M∆(N ), ν

′∆(N ))

(M,ν ′) ≈ (M∆(N ), ν′∆(N ))

(2)

Preuve. Nous commencons par prouver l’assertion (2).

• Transition continue : ecoulement du tempsSoient (M,ν) ∈ QN , (M∆(N ), ν∆(N )) ∈ Q∆(N ) tels que (M,ν) ≈ (M∆(N ), ν∆(N )).

Nous allons prouver que si le rRdPTI borne N peut laisser du temps s’ecouler dans unetat, le meme processus est possible, depuis l’etat en relation avec l’etat de N , sur lereseau 1-sauf ∆(N ) que nous avons construit, c’est-a-dire :

∀i ∈ [1, n](M ≥• ti ⇒ νi + δ ≤ bi)⇒(M∆(N ) ≥• ti,∆(N ) ⇒ νi,∆(N ) + δ ≤ bi)

Puisque nous supposons que N est dans un etat dans lequel le temps peut s’ecouler, ilest immediat de montrer que ∆(N ) peut lui aussi laisser du temps s’ecouler, et que lesdeux etats resultants sont bisimilaires :

(M,ν ′) ≈ (M∆(N ), ν′∆(N ))

Symetriquement, il est relativement aise de prouver que si le rRdPTI 1-sauf ∆(N ) peutlaisser du temps s’ecouler, il en est de meme pour le rRdPTI borne. Il s’agit la d’uneconsequence directe de la relation de bisimilarite que nous avons exhibe sur les etats.

Ainsi, ≈ est une bisimulation pour la relation de transition continue.

• Transition discrete – Tir d’une transition tiSoit (M,ν) ∈ QN et (M∆(N ), ν∆(N )) ∈ Q∆(N ) deux etats en relation.

Nous allons montrer que si une transition discrete est tirable dans le rRdPTI borneN , alors elle est egalement tirable pour le rRdPTI 1-sauf ∆(N ) et que les deux etatsresultants sont en relation.

Page 171: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

165

La preuve complete est omise mais nous en donnons les idees principales dans les lignesqui suivent.

Puisque la transition ti de N peut etre tiree et que les etats sont en relation, ti,∆(N ) estsensibilisee (et non inhibee) et les valuation de ti et de ti,∆(N ) sont egales. Il suit queti,∆(N ) est tirable. Le tir de ti conduit a un etat (M1

∆(N ), ν1∆(N )).

Nous devons maintenant prouver qu’il est impossible que le temps s’ecoule avant qu’unetat (M ′

∆(N ), ν′∆(N )) bisimilaire a (M ′, ν ′) soit atteint par le tir de certaines transi-

tions instantanees. Cette condition est garantie par le fait que les transitions que nousavons creees ont pour intervalle de tir [0, 0] : cela force ces transitions a etre tireesimmediatement une fois qu’elles sont sensibilisees. Apres le tir de toutes les transitionst.,pre,. et t.,post,. qui doivent etre tirees, nous aboutissons a un etat bisimilaire a (M ′, ν ′) :

(M ′, ν ′) ≈ (M ′∆(N ), ν

′∆(N ))

Symetriquement, nous prouvons que si ti est tirable dans le rRdPTI 1-sauf ∆(N ), elleest egalement tirable dans le rRdPTI borne N et qu’alors, les deux etats resultants sonten relation.Il est possible de tirer ti dans le rRdPTI borne. Le tir de cette transition conduit a unnouvel etat (M ′, ν ′) si et seulement si :

ti ∈ enabled(M) et ti 6∈ inhibited(M)M ′ = M −max(�ti ×M t,•ti) + t•ia(ti) ≤ ν(ti) ≤ b(ti),

∀ transitions tk ν ′(tk) =

0 iftk ∈ ↑enabled(M, ti)ν(tk) otherwise

Par definition du rRdPTI 1-sauf que nous avons construit, si ti est tirable, nous avons :∀j ∈ [1,m]t.q.•ti(Pj) > 0, M∆(N )(Pj,en,i) = 1ssiM(Pj) ≥• ti(Pj) et νi = νi,∆(N ). Ceciimplique que ti est tirable dans N

Il reste a montrer que les deux etats resultants sont en relation.

Par construction (M,ν) ≈ (M∆(N ), ν∆(N )). Apres le tir de ti dans ∆(N ), il est necessairede tirer certaines transitions immediates ti,pre,(.,.) ou ti,post,(.,.), ou ti,pre,(.,.) est nouvel-lement sensibilisee par le tir de ti et ti,post,(.,.) nouvellement sensibilisee par le tir deti,pre,(.,.). Il s’agit la de transitions en temps nul, elles surviennent donc avant tout nou-vel ecoulement temporel. Cela conduit finalement a un etat (M ′

∆(N ), ν′∆(N )) qui est en

relation avec (M,ν ′) :

(M,ν ′) ≈ (M ′∆(N ), ν

′∆(N ))

≈ est une bisimulation pour les transitions discretes. �

Page 172: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

166 Correction de la traduction des SwPN bornes vers SwPN 1-saufs

Page 173: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Annexe B

Correction de la traduction desreseaux de Petri temporels entemps discret vers les reseaux dePetri non temporises

Afin de prouver que la semantique de ∆(N ) est intimement liee a la semantique de N ,nous devons d’abord expliciter une relation liant les etats de N aux etats de ∆(N ). Pour cefaire, nous definissons l’equivalence suivante :

Definition B.1 (Equivalence entre etats). Soit (M,ν) (respectivement (M∆(N ), ν∆(N )))un etat de Sdiscrete

N (respectivement de S∆(N )). Nous definissons la relation suivante ≈ta⊂QN ×Q∆(N ) (ou QN et Q∆(N ) representent, respectivement, l’ensemble des etats de N et de∆(N )) : {

∀(M,ν) ∈ QN∀M∆(N ) ∈ Q∆(N )

, (M,ν) ≈ta M∆(N ) ⇔

∀j ∈ {1, . . . ,m},M(Pj) = M∆(N )(Pj,trans)

ti ∈ enabled(M)⇔

M∆(N )(Penabled,i) = 1M∆(N )(PnotEnabled,i) = 0M∆(N )(Pν,i) = νi

ti 6∈ enabled(M)⇔

M∆(N )(Penabled,i) = 0M∆(N )(PnotEnabled,i) = 1M∆(N )(Pν,i) = 0

Deux etats sont relies par ≈ta si les etats correspondent en termes de marquage desplaces et de valuation des horloges. Nous allons maintenant donner la preuve complete dela bisimulation (faible) entre le reseau de Petri temporel et le reseau de Petri non temporisetraduit.

Nous prouvons desormais que notre traduction preserve le comportement du reseau dePetri temporel initial au sens ou la semantique en temps discret de ce reseau et la semantique

Page 174: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

168 Correction de la traduction des RdPT en temps discret vers les RdP

de sa traduction sont (faiblement) bisimilaires via une abstraction du temps.

Le theoreme 5.5 etablit que les reseaux de Petri temporels bornes en temps discret etque les reseaux de Petri temporels 1-saufs en temps discret sont d’expressivite equivalente entermes de bisimulation temporelle.

Par consequent, dans la suite, nous pouvons effectuer la preuve en considerant un reseaude Petri temporel 1-sauf N = (P, T,•(.), (.)•, a, b,M0), sa semantique de temps discret etantnotee Sdiscrete

N = (Q, q0, T,→). Soit Ni le reseau de Petri (non temporise) avec arcs de resetet hyperarcs inhibiteurs associe a la transition ti de N , comme cela est defini sur la figure5.15 et f la fonction de synchronisation definie precedemment. La semantique de ∆(N ) =(N1 × . . .×Nn)f est le systeme de transitions S∆(N ) = (Q∆(N ), q

∆(N )0 , T∆(N ),→∆(N )).

Theoreme B.1 (Bisimulation). ≈ta est une relation de bisimulation faible via une abs-traction du temps, ce qui signifie : pour tout (M,ν) ∈ Sdiscrete

N et M∆(N ) ∈ S∆(N ) tels que(M,ν) ≈ta M∆(N ), nous avons :

– (M,ν) ti−→ (M ′, ν ′) ⇔

M∆(N )

wti−−�∆(N ) M′

∆(N )

(M ′, ν ′) ≈ta M′

∆(N )

(1)

Ou wti = titstartClock,i1 . . . tstartClock,iq , M∆(N )

wti−−�∆(N ) M′

∆(N ) represente l’execution

M∆(N )ti−→∆(N ) M

1∆(N )

tstartClock,i1−−−−−−−−→∆(N ) . . .tstartClock,iq−−−−−−−−→∆(N ) M

∆(N ), et tstartClock,i1,. . ., tstartClock,iq sont les q transitions nouvellement sensibilisees par le tir de ti dans∆(N ). Ces q transitions peuvent etre tirees dans n’importe quel ordre.

– (M,ν) 1−→ (M,ν ′) ⇔

{M∆(N )

wτ−−→∆(N ) M′

∆(N )

(M,ν ′) ≈ta M′

∆(N )

(2)

Preuve. Nous commencons par prouver l’assertion (2).

• Ecoulement discret de tempsSoient (M,ν) ∈ QN , M∆(N ) ∈ Q∆(N ) tels que (M,ν) ≈ta M∆(N ).

Nous allons prouver que si le RdPT N en temps discret peut laisser du temps s’ecoulerdepuis un etat, le meme processus est possible, depuis l’etat en relation avec l’etat deN , sur le reseau de Petri avec arcs de reset et hyperarcs inhibiteurs que nous avonsconstruit, i.e. si le systeme peut laisser survenir un pas temporel discret τ , alors il estpossible de simuler cet ecoulement temporel via le tir d’une ou plusieurs transitions wτ

dans le RdP :

∀i ∈ {1, . . . , n}(M ≥• ti ⇒ νi + 1 ≤ bi)⇒(M∆(N )(Penabled,i)) = 1 ∧M∆(N )(Pν,i) + 1 ≤ bi)

Puisque nous supposons que le RdPT N est dans un etat dans lequel le temps peuts’ecouler, nous avons, pour toutes les transitions ti de N sensibilisees par M : νi +1 ≤ bi. Comme (M,ν) ≈ta M∆(N ), M∆(N )(Penabled,i) = 1, M∆(N )(PnotEnabled,i) =0 et M∆(N )(Pν,i) = νi. Par consequent, M∆(N )(Pν,i) < bi et la transition τenabled,i

peut etre tiree. Pour tout k tel que tk n’est pas sensibilisee, M∆(N )(Penabled,k) = 0,

Page 175: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

169

M∆(N )(PnotEnabled,k) = 1 et M∆(N )(Pν,k) = 0 ; dans ce cas particulier, τnotEnabled,k estsensibilisee et peut etre tiree. Par consequent, une transition discrete globale wτ peutetre tiree au niveau de ∆(N ). Le tir de wτ ne modifie pas le marquage de :– Pj,trans pour tout j ∈ {1, . . . ,m} ;– PnotEnabled,i et Penabled,i pour tout i ∈ {1, . . . , n} ;– Pν,k pour tout k tel que tk ∈ T n’etait pas sensibilisee par M .Pour l tel que tl ∈ T n’etait pas sensibilisee par M , ce tir augmente le marquage dePν,l. Il est alors immediat que les etats resultants sont bisimilaires :

(M,ν ′) ≈ta M′

∆(N )

Reciproquement, nous allons prouver que, s’il est possible de tirer une transition discreteglobale wτ dans le RdP avec arcs de reset et hyperarcs inhibiteurs, alors le RdPT entemps discret peut laisser une unite de temps s’ecouler.

Conformement a la semantique des reseaux de Petri temporels, un pas temporel discretpeut survenir si et seulement si ∀ti ∈ enabled(M), ν(ti) + 1 ≤ b(ti). Comme (M,ν) etM∆(N ) sont en relation, ∀ti ∈ enabled(M), ν(ti) = M∆(N )(Pν,i). Puisqu’une transitiondiscrete wτ peut etre tiree dans le reseau de Petri avec arcs de reset et hyperarcsinhibiteurs, nous avons M∆(N )(Pν,i) < b(ti), ce qui prouve notre resultat : le RdPTpeut laisser une unite de temps s’ecouler (donc sans modification du marquage) et :

(M,ν ′) ≈ta M′

∆(N )

Ainsi, ≈ta est une bisimulation pour la relation de transition de temps discret.

• Transition discrete – Tir d’une transition tiSoit (M,ν) ∈ QN et M∆(N ) ∈ Q∆(N ) deux etats en relation.

Nous allons montrer que si une transition discrete est tirable dans le RdPT N , alorselle est egalement tirable pour le RdP avec arcs de reset et hyperarcs inhibiteurs ∆(N )et que les deux etats resultants sont en relation.

Supposons qu’une transition ti du RdPT peut etre tiree depuis un etat (M,ν) : M ≥ •tiet ai ≤ νi ≤ bi. Le marquage resultant est M ′ = M − •ti + t•i et la valuation resultanteest ν ′tk = 0 pour toutes les transitions nouvellement sensibilisees tk, toutes les autresvaluations restant inchangees.

Le tir de la transition associee est permis sur le reseau de Petri avec arcs de reset ethyperarcs inhibiteurs que nous avons construit si et seulement si M∆(N ) ≥ •ti.

Puisque la transition ti de N est tirable et (M,ν) ≈ta M∆(N ), M∆(N ) ≥ •ti, la transitionti de ∆(N ) est tirable. Le tir de ti conduit a un etat M1

∆(N ).

Consequence directe de la regle de tir, nous avons ∀k ∈ {1, . . . , n} tel que tk 6∈↑ enabled(M, ti) :– si tk etait sensibilisee par M et reste sensibilisee pendant et apres le tir de ti :M1

∆(N )(Penabled,k) = 1∧ M1∆(N )(PnotEnabled,k) = 0∧ M1

∆(N )(Pν,k) = νk

– si tk n’etait pas sensibilisee par M et reste non sensibilisee apres le tir de ti :M1

∆(N )(Penabled,k) = 0∧ M1∆(N )(PnotEnabled,k) = 1∧ M1

∆(N )(Pν,k) = 0

Page 176: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

170 Correction de la traduction des RdPT en temps discret vers les RdP

– si tk etait sensibilisee par M , est desensibilisee par le tir de ti et n’est pas sensibiliseepar M1

∆(N ) : M1∆(N )(Penabled,k) = 0∧ M1

∆(N )(PnotEnabled,k) = 1∧ M1∆(N )(Pν,k) = 0

La traduction respecte les fonctions d’incidence amont et aval du reseau initial N pourtoutes les transitions t ∈ T . C’est pourquoi ∀l ∈ {1, . . . ,m},M1

∆(N )(Pl) = M ′(Pl).

Nous devons maintenant prouver qu’il est impossible de tirer une transition globalewτ avant qu’un etat M

∆(N ) bisimilaire a (M ′, ν ′) soit atteint grace au tir de certainestransitions instantanees (ces transitions instantanees sont : tstartClock,j et tj pour toutj ∈ {1, . . . , n}).

Par definition de la fonction de synchronisation f , wτ peut etre tiree si et seulement si,dans chaque motif Ni, soit τenabled,i, soit τnotEnabled,i est tirable.

Considerons desormais les transitions nouvellement sensibilisee par le tir de ti a partirdu marquage M∆(N ). Puisque la traduction respecte les fonctions d’incidence amont etaval du reseau initial N pour toutes les transitions t ∈ T , nous avons alors :∀j ∈ {1, . . . , n}, (tj ∈↑ enabled(M, ti) ⇔ tstartClock,j ∈↑ enabled(M∆(N ), ti)) et ∀j ∈{1, . . . , n}, tj ∈↑ enabled(M, ti),∀k ∈ {1, . . . ,m} t.q. Pk est une place d’entree de tj ,M1

∆(N )(Pk,trans) = M ′(Pk).

De plus, le tir de la transition ti de ∆(N ) implique : M1∆(N )(PnotEnabled,j) = 1 ∧

M1∆(N )(Penabled,j) = 0∧M1

∆(N )(Pν,j) = 0 Par consequent τenabled,j n’est pas sensibiliseepar M1

∆(N ) alors que τnotEnabled,j l’est. τnotEnabled,j est toutefois inhibee par l’hyperarcinhibiteur en provenance de Penabled,j et de Pk,trans. Ni τnotEnabled,j , ni τenabled,j ne sontalors tirables. Au contraire, tstartClock,j l’est.

Cela signifie que toutes les transitions tstartClock,j doivent etre tirees avant qu’un autrepas temporel discret ne soit effectue.

Pendant le processus correspondant au tir de ces transitions instantanees tstartClock,j ,une autre transition discrete th pourrait etre tiree. Dans ce cas, la meme analyse s’ap-plique : toutes les transitions tstartClock,l (ou l ∈ {1, . . . , n} tel que tstartClock,l est nou-vellement sensibilisee par le tir de th) doit etre tiree avant qu’un autre pas temporeldiscret ne soit effectue.

Apres le tir de toutes les transitions tstartClock,j , nous avons : ∀j ∈ {1, . . . , n}, tj ∈↑enabled(M, ti),∀l ∈ {1, . . . ,m} tel que Pl est une place d’entree de tj ,M

∆(N )(PnotEnabled,j) = 0∧M ′

∆(N )(Penabled,j) = 1∧M ′

∆(N )(Pν,j) = 0∧M ′

∆(N )(Pl,trans) =M ′(Pl).

De plus, le tir de tstartClock,j ne modifie pas le marquage de Penabled,k, PnotEnabled,k etPν,k avec k ∈ {1, . . . , n} tel que tk 6∈↑ enabled(M, ti). Il ne modifie pas non plus lemarquage des places Pl,trans, ou l ∈ {1, . . . ,m}.

Au final, cela signifie que les etats resultants sont en relation :

(M ′, ν ′) ≈ta M′

∆(N )

Page 177: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

171

Reciproquement, nous prouvons que si ti est tirable dans le reseau de Petri a arcs dereset et hyperarcs inhibiteurs, alors cette meme transition est tirable dans le reseau dePetri temporel et que les deux etats resultants sont en relation.

Le tir correspondant de ti est possible sur le RdPT et conduit a un nouvel etat note(M ′, ν ′) si et seulement si :

M ≥• tiM ′ = M −•ti + t•iai ≤ νi ≤ bi

∀ tk ∈ T ν ′(tk) =

{0 sitk ∈ ↑enabled(M, ti)ν(tk) sinon

Par definition du RdP avec arcs de reset et hyperarcs inhibiteurs que nous avonsconstruit, si ti est tirable, nous avons M ≥• ti et ai ≤ M∆(N )(Pν,i) = νi ≤ bi. Lemarquage resultant est, par definition, M ′

∆(N ) = M∆(N ) −max(�ti ×M t∆(N ),

•ti) + t•i .Dans le RdPT initial, nous avons : M ′ = M −•ti + t•i .

Il reste a prouver que les etats resultants sont en relation.

Par construction (M,ν) ≈ta M∆(N ). Le tir de ti dans le reseau ∆(N ) remet a zero lemotif associe a cette transition. Il peut alors etre necessaire de tirer certaines transitionsinstantanees tstartClock,j ou j est tel que tstartClock,j est nouvellement sensibilisee par letir de ti. Une analyse semblable a celle adoptee auparavant permet de prouver que le tirde toutes les transitions tstartClock,j est necessaire avant qu’une transition wτ soit tiree.Le tir de ces transitions conduit a un etat M

∆(N ) qui est en relation avec (M,ν ′) :

(M ′, ν ′) ≈ta M′

∆(N )

De ce fait, ≈ta est une bisimulation pour les transitions discretes. �

Page 178: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

172 Correction de la traduction des RdPT en temps discret vers les RdP

Page 179: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Annexe C

Correction de la traduction desreseaux de Petri a chronometres entemps discret vers les reseaux dePetri non temporises

Afin de prouver que la semantique de ∆(N ) est intimement liee a la semantique de N ,nous devons d’abord expliciter une relation liant les etats de N aux etats de ∆(N ). Pour cefaire, nous definissons l’equivalence suivante :

Definition C.1 (Equivalence entre etats). Soit (M,ν) (respectivement (M∆(N ), ν∆(N )))un etat de Sdiscrete

N (respectivement de S∆(N )). Nous definissons la relation suivante ≈ta⊂QN ×Q∆(N ) (ou QN et Q∆(N ) representent, respectivement, l’ensemble des etats de N et de∆(N )) :

{∀(M,ν) ∈ QN∀M∆(N ) ∈ Q∆(N )

, (M,ν) ≈ta M∆(N ) ⇔

Page 180: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

174 Correction de la traduction des SwPN en temps discret vers les RdP

∀j ∈ [1,m],M(Pj) = M∆(N )(Pj,trans)

ti ∈ enabled(M) \ inhibited(M)⇔

M∆(N )(Penabled,i) = 1M∆(N )(PnotEnabled,i) = 0M∆(N )(Pν,i) = νi

M∆(N )(Pinhibited,i) = 0∀k ∈ I(ti),∀l ∈ {1, . . . ,m}, ◦tki (Pl) > 0⇒M(Pinhib,l,i) ∈ {0, 1}∀k ∈ I(ti),∃l ∈ {1, . . . ,m}, ◦tki (Pl) > 0 ∧M(Pinhib,l,i) = 0

ti ∈ enabled(M) ∩ inhibited(M)⇔

M∆(N )(Penabled,i) = 1M∆(N )(PnotEnabled,i) = 0M∆(N )(Pν,i) = νi

M∆(N )(Pinhibited,i) = nombre des hyperarcs inhibiteursde N qui sont en train d’inhiber ti∀k ∈ I(ti),∀l ∈ {1, . . . ,m}, ◦tki (Pl) > 0⇒M(Pinhib,l,i) = 0

ti 6∈ enabled(M)⇔

M∆(N )(Penabled,i) = 0M∆(N )(PnotEnabled,i) = 1M∆(N )(Pν,i) = 0M∆(N )(Pinhibited,i) = nombre des hyperarcs inhibiteursde N qui sont en train d’inhiber ti∀k ∈ I(ti),∀l ∈ {1, . . . ,m}, ◦tki (Pl) > 0⇒M(Pinhib,l,i) = 0

Deux etats sont relies par ≈ta si les etats correspondent en termes de marquage des placeset de valuation des chronometres.

Nous prouvons desormais que notre traduction preserve le comportement du reseau dePetri a chronometres initial au sens ou la semantique en temps discret de ce reseau et lasemantique de sa traduction sont (faiblement) bisimilaires via une abstraction du temps. Letheoreme 5.5 etablit que les reseaux de Petri temporels a arcs de reset et hyperarcs inhibi-teurs bornes en temps discret et les reseaux de Petri temporels a arcs de reset et hyperarcsinhibiteurs 1-saufs en temps discret sont d’expressivite equivalente en termes de bisimulationtemporelle.

Par consequent, dans la suite, nous pouvons faire notre preuve en considerant un reseau dePetri temporel a arcs de reset et hyperarcs inhibiteurs 1-sauf N = (P, T,•(.), (.)•,�(.), a, b,M0,I) et Sdiscrete

N = (Q, q0, T,→) sa semantique. Soit Ni le reseau de Petri (non temporise) avecarcs de reset et hyperarcs inhibiteurs associe a la transition ti de N , comme cela est definisur la figure 5.16 et f la fonction de synchronisation definie precedemment. La semantique de∆(N ) = (N1×. . .×Nn)f est le systeme de transitions S∆(N ) = (Q∆(N ), q

∆(N )0 , T∆(N ),→∆(N )).

Theoreme C.1 (Bisimulation). ≈ta est une relation de bisimulation faible via une abs-traction du temps, ce qui signifie : pour tout (M,ν) ∈ SN et M∆(N ) ∈ S∆(N ) tels que(M,ν) ≈ta M∆(N ), nous avons :

Page 181: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

175

– (M,ν) ti−→ (M ′, ν ′) ⇔

M∆(N )

wti−−�∆(N ) M′

∆(N )

(M ′, ν ′) ≈ta M′

∆(N )

(1)

Ou wti = titinhib,k1,l1 . . . tinhib,kr,lststartClock,i1 . . . tstartClock,iq , M∆(N )

wti−−�∆(N ) M′

∆(N )

represente l’execution M∆(N )

ti−�∆(N ) M01∆(N )

tinhib,

−−−−�∆(N ) M0r∆(N )

ti−�∆(N ) M1∆(N )

tstartClock,i1−−−−−−−−�∆(N ) . . .tstartClock,iq

−−−−−−−−�∆(N ) M′

∆(N ), tinhib,k1,l1, . . ., tinhib,kr,ls sont les tran-sitions nouvellement sensibilisees par le tir de ti et non inhibee dans l’etat resultant dutir de ti (ces transitions peuvent etre tirees dans n’importe quel ordre), et tstartClock,i1,. . ., tstartClock,iq sont les q transitions nouvellement sensibilisees par le tir de ti dans∆(N ) et qui sont inhibees dans l’etat resultant de ti. Une fois qu’elles sont tirables, cestransitions peuvent etre tirees dans n’importe quel ordre.

– (M,ν) 1−→ (M,ν ′) ⇔

{M∆(N )

τ−→∆(N ) M′

∆(N )

(M,ν ′) ≈ta M′

∆(N )

(2)

Preuve. La preuve est adaptee de celle que nous avons donnee pour les reseaux de Petritemporels en temps discret.

Nous commencons par prouver l’assertion (2).

• Ecoulement discret de tempsSoient (M,ν) ∈ QN , M∆(N ) ∈ Q∆(N ) tels que (M,ν) ≈ta M∆(N ).

Nous allons prouver que si le rRdPTI N en temps discret peut laisser du temps s’ecoulerdepuis un etat, le meme processus est possible, depuis l’etat en relation avec l’etat deN , sur le reseau de Petri avec arcs de reset et hyperarcs inhibiteurs que nous avonsconstruit, i.e. si le systeme peut laisser survenir un pas temporel discret τ , alors il estpossible de simuler cet ecoulement temporel via le tir d’une transition wτ dans le RdP :

∀i ∈ {1, . . . , n}(ti ∈ enabled(M) \ inhibited(M)⇒ νi + 1 ≤ bi)⇒M∆(N )(Penabled,i) = 1 ∧M∆(N )(Pinhibited,i) = 0

∀k ∈ I(ti), (∀l ∈ {1, . . . ,m}, ◦tki (Pl) > 0⇒M(Pinhib,l,i) ∈ {0, 1})∧(∃l ∈ {1, . . . ,m}, ◦tki (Pl) > 0 ∧M(Pinhib,l,i) = 1)∧M∆(N )(Pν,i) + 1 ≤ bi)

Puisque nous supposons que le rRdPTI N est dans un etat dans lequel le tempspeut s’ecouler, nous avons, pour toutes les transitions ti de N sensibilisees et noninhibees par M : νi + 1 ≤ bi. Comme (M,ν) ≈ta M∆(N ), M∆(N )(Penabled,i) = 1,M∆(N )(PnotEnabled,i) = 0, M∆(N )(Pinhibited,i) = 0 et M∆(N )(Pν,i) = νi. De plus, ∀k ∈I(ti),∃l ∈ {1, . . . ,m}, ◦tki (Pl) > 0 ∧M(Pinhib,l,i) = 0. Ainsi la transition τenabled,i n’estpas inhibee et M∆(N )(Pν,i) < bi : la transition τenabled,i peut de fait etre tiree.

Considerons maintenant tous les indices k tels que tk (de N ) n’est pas sensibilisee,M∆(N )(Penabled,k) = 0,M∆(N )(PnotEnabled,k) = 1, M∆(N )(Pν,k) = 0, et soit M∆(N )(Pinhibited,k) = 0, soitM∆(N )(Pinhibited,k) = 1 :– Si M∆(N )(Pinhibited,k) = 1, alors τnotEnabled,k est inhibee, mais τinhibited,k est tirable ;

Page 182: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

176 Correction de la traduction des SwPN en temps discret vers les RdP

– Si M∆(N )(Pinhibited,k) = 0, alors τnotEnabled,k est tirable, tandis que τinhibited,k n’estpas sensibilisee.

Enfin, nous etudions toutes les transitions tl du reseau initial qui sont sensibiliseesmais pas inhibees. Nous avons alors M∆(N )(Penabled,l) = 1, M∆(N )(PnotEnabled,l) = 0,M∆(N )(Pν,l) = νtl et M∆(N )(Pinhibited,l) = 1 ; cela implique que τnotEnabled,l n’est passensibilisee, τenabled,l est sensibilisee mais inhibee, et τinhibited,l est tirable.

Finalement, nous pouvons deduire qu’une transition temporelle discrete τ peut etretiree au sein du reseau ∆(N ). Le tir de τ ne modifie pas le marquage de :– Pj,trans pour tout j ∈ {1, . . . ,m} ;– PnotEnabled,i, Penabled,i et Pinhibited,i ∀i ∈ {1, . . . , n} ;– Pν,k pour tout k tel que tk ∈ T n’etait pas sensibilisee ou etait inhibee par M .Pour l tel que tl ∈ T etait sensibilisee et non inhibee par M , le tir de τ genere uneaugmentation du marquage de Pν,l de un jeton. Il est alors immediat que les etatsatteints sont bisimilaires :

(M,ν ′) ≈ta M′

∆(N )

Reciproquement, nous allons prouver que, s’il est possible de tirer une transition represen-tant un pas temporel discret dans le RdP avec arcs de reset et hyperarcs inhibiteurs,alors le rRdPTI en temps discret peut laisser une unite de temps s’ecouler.

Conformement a la semantique des reseaux de Petri temporels a arcs de reset et hy-perarcs inhibiteurs, un pas temporel discret peut survenir si et seulement si ∀ti ∈enabled(M) \ inhibited(M), ν(ti) + 1 ≤ b(ti). Puisque (M,ν) et M∆(N ) sont en re-lation, ∀ti ∈ enabled(M), ν(ti) = M∆(N )(Pν,i). Puisqu’une transition discrete wτ peutetre tiree dans le reseau de Petri avec arcs de reset et hyperarcs inhibiteurs, nous avons∀ti ∈ enabled(M) \ inhibited(M),M∆(N )(Pν,i) < b(ti), ce qui prouve notre resultat : lerRdPTI peut laisser une unite de temps s’ecouler (donc sans modification du marquage)et :

(M,ν ′) ≈ta M′

∆(N )

Ainsi, ≈ta est une bisimulation pour la relation de transition de temps discret.

• Transition discrete – Tir d’une transition tiSoit (M,ν) ∈ QN et M∆(N ) ∈ Q∆(N ) deux etats en relation.

Nous allons montrer que si une transition discrete est tirable dans le rRdPTI N , alorselle est egalement tirable pour le RdP avec arcs de reset et hyperarcs inhibiteurs ∆(N )et que les deux etats resultants sont en relation.

Supposons qu’une transition ti du rRdPTI peut etre tiree depuis un etat (M,ν) : ti ∈enabled(M) et ti 6∈ inhibited(M) et ai ≤ νi ≤ bi. Le marquage resultant est M ′ =M − max(�ti ×M t,•ti) + t•i et la valuation resultante est ν ′(tk) = 0 pour toutes lestransitions nouvellement sensibilisees tk, toutes les autres valuations restant inchangees.

Le tir de la transition associee est permis sur le reseau de Petri avec arcs de resetet hyperarcs inhibiteurs que nous avons construit si et seulement si M∆(N ) ≥ •ti etM(Pinhibited,i) = 0.

Page 183: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

177

Puisque la transition ti de N est tirable (donc sensibilisee et non inhibee) (M,ν) ≈ta

M∆(N ), M∆(N ) ≥ •ti, M∆(N )(Pinhibited,i) = 0 et ∀k ∈ I(ti),∃l ∈ {1, . . . ,m}, ◦tki (Pl) >0 ∧M(Pinhib,l,i) = 0. Cela implique que la transition ti de ∆(N ) est tirable.

Consequence directe de la regle de tir, nous avons ∀k ∈ {1, . . . , n} tel que tk 6∈↑enabled(M, ti) :– si tk etait sensibilisee par M et reste sensibilisee pendant et apres le tir de ti :M01

∆(N )(Penabled,k) = 1∧ M01∆(N )(PnotEnabled,k) = 0∧ M01

∆(N )(Pν,k) = νk

– si tk n’etait pas sensibilisee par M et reste non sensibilisee apres le tir de ti :M01

∆(N )(Penabled,k) = 0∧ M01∆(N )(PnotEnabled,k) = 1∧ M01

∆(N )(Pν,k) = 0– si tk etait sensibilisee par M , est desensibilisee par le tir de ti et n’est pas sensibilisee

par M01∆(N ) : M1

∆(N )(Penabled,k) = 0∧ M01∆(N )(PnotEnabled,k) = 1∧ M01

∆(N )(Pν,k) = 0

Une transition est caracterisee par le fait qu’elle est sensibilisee ou non, mais aussipar le fait qu’elle est potentiellement inhibee. Par consequent, nous avons egalement∀k ∈ {1, . . . , n} tel que tk 6∈↑ enabled(M, ti) :– Si tk etait inhibee par M (par un ensemble d’hyperarcs inhibiteurs kinh ∈ I(tk)) et

reste inhibee par au moins un des hyperarcs inhibiteurs pendant et apres le tir de ti :M01

∆(N )(Pinhibited,k) = 1. Et pour tous les hyperarcs inhibiteurs qui inhibaient tk avantle tir de ti et qui n’inhibent plus la transition, le marquage des places correspondantesPinhib,.,k vaut 1. Le marquage des places Pinhib,.,k correspondant aux hyperarcs inhi-biteurs qui continuent d’inhiber la transition vaut 0. Le marquage des places Pinhib,.,k

correspondant aux hyperarcs inhibiteurs qui inhibent nouvellement la transition vaut1.

– Si tous les hyperarcs inhibiteurs qui inhibaient tk dans N n’inhibent plus la transitionet s’il n’y a pas d’hyperarc inhibiteur qui inhibe nouvellement tk :M01

∆(N )(Pinhibited,k) =0. De plus, pour tous les hyperarcs inhibiteurs qui inhibaient tk avant le tir de ti etqui n’inhibent plus la transition, le marquage des places correspondantes Pinhib,.,k

vaut 1.– Si tk etait inhibee par M et n’est plus inhibee apres le tir de ti : M01

∆(N )(Pinhibited,k) =0. De plus, pour tous les hyperarcs inhibiteurs de tk, le marquage des places corres-pondantes Pinhib,.,k vaut 1.

– Si tk n’etait pas inhibee parM et deviens inhibee apres le tir de ti :M01∆(N )(Pinhibited,k) =

0. Pour tous les hyperarcs inhibiteurs de tk qui n’inhibent pas la transition dans l’etatcourant, le marquage des places correspondantes Pinhib,.,k vaut 1. Pour les hyperarcsinhibiteurs de tk qui inhibent la transition dans l’etat courant, le marquage des placescorrespondantes Pinhib,.,k vaut 0.

– Si tk n’etait pas inhibee parM et reste non inhibee apres le tir de ti :M01∆(N )(Pinhibited,k) =

0. Pour tous les hyperarcs inhibiteurs de tk, le marquage des places correspondantesPinhib,.,k vaut 1.

La traduction respecte les fonctions d’incidence amont et aval du reseau initial N pourtoutes les transitions t ∈ T . C’est pourquoi ∀l ∈ {1, . . . ,m},M01

∆(N )(Pl) = M ′(Pl).

Nous devons maintenant prouver qu’il est impossible de tirer une transition globalewτ avant qu’un etat M

∆(N ) bisimilaire a (M ′, ν ′) soit atteint grace au tir de certainestransitions instantanees (ces transitions instantanees sont : tstartClock,j , tj et tinhib,k,j

pour tout j ∈ {1, . . . , n} et k ∈ {1, . . . ,m}).

Page 184: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

178 Correction de la traduction des SwPN en temps discret vers les RdP

Par definition de la fonction de synchronisation f , wτ peut etre tiree si et seulement si,dans chaque motif Ni, soit τenabled,i, soit τnotEnabled,i soit τinhibited,i est tirable.

Considerons desormais tous les indices jnew ∈ {1, . . . , n} tels que tjnew est nouvellementsensibilisee dans N , par exemple par une place Pk (k ∈ {1, . . . ,m}). Par applicationdirecte de la regle de tir dans ∆(N ), M01

∆(N )(Pinhib,k,jnew) = 1 et M1∆(N )(Pk,trans) ≥•

tinhib,k,j . Toutes les autres transitions de ∆(N ) sont inhibee, a l’exception de tinhib,k1,j1 .Cela implique que tinhib,k,jnew est tirable. Le tir de ces transitions conduit a un etatM1

∆(N ) ou aucune transition tinhib,k1,j1 n’est encore tirable.

Cela signifie que : pour tout indice jinh ∈ {1, . . . , n} tel que tjinhest inhibee dans le

reseau N , M1∆(N )(Pinhibited,jinh

) = 1 ∧∀k ∈ I(tjinh),∀l ∈ {1, . . . ,m}, ◦tkjinh

(Pl) > 0 ⇒M1

∆(N )(Pinhib,l,jinh) = 0

Les transitions τenabled,jinh, τnotEnabled,jinh

et tjinhsont alors inhibees par Pinhibited,jinh

.Meme si ces transitions sont sensibilisees, elles ne sont donc pas tirables.

Considerons desormais les transitions nouvellement sensibilisee par le tir de ti a partirdu marquage M∆(N ). Puisque la traduction respecte les fonctions d’incidence amont etaval du reseau initial N pour toutes les transitions t ∈ T , nous avons alors :∀j ∈ {1, . . . , n}, (tj ∈↑ enabled(M, ti) ⇔ tstartClock,j ∈↑ enabled(M∆(N ), ti)) et∀j ∈ {1, . . . , n}, tj ∈↑ enabled(M, ti),∀k ∈ {1, . . . ,m} t.q. Pk est une place d’entree detj ,M

1∆(N )(Pk,trans) = M ′(Pk).

Dans cette configuration, les seules transitions tirables sont celles qui correspondent ades transitions nouvellement inhibees au sein du reseau N . Le tir de ces transitionstinhib,k1,j1 (ou k1 ∈ {1, . . . ,m}, j1 ∈ {1, . . . , n}) conduit a des etats intermediaires danslesquels certaines transitions tstartClock,j peuvent etre tirees (j ∈ {1, . . . , n} tel quetj ∈↑ enabled(M, ti)).

De plus, le tir de ti dans ∆(N ) implique : M01∆(N )(p(notEnabled, j)) = 1∧

M01∆(N )(p(enabled, j)) = 0 ∧ M01

∆(N )(p(ν, j)) = 0 Le tir d’une transition tinhib,k1,j1 nemodifie pas le marquage de Penabled,k, PnotEnabled,k et Pν,k. Par consequent, apres avoirtire toutes les transitions tinhib,k1,j1 , nous avons :M1

∆(N )(PnotEnabled,j) = 1 ∧M1∆(N )(Penabled,j) = 0 ∧M1

∆(N )(Pν,j) = 0

Par consequent, τenabled,j n’est pas sensibilisee par M1∆(N ) alors que τnotEnabled,j l’est.

τnotEnabled,j est toutefois inhibee par l’hyperarc inhibiteur en provenance de Penabled,j

et de Pk,trans. Ni τnotEnabled,j , ni τenabled,j ne sont alors tirables. De plus, τj,inhibited estsoit non sensibilisee, soit inhibee.

A contrario, tstartClock,j est tirable.

Cela signifie que toutes les transitions tstartClock,j doivent etre tirees avant qu’un nouveaupas temporel discret soit effectue.

Pendant le processus de tir de ces transitions instantanees tstartClock,j , une autre tran-sition discrete th pourrait survenir. Dans ce cas, la meme analyse s’applique : toutes les

Page 185: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

179

transitions tstartClock,h (ou h ∈ {1, . . . , n} tel que tstartClock,m est nouvellement sensibi-lisee par le tir de tl) doivent etre tirees avant qu’un autre pas temporel discret ne soiteffectue.

Apres le tir de toutes les transitions tstartClock,j , nous avons :∀j ∈ {1, . . . , n}, tj ∈↑ enabled(M, ti),∀l ∈ {1, . . . ,m} tel que Pl est une place d’entree detj ,M

∆(N )(PnotEnabled,j) = 0∧M ′

∆(N )(Penabled,j) = 1∧M ′

∆(N )(Pν,j) = 0∧M ′

∆(N )(Pl,trans) =M ′(Pl).

De plus, le tir de toute transition tinhib,k1,j1 ou tstartClock,j ne modifie pas le marquagede Penabled,k, PnotEnabled,k et Pν,k avec k ∈ {1, . . . , n} tel que tk 6∈↑ enabled(M, ti). Il nemodifie pas non plus le marquage des places Pl,trans, ou l ∈ {1, . . . ,m}.

Au final, cela signifie que les etats resultants sont en relation :

(M ′, ν ′) ≈ta M′

∆(N )

Reciproquement, nous prouvons que si ti est tirable dans le reseau de Petri a arcs dereset et hyperarcs inhibiteurs, alors cette meme transition est tirable dans le reseau dePetri temporel a arcs de reset et hyperarcs inhibiteurs et que les deux etats resultantssont en relation.

Le tir correspondant de ti est possible sur le rRdPTI et conduit a un nouvel etat note(M ′, ν ′) si et seulement si :

ti ∈ enabled(M) et ti 6∈ inhibited(M)M ′ = M −max(�ti ×M t,•ti) + t•ia(ti) ≤ ν(ti) ≤ b(ti),

∀ transitions tk , ν ′(tk) =

{0 if tk ∈ ↑enabled(M, ti)ν(tk) sinon

Par definition du RdP avec arcs de reset et hyperarcs inhibiteurs que nous avonsconstruit, si ti est tirable, nous avons M(Penabled,i) = 1, M(PnotEnabled,i) = 0,M(Pinhibited,i) = 0 et ai ≤ M∆(N )(Pν,i) = νi ≤ bi. Le marquage resultant est, pardefinition, M ′ = M − max(�ti × M t,•ti) + t•i . Dans le RdP avec arcs de reset ethyperarcs inhibiteurs que nous avons construit, nous avons : M ′

∆(N ) = M ′∆(N ) =

M∆(N ) −max(�ti ×M t∆(N ),

•ti) + t•i

Il reste a prouver que les etats resultants sont en relation.

Par construction (M,ν) ≈ta M∆(N ). Le tir de ti dans le reseau ∆(N ) remet a zero lemotif associe a cette transition. Il peut alors etre necessaire de tirer certaines transi-tions instantanees tstartClock,j ou tinhib,k,j , ou tstartClock,j et tinhib,k,j sont nouvellementsensibilisees par le tir de ti. Une analyse semblable a celle adoptee auparavant permetde prouver que le tir de toutes les transitions tstartClock,j et tinhib,k,j est necessaire avantqu’une transition wτ soit tiree. Le tir de ces transitions conduit a un etat M

∆(N ) quiest en relation avec (M,ν ′) :

Page 186: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

180 Correction de la traduction des SwPN en temps discret vers les RdP

(M ′, ν ′) ≈ta M′

∆(N )

De ce fait, ≈ta est une bisimulation pour les transitions discretes. �

Page 187: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

Annexe D

Algorithmes pour la verification deformules TCTL sur des reseaux dePetri a chronometres en tempsdiscret

Cette partie synthetise les travaux realises par Gilles Benattar, desormais doctorant del’equipe Modelisation et Verification des Systemes embarques (MoVeS) de l’IRCCyN, dansle cadre d’un stage de Master que j’encadrais [Ben07].

D.1 Notations

firable((M,D), , ta) renvoie l’ensemble des transitions ti tirables depuis la classe (M,D)telles que si ta ∈ enabled(M) et ta /∈ inhibited(M), ti = ta ou ν(ti) < ν(ta). firable((M,D), ta,tb) renvoie l’ensemble des transitions ti ∈ firable((M,D), ta) telles que si ti = b, alors∀tj ∈ T telles que tj 6= ti et tj ∈ enabled(M) et tj /∈ inhibited(M), ν(ti) < ν(tj). Enfin,firableLT ((M,D), b) renvoie l’ensemble des transitions ti tirables depuis la classe (M,D)telles que si ti = b, alors ∀tj ∈ T telles que tj 6= ti et tj ∈ enabled(M) et tj /∈ inhibited(M),ν(ti) < ν(tj).

D.2 Intervalles TCTL de la forme [a, b]

L’algorithme permet de verifier des proprietes TCTL de la forme ∃ϕUIψ ou ∀ϕUIψ avecI = [a, b].

Dans les deux cas, nous commencons par ajouter une place PTCTL au reseau, precedee parune transition ta (a laquelle est associe l’intervalle de tir [a, a]) et suivie d’une transition tb (alaquelle est associe l’intervalle de tir [b−a, b−a]). tb est suivie d’une place PfinTCTL, et ta estprecedee par une place PavTCTL. Initialement, la place PavTCTL est marquee d’un jeton. Lafigure D.1 represente l’observateur genere pour la verification de la propriete ∃ϕU[a,b]ψ . Unefois l’observateur introduit, nous utilisons les algorithmes D.1 et D.2 pour verifier la proprieteTCTL initialement enoncee.

Page 188: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

182 Verification de formules TCTL

PavTCTL

ta [a,a]

PTCTL

tb [b-a,b-a]

PfinTCTL

Fig. D.1 – Observateur pour les intervalles de la forme [a, b]

D.3 Intervalles TCTL de la forme [a,∞[

L’algorithme permet de verifier des proprietes TCTL de la forme ∃ϕUIψ ou ∀ϕUIψ avecI = [a,∞[.

Nous commencons par ajouter une place PTCTL au reseau, precedee par une transitionta (a laquelle est associe l’intervalle de tir [a, a]). La transition ta est precedee par une placePavTCTL. Initialement, la place PavTCTL est marquee d’un jeton. La figure D.2 representel’observateur genere pour la verification de la propriete ∃ϕU[a,∞[ψ . Une fois l’observateurintroduit, nous utilisons les algorithmes D.3 et D.4 pour verifier la propriete TCTL.

PavTCTL

ta [a,a]

PTCTL

Fig. D.2 – Observateur pour les intervalles de la forme [a,∞[

Page 189: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

D.4 Reponse bornee 183

Algorithme D.1 Algorithme pour la verification de ∃ϕUIψ, ou I est de la forme [a, b]Passed← ∅Waiting ← {(M0, D0)}tant que Waiting 6= ∅ faire

(M,D)← pop(Waiting)Passed← Passed ∪ (M,D)si M(PfinTCTL) = 0 alors

si check((M,D), ψ) et (M(PTCTL) = 1) alorsrenvoyer vrai

sinonsi check((M,D), ϕ) alors

pour tout t ∈ firable((M,D), ta, tb) fairesi next((M,D), t) /∈ Passed ∪Waiting alorsWaiting ← next((M,D), t)

fin sifin pour

fin sifin si

fin sifin tant que

D.4 Reponse bornee

L’algorithme permet de verifier des proprietes TCTL de la forme ϕ [0,b] ψ.

Nous commencons par ajouter une transition tb au reseau, a laquelle est associe l’inter-valle de tir [b, b]. tb est suivie d’une place PfinTCTL. Initialement, tb n’est pas sensibilisee. lafigure D.3 represente l’observateur genere pour la verification de la propriete ϕ [0,b] ψ. Unefois l’observateur introduit, nous utilisons l’algorithme D.5 pour verifier la propriete TCTLinitialement enoncee.

tb [b,b]

PfinTCTL

Fig. D.3 – Observateur pour la reponse bornee

D.5 Preuve formelle du theoreme 9.9

Nous donnons ici une preuve formelle du theoreme 9.9 etablissant que les algorithmesproposes pour verifier des proprietes TCTL sur les reseaux de Petri a chronometres en temps

Page 190: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

184 Verification de formules TCTL

Algorithme D.2 Algorithme pour la verification de ∀ϕUIψ, ou I est de la forme [a, b]Passed← ∅Waiting ← {(M0, D0)}tant que Waiting 6= ∅ faire

(M,D)← pop(Waiting)Passed← Passed ∪ (M,D)si M(PfinTCTL) = 0 alors

si non (check((M,D), ψ) et (M(PTCTL) = 1)) alorssi check((M,D), ϕ) alors

pour tout t ∈ firable((M,D), ta, tb) faireM ′ ← M − max(�t×M t,•t) + t•

pour tout (M ′, D′) ∈ (M ′, DBM split(nextdense(D, t) [RL04]) fairesi (M ′, D′) /∈ Passed ∪Waiting alorsWaiting ← (M ′, D′)

fin sifin pour

fin poursinon

renvoyer fauxfin si

fin sisinon

renvoyer fauxfin si

fin tant que

discret sont corrects.

Preuve. Soit un rRdPTI N = (P, T,•(.), (.)•, a, b,M0, I) avec SdiscreteN = (Q, q0, T,→) sa

semantique en temps discret.

Soit σ = (M0, ν0)d1,t1−−−→ . . .

dn,tn−−−→ (Mn, νn) une execution de N .

Montrons qu’en utilisant les observateurs, la verification de formules TCTL sur N seramene a la verification de proprietes qui ne dependent que des sequences de tirs des transi-tions. Ces dernieres sont intimement liees a l’evolution du marquage du reseau. Il en resulteque la verification de formules TCTL sera correcte si la procedure de calcul de l’espace d’etatsl’est.

Nous considerons les proprietes suivantes :– Soit p une proposition atomique. (M,ν) |= p si et seulement si M |= p. La verification

d’une propriete atomique ne depend donc que des marquages.– N |= ∀φUIψ si et seulement si le reseau obtenu a partir de N en ajoutant l’observateur

adequat satisfait ∀(φ ∧M(PfinTCTL) = 0)U(ψ ∧M(PTCTL) ≥ 0). N |= ∃φUIψ si etseulement si le reseau obtenu a partir de N en ajoutant l’observateur adequat satisfait∃(φ∧M(PfinTCTL) = 0)U(ψ∧M(PTCTL) ≥ 0), donc la verification de proprietes TCTLest ainsi ramenee a la verification de proprietes CTL.

Page 191: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

D.5 Preuve formelle du theoreme 9.9 185

Algorithme D.3 Algorithme pour la verification de ∃ϕUIψ, ou I est de la forme [a,∞[Passed← ∅Waiting ← {(M0, D0)}tant que Waiting 6= ∅ faireCurrent← pop(Waiting)Passed← Passed ∪ Currentsi check(Current, ψ) et (M(PTCTL) = 1) alors

renvoyer vraisinon

si check(Current, ϕ) alorspour tout t ∈ firable((M,D), ta) faireM ′ ← M − max(�t×M t,•t) + t•

pour tout (M ′, D′) ∈ (M ′, DBM split(nextdense(D, t) [RL04]) fairesi (M ′, D′) /∈ Passed ∪Waiting alorsWaiting ← (M ′, D′)

fin sifin pour

fin pourfin si

fin sifin tant que

– La verification de proprietes CTL ne depend que du calcul de l’espace d’etats. En effet :– (M,ν) |= ∀φUψ si et seulement si, pour toute sequence de tirs σ du reseau N , nous

avons{

(M0, ν0) = (M,ν)∀i ∈ {1, . . . , n},Mi |= φ et Mn |= ψ

– (M,ν) |= ∃φUψ si et seulement si il existe une sequence de tirs σ du reseau N telle

que{

(M0, ν0) = (M,ν)∀i ∈ {1, . . . , n},Mi |= φ et Mn |= ψ

Par consequent, la verification d’une propriete CTL se ramene a l’etude de l’evolutiondes marquages du reseau, donc des sequences de tir non temporisees de transitions. Orces sequences sont toutes determinees par le calcul de l’espace d’etats.

Par ailleurs, nous avons demontre que la methode de calcul de l’espace d’etats base surl’algorithme 9.1 est correcte. Il en resulte que la demarche de verification de proprietes TCTLbasee sur le recours a des observateurs l’est egalement. �

Page 192: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

186 Verification de formules TCTL

Algorithme D.4 Algorithme pour la verification de ∀ϕUIψ, ou I est de la forme [a,∞[Passed← ∅Waiting ← {(M0, D0)}tant que Waiting 6= ∅ faire

(M,D)← pop(Waiting)Passed← Passed ∪ (M,D)si non (check((M,D), ψ) et (M(PTCTL) = 1)) alors

si check((M,D), ϕ) alorspour tout t ∈ firable((M,D), ta) faireM ′ ← M − max(�t×M t,•t) + t•

pour tout (M ′, D′) ∈ (M ′, DBM split(nextdense(D, t) [RL04]) fairesi (M ′, D′) /∈ Passed ∪Waiting alorsWaiting ← (M ′, D′)

fin sifin pour

fin poursinon

renvoyer fauxfin si

fin sifin tant que

Page 193: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

D.5 Preuve formelle du theoreme 9.9 187

Algorithme D.5 Algorithme pour la verification de ϕ [0,b] ψ

phitrue← fauxphioupsi← fauxPassed← ∅Waiting ← {(M0, D0)}tant que Waiting 6= ∅ faire

(M,D)← pop(Waiting)Passed← Passed ∪ (M,D)phitrue← phioupsisi phitrue alors

si M(PfinTCTL) = 0 alorssi check((M,D), ψ) alorsphioupsi← fauxDesensibiliser la transition tb

fin sisinon

renvoyer fauxfin si

sinonsi check((M,D), ϕ) alorsphioupsi← vraiSensibiliser la transition tb

fin sifin sisi (firable((M,D)) = ∅) et (phioupsi = vrai) alors

renvoyer fauxfin sipour tout t ∈ firableLT ((M,D), tb) faireM ′ ← M − max(�t×M t,•t) + t•

pour tout (M ′, D′) ∈ (M ′, DBM split(nextdense(D, t) [RL04]) fairesi (M ′, D′) /∈ Passed ∪Waiting alorsWaiting ← (M ′, D′)

fin sifin pour

fin pourfin tant querenvoyer vrai

Page 194: Th`ese de Doctorat M€¦ · Ecole Centrale de Nantes Universit´e de Nantes´ E´ COLE DOCTORALE SCIENCES ET TECHNOLOGIE DE L’INFORMATION ET DES MATERIAUX´ Ann´ee 2007 Th`ese

ResumeDans cette these, nous comparons les approches en temps dense et en temps discret pour la

verification de systemes temps reel via une extension des reseaux de Petri temporels, appeleereseaux de Petri a chronometres.

Le temps dense consiste a considerer le temps comme une grandeur dense tandis quele temps discret l’assimile a une grandeur discrete. Les applications physiques evoluent parrapport au temps physique qui est continu ; toutefois, l’evolution du procede n’est en general ob-servee par le systeme informatique qui ne le pilote qu’a des instants particuliers (echantillonnageou observations sporadiques). De plus, le systeme de pilotage est compose de taches qui sontexecutees sur un (ou plusieurs) processeur(s) dont le temps physique est discret. Le recoursa un temps dense lors de la modelisation conduit donc a une surapproximation du systemeinformatique. Mais l’interet majeur du temps dense reside dans les abstractions symboliquesassociees, pratiques a mettre en œuvre et contenant l’explosion combinatoire des etats.

Nous avons commence par ameliorer les methodes de calcul de l’espace d’etats en tempsdense. Nous avons ensuite etabli une classification des reseaux de Petri en temps discret.Nous avons propose une methode efficace de calcul enumeratif de l’espace d’etats de modelesen temps discret. Comme toute methode purement enumerative, celle-ci souffre toutefois del’explosion combinatoire du nombre d’etats. C’est pourquoi nous avons concu une methodesymbolique permettant de calculer l’espace d’etats d’un modele en temps discret en adaptantles techniques habituellement reservees au temps dense.Mots-cles :

Reseaux de Petri a chronometres, verification, expressivite, temps dense, temps discret.Abstract

In this thesis, we compare the dense-time and discrete-time approaches for the verificationof real time systems modeled with an extension of time Petri nets, namely stopwatch Petrinets.

In dense-time semantics, time is considered as a dense quantity while, in discrete-timesemantics, it is considered as a discrete variable. Physical systems (processes) follow a dense-time evolution. The observation of the process is however usually performed through an ITcommand system which pilots it only at some specific instants (digitalization or periodic ob-servations). In addition, the command system is composed of tasks that are executed on one(or more) processor(s) for which physical time is discrete. Dense-time thus leads to an over-approximation of the IT system. The major advantage of dense-time lies in the symbolicabstractions it offers : they are easy to put into application and they avoid the combinatorialexplosion of states.

We first improved the dense-time state space computation of stopwatch Petri nets. Wethen established a complete classification of discrete-time models in terms of expressivity anddecidability results. We proposed an efficient enumerative procedure for computing the statespace of discrete-time nets. As any enumerative method, it suffers however from the combina-torial explosion of the number of states. That is why we finally focused on a symbolic methodfor computing the state space of discrete-time models by extending to discrete-time semanticsthe techniques usually applied for dense-time models.Keywords:

Stopwatch Petri nets, model-checking, expressiveness, dense-time, discrete-time.

These n°ED