these
140 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
140 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Universite Paris 7 - Denis DiderotUFR d’InformatiqueTHESEpour l’obtention du titre deDocteur de l’Universite Paris 7Specialite Informatiquepresentee parDenis Oddouxsur le sujetUtilisation des automates alternantspour un model-checking e cacedes logiques temporelles linerairessoutenue publiquement le 17 decembre 2003 devant le jury suivant :Jean-Eric Pin President du JuryBeatrice Berard RapporteuseNicolas Halbwachs RapporteurPaul Gastin Directeur de TheseThomas WilkePierre WolperRemerciementsJe remercie Jean-Eric Pin de m’avoir fait l’honneur de presider le jury de cette these,Beatrice Berard et Nicolas Halbwachs d’avoir accepte d’en ^etre les rapporteurs, ThomasWilke et Pierre Wolper pour avoir accepte de participer au jury.Je tiens particulierement a remercier Paul Gastin pour m’avoir guide dans mon travailau cours de ces annees, pour son attention et son aide a mes travaux de recherche, pour sadisponibilite exceptionnelle, et pour avoir ete capable, en toutes circonstances, de trouverune solution constructive a chacune de mes di cult es.Je remercie en n les joyeux lurons de PPS pour leur accueil et leur soutien moral aucours des nombres pauses-gouter^ autour de la fontaine, ainsi que l’ensemble des personnesque j’ai pu rencontrer au cours de ces trois annees au LIAFA.Table des matieresTable des matieres 51 Introduction generale 91.1 Les methodes de veri cation . . . . . . . . . . . . . . . . . . . ...

Informations

Publié par
Nombre de lectures 42
Langue Français

Extrait

Universite Paris 7 - Denis Diderot
UFR d’Informatique
THESE
pour l’obtention du titre de
Docteur de l’Universite Paris 7
Specialite Informatique
presentee par
Denis Oddoux
sur le sujet
Utilisation des automates alternants
pour un model-checking e cace
des logiques temporelles lineraires
soutenue publiquement le 17 decembre 2003 devant le jury suivant :
Jean-Eric Pin President du Jury
Beatrice Berard Rapporteuse
Nicolas Halbwachs Rapporteur
Paul Gastin Directeur de These
Thomas Wilke
Pierre WolperRemerciements
Je remercie Jean-Eric Pin de m’avoir fait l’honneur de presider le jury de cette these,
Beatrice Berard et Nicolas Halbwachs d’avoir accepte d’en ^etre les rapporteurs, Thomas
Wilke et Pierre Wolper pour avoir accepte de participer au jury.
Je tiens particulierement a remercier Paul Gastin pour m’avoir guide dans mon travail
au cours de ces annees, pour son attention et son aide a mes travaux de recherche, pour sa
disponibilite exceptionnelle, et pour avoir ete capable, en toutes circonstances, de trouver
une solution constructive a chacune de mes di cult es.
Je remercie en n les joyeux lurons de PPS pour leur accueil et leur soutien moral au
cours des nombres pauses-gouter^ autour de la fontaine, ainsi que l’ensemble des personnes
que j’ai pu rencontrer au cours de ces trois annees au LIAFA.Table des matieres
Table des matieres 5
1 Introduction generale 9
1.1 Les methodes de veri cation . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.1 Les tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.1.2 Les methodes formelles . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.1.3 Methodes formelles ou tests, que choisir ? . . . . . . . . . . . . . . . 11
1.2 Le model-checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.2.1 Le modele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.2 La speci cation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.2.3 Les algorithmes de model-checking . . . . . . . . . . . . . . . . . . 13
1.3 Contenu de la these . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
I Notions de base 15
2 Logiques temporelles lineaires 17
2.1 LTL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.1.1 De nitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.1.2 Simpli cation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2 PLTL : LTL avec passe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3 Model-checking pour LTL et PLTL 23
3.1 Formalismes utilises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2 Algorithme general de model-checking . . . . . . . . . . . . . . . . . . . . . 24
3.2.1 Complexite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.2.2 Principe general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2.3 Explications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3 De la logique temporelle aux automates . . . . . . . . . . . . . . . . . . . . 27
3.3.1 La methode des tableaux . . . . . . . . . . . . . . . . . . . . . . . . 27
3.3.2 Methodes incrementales . . . . . . . . . . . . . . . . . . . . . . . . 29
56 Table des matieres
II Model-checking e cace pour LTL 31
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Approche utilisee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Simpli cations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Plan de la partie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4 Automates alternants 37
4.1 De nitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.1.1 Combinaisons booleennes positives . . . . . . . . . . . . . . . . . . 37
4.1.2 Automates alternants . . . . . . . . . . . . . . . . . . . . . . . . . . 38
4.1.3 Q-for^et, execution, langage . . . . . . . . . . . . . . . . . . . . . . . 38
4.1.4 Q-DAGs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.2 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.3 De LTL aux automates alternants tres faibles . . . . . . . . . . . . . . . . 44
4.3.1 Construction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.3.2 Preuve de l’equivalence . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.3.3 Complexite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5 Automates de Buc hi generalises 51
5.1 De nition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
5.2 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.3 Des automates alternants tres faibles aux automates de Buc hi generalises . 52
5.3.1 Construction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
5.3.2 Preuve de l’equivalence . . . . . . . . . . . . . . . . . . . . . . . . . 54
5.3.3 Complexite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6 Model-checking pour LTL 57
6.1 Des automates de Buc hi generalises aux automates de Buc hi classiques . . 57
6.1.1 Construction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.1.2 Automates d’acceptation . . . . . . . . . . . . . . . . . . . . . . . . 58
6.1.3 Preuve de l’equivalence . . . . . . . . . . . . . . . . . . . . . . . . . 60
6.1.4 Complexite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.2 Automates de Buc hi generalises et model-checking . . . . . . . . . . . . . . 61
6.2.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
6.2.2 Complexite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
7 Implementation 63
7.1 Optimisation des structures de donnees . . . . . . . . . . . . . . . . . . . . 63
7.1.1 L’etiquetage des transitions . . . . . . . . . . . . . . . . . . . . . . 63
7.1.2 Transitions des automates alternants . . . . . . . . . . . . . . . . . 64
7.1.3 De nitions et constructions . . . . . . . . . . . . . . . . . . . . . . 65Table des matieres 7
7.2 Simpli cation des automates . . . . . . . . . . . . . . . . . . . . . . . . . . 67
7.2.1 Simpli cation des transitions . . . . . . . . . . . . . . . . . . . . . . 68
7.2.2 des etats . . . . . . . . . . . . . . . . . . . . . . . . . 71
7.2.3 Utilisation des composantes fortement connexes . . . . . . . . . . . 72
7.2.4 Simpli cation a la volee . . . . . . . . . . . . . . . . . . . . . . . . 73
7.3 Resultats experimentaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
7.4 L’outil ltl2ba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
7.4.1 Utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
7.4.2 Structure du programme . . . . . . . . . . . . . . . . . . . . . . . . 77
7.4.3 Interface web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
7.4.4 References web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
III L’extension a PLTL 81
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Choix d’une approche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
Approche utilisee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Plan de la partie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
8 Automates alternants a double sens 87
8.1 De nitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
8.1.1 Automates alternants a double sens . . . . . . . . . . . . . . . . . . 87
8.1.2 progressants . . . . . . . . . . . . . . . . . . . . . . . . 89
8.2 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
8.3 Des automates alternants tres faibles a double sens aux automates progressants 96
8.3.1 Construction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
8.3.2 Preuve de l’equivalence . . . . . . . . . . . . . . . . . . . . . . . . . 97
8.3.3 Complexite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
8.4 De PLTL aux automates progressants tres faibles . . . . . . . . . . . . . . 99
8.4.1 Construction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
8.4.2 Preuve de l’equivalence . . . . . . . . . . . . . . . . . . . . . . . . . 101
8.4.3 Complexite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
9 Automates de Buc hi a memoire 111
9.1 De nition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
9.2 Des automates progressants tres faibles aux automates de Buc hi a memoire 112
9.2.1 Premiere construction . . . . . . . . . . . . . . . . . . . . . . . . . 112
9.2.2 Preuve de l’equivalence . . . . . . . . . . . . . . . . . . . . . . . . . 113
9.2.3 Complexite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
9.2.4 Deuxieme Construction . . . . . . . . . . . . . . . . . . . . . . . . . 114
9.2.5 Preuve de l’

  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents