Systèmes d'agents concurrents - Modélisation et vérification à l'aide de réseaux de Petri.

par Yves-Stan Le cornec

Thèse de doctorat en Informatique

Sous la direction de Franck Pommereau.

Thèses en préparation à Paris Saclay , dans le cadre de Sciences et Technologies de l'Information et de la Communication , en partenariat avec IBISC - Informatique, Biologie Intégrative, & Systèmes Complexes (laboratoire) et de université d'Evry-Val-d'Essonne (établissement opérateur d'inscription) .


  • Résumé

    Dans cette thèse, on s'intéresse au problème de l'explosion combi- natoire du model-checking sur des systèmes modulaires. Les techniques d'abstractions hiérarchiques permettent de construire de manière incré- mentale une abstraction d'un modèle en composant des abstractions de ses parties. Cette opération doit en outre préserver les propriétés d'intérêt du modèle. Dans un premier temps, on définit le formalisme des réseaux de ré- gulation modulaires, dans le but de pouvoir étudier des systèmes biolo- giques en utilisant de l'abstraction hiérarchique. On utilise ensuite cette méthode pour détecter les états stables accessibles depuis un état donné sur un modèle multicellulaire intervenant lors du développement em- bryonnaire de la drosophile. L'opération d'abstraction SAFETY utilisée préserve l'accessibilité de tous les états stable. C'est une réduction clas- sique et générique dans le sens ou elle préserve également toutes les pro- priétés de sûreté d'un système. Dans un second temps, on suppose que l'on a connaissance de la formule globale (exprimée en μ-calcul) que l'on veut vérifier, ainsi que de l'état initial du module. On défini alors deux opérations de réduc- tion différentes. Ces réductions ont pour seule contrainte de préserver la valeur global de la formule et il est donc possible d'obtenir des réduc- tions plus importantes qu'avec les méthodes génériques (le but reste le même : réduire la taille d'un module ou d'un sous-système donné sans avoir connaissance du reste du système). Lors du calcul de cette réduc- tion, on effectue de l'analyse partielle pour déterminer si le sous-système contient assez d'information pour connaître la valeur de vérité de la for- mule sur le système global. Si c'est le cas, on peut arrêter là l'analyse par abstraction hiérarchique ; sinon, cette étape est tout de même utile pour réduire le module. Enfin, on teste la première de ces réductions à l'aide d'un prototype sur quelques exemples simples. En plus de constater les coefficients de réduction obtenus, cela permet de fournir des données pour s'attaquer par la suite au problème du meilleur ordre d'analyse hiérarchique. C'est en effet un problème difficile et l'ordre d'analyse a une grande influence sur les performances de ces méthodes.

  • Titre traduit

    Model checking modular systems with Petri nets


  • Résumé

    In this thesis, we are interested in limiting the combinatorial explosion that happens when model-checking modular systems. We use hierarchical abstraction techniques, which allow one to build an abstraction of a mo- dular system by composing abstractions of his part, while ensuring that this abstraction does not change the temporal properties we are interested in. At first, we define the modular regulation networks formalism in or- der to apply hierarchical abstraction techniques to the study of biological systems. We then use this approach to find the reachable stable states of a multi-cellular model involved in the development of the fruit fly embryo. For this, we use the abstraction called SAFETY which reduces a system while keeping all of its reachable stable states. This is a classical reduc- tion which is quite general in the sens that it also preserves all the safety properties of the model. After this, we define two new reduction operations, which are de- pendent on the μ-calculus formula we seek to verify on the global sys- tem (we also assume that we know the initial state of the module or sub- system to be reduced). Since these reductions must only preserve the va- lue of one formula over the global system, they should be able to return smaller systems than the general ones. While computing these reductions on one module or sub-system, we use partial analysis techniques to test if it contains enough information to conclude about the truth value of the formula on the global system. If it is the case, we can stop the incremental analysis right away ; otherwise, this step is still useful for the computation of the reduced sub-system. Finally, we use a prototype to test the first one of our reduction ope- rations on some simple examples. This enables us to observe how big the reductions are as well as getting data in order to tackle the problem of the order of analysis in the future. It is a difficult question and an important one since the hierarchical order in which we build the abstraction has a huge weight on the efficiency of these methods.