Vérification de réseaux de Pétri avec états sous une sémantique d'ordres partiels
Auteur / Autrice : | Florent Avellaneda |
Direction : | Rémi Morin |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 10/12/2013 |
Etablissement(s) : | Aix-Marseille |
Ecole(s) doctorale(s) : | École doctorale Mathématiques et Informatique de Marseille (Marseille ; 1994-....) |
Jury : | Président / Présidente : Peter Niebert |
Examinateurs / Examinatrices : Hanna Klaudel, Jean michel Couvreur, Benoit Caillaud | |
Rapporteur / Rapporteuse : Jerome Leroux, Stefan Haar |
Mots clés
Résumé
Les MSG (pour « Message Sequence Graphs ») sont un formalisme bien connu et souvent utilisé pour décrire des ensembles de scénarios de manière visuelle dans le domaine des protocoles de communication. Nous nous intéressons dans la première partie de la thèse à la détection de la divergence, la vérification de la coopération globale ainsi que la vérification de propriétés d’accessibilité et de couverture. Notre première contribution consiste à utiliser des solveurs SAT afin de résoudre ces problèmes efficacement. Afin de munir le formalisme des MSG de compteurs, de timers et d’autres aspects, nous introduisons le modèle des PNS (pour « réseaux de Petri avec états ») et une sémantique de processus non-branchants. Ce modèle est non seulement plus expressif que les MSG, mais il permet également des spécifications plus concises. Nous nous intéressons à trois problèmes de vérification classiques sur l’ensemble des marquages accessibles par les préfixes des processus : le caractère borné, la couverture et l’accessibilité. Afin de considérer des systèmes paramétrés, nous introduisons également la notion de borne semi-structurelle. Cela consiste à fixer le marquage initial d’un sous-ensemble approprié de places, puis à vérifier que le système est borné, quelles que soient les valeurs des paramètres. Nous montrons comment un dépliage conduit à un problème plus simple à vérifier. Une caractéristique particulièrement attrayante des MSG et des PNS réside dans leur représentation graphique similaire à un automate. Il est donc intéressant de décrire les bugs de manière visuelle. Nous montrons comment calculer en temps polynomial une représentation simple et concise d’un bug.