Aspects quantitatifs et probabilistes pour des modèles à

Transcription

Aspects quantitatifs et probabilistes pour des modèles à
L ABORATOIRE D ’I NFORMATIQUE DE N ANTES -ATLANTIQUE
UMR 6241
É COLE DOCTORALE STIM, N . 503
« Sciences et technologies
de l’information et des mathématiques »
Sujet de thèse pour 2014
Aspects quantitatifs et probabilistes pour des modèles à
événements discrets
Application au B événementiel
Directeur de thèse
N OM, Prénom
: JARD, Claude
Équipe d’accueil
: AELOS
Unité de recherche
: LINA (UMR 6241)
Unité de rattachement
: UFR ST, Univ. Nantes
Courriel
: claude.jard (at) univ-nantes.fr
Taux d’encadrement
: 40 %
Nombre de thèses en cours : 2
Co-encadrant
N OM, Prénom
: D ELAHAYE, Benoît
Équipe d’accueil
: AELOS
Unité de recherche
: LINA (UMR 6241)
Unité de rattachement
: UFR ST, Univ. Nantes
Courriel
: benoit.delahaye (at) univ-nantes.fr
Taux d’encadrement
: 30 %
Co-encadrant
N OM, Prénom
: L ANOIX, Arnaud
Équipe d’accueil
: AELOS
Unité de recherche
: LINA (UMR 6241)
Unité de rattachement
: IUT, Univ- Nantes
Courriel
: arnaud.lanoix (at) univ-nantes.fr
Taux d’encadrement
: 30 %
Financement prévu : MESR, CNRS-Région
Sujet de thèse pour 2014
Aspects quantitatifs et probabilistes pour des modèles à
événements discrets
Application au B événementiel
Résumé. Les méthodes de modélisation et de vérification formelles basées sur des modèles à
évènements discrets – par exemple Event-B – ne permettent pas, à ce jour, de prendre en compte
l’ensemble des aspects quantitatifs des systèmes réels. En particulier, la prise en compte des probabilités dans ces systèmes est une difficulté qui n’a pas été résolue dans l’état de l’art. En revanche, le domaine de la vérification a été très actif sur ces problématiques ces dernières années.
Il conviendra donc de faire le pont entre ces deux domaines. La difficulté principale résidera en
particulier dans le développement de méthodes quantitatives et probabilistes dédiées à Event-B,
un langage de modélisation formelle à évènements discrets ; il s’agira principalement d’adapter
la sémantique et les obligations de preuves associées pour prendre en compte les probabilités.
Mots clés. Modélisation, Event-B, Probabilités, Méthodes Formelles, Propriétés quantitatives
Ph. D. Proposal for 2014
Quantitative and probabilistic aspects for discrete events
models
Application to Event-B
Abstract. From the best of our knowledge, modelisation and formal verification methods based
on discrete events model – like Event-B – are not capable of handling the complete spectrum
of quantitative aspects from real-life systems. While dealing with probabilistic behavior in such
systems is one of the major difficulties still unresolved in the litterature, other domains like
verification have been very active on this topic in the past few years. As a consequence, one
of the potential ways of attacking this problem would be to work on a bridge between discrete
event modeling and classical verification techniques. The main difficulty will be in developing
quantitative and probabilistic methods dedicated to Event-B – a formal language based on discrete
events. Thus, instead of just translating problems from one domain to another, the main goal
will be to adapt the semantics and associated proof obligations of Event-B to take into account
probabilities by using the knowledge and expertise from the verification domain.
Keywords. Modelisation, Event-B, Probablities, Formal methods, Quantitative properties
2
Introduction
Contexte et problématique
Le développement et l’étude de systèmes matériels comme logiciels passent aujourd’hui
toujours par une phase de modélisation et de vérification. Autant que possible, on essaie
de travailler sur des modèles formels que l’on peut vérifier de manière exacte. De plus,
dès que l’on considère des systèmes réels (qu’ils soient matériels, logiciels ou encore naturels), il est souvent nécéssaire de prendre en compte des aspects quantitatifs tels que
le temps, les ressources énergétiques, les incertitudes comportementales, la qualité des
matériels, etc. Il devient dès lors impossible de modéliser de tels systèmes de manière
exacte et discrétisée. Une solution est d’utiliser la théorie des probabilités pour abstraire
les aspects “incertains” de ces systèmes : les incertitudes sont modélisées par des distributions de probabilité, et on parle alors de modèles stochastiques. Plutôt que de vérifier
des propriétés exactes de manière binaire, on s’intéresse alors à la vérification formelle
de propriétés quantitatives. Cela permet entre autres de considérer des propriétés telles
que la fiabilité ou la disponibilité des systèmes.
Parmi les outils ayant fait le succès des méthodes de modélisation et de vérification
formelles, on trouve notamment la méthode B. La méthode B a été développée dans le
but de modéliser et de raisonner sur des systèmes séquentiels [Abr96]. Event-B est une
évolution plutôt dédiée à la modélisation et à la vérification de systèmes distribués réactifs [Abr10]. B / Event-B a été largement utilisé pour valider de nombreux cas d’études industriels [LS07, BY08, Lan08, DB09, FRB11]. Les propriétés vérifiées sont principalement
des propriétés de sûreté (invariant et absence de blocage). La sémantique d’un modèle B
est définie par un ensemble d’obligations de preuve, permettant d’assurer qu’un modèle
est correct par construction : il s’agit principalement de démontrer que le déroulement
d’un événement préserve un certain invariant. Un développement B événementiel s’effectue via un processus de raffinement, consistant à prendre en compte étapes par étapes
tous les détails du modèle : chaque raffinement successif doit préserver le comportement
du modèle précédent. Les avantages de Event-B sont i) un langage formel de modélisation de haut niveau bien défini et bien adapté à l’échelle industrielle, ii) un processus de
développement par raffinement largement documenté [Abr10, CM08], et iii) Rodin, un
ensemble d’outils pour la spécification et la vérification de modèles B [ABH+ 10, Rod].
Il s’agit d’une plateforme de développement basée sur Eclipse qui embarque entre autre
des outils de preuve (automatique et interactive) permettant de décharger les obligations
de preuves assurant la cohérence d’un modèle B et le raffinement. La plateforme Rodin
est extensible et adaptable par le développement de plugins spécifiques [HFA13].
Problèmes et opportunités
A l’heure actuelle, on ne sait pas encore bien prendre en compte tous les aspects quantitatifs/probabilistes dans une modélisation B évenementiel. Dans [HH07, YH10] le choix
non-déterministe de B est remplacé par un simple choix probabiliste plus équitable, et
3
l’axiomatique des obligations de preuve est modifiée en conséquence. Il est montré
qu’un modèle B avec choix probabiliste est un raffinement correct du même modèle,
non-déterministe. Dans [TTL10, TTL11], il est simplement proposé d’exprimer des probabilités aux niveaux des événements ; ces probabilités servent ensuite uniquement à
déduire une probabilité globale d’assurer une certaine propriété d’invariance.
D’un autre côté, le développement de méthodes probabilistes dans le domaine de
la vérification est en plein essor. Il existe de nombreuses méthodes permettant de modéliser des systèmes avec des aspects quantitatifs et probabilistes ; elles sont aussi bien
basées sur les algèbres de processus [And99, LN04] que sur des systèmes de transition [dA97, CDL+ 11]. Il existe également de nombreux outils permettant de vérifier de
tels systèmes [BDL+ 11, KNP04]. Des travaux récents mettent en avant une modélisation
à base de contrats hypothèse/garantie embarquant des aspects probabilistes et quantitatifs [DCL11, KNPQ10].
L’exploitation des avancées récentes dans le cadre des méthodes probabilistes pour
complèter Event-B pourrait accroitre considérablement le pouvoir expressif de B et les
possibilités des outils de vérification, en permettant d’intégrer des aspects quantitatifs au
sein du processus de développement B.
Travail demandé
Objectifs
Le défi est d’établir un pont entre les deux domaines (modèles B événementiels et discrets vs. modèles stochastiques probabilistes). Si des similarités évidentes existent entre
ces deux mondes, le projet de recherche présenté ici ne consiste pas en un transfert direct d’un problème de modélisation B vers des outils et méthodes classiques du monde
probabiliste mais plutôt en l’étude d’une nouvelle sémantique quantitative et probabiliste pour Event-B. Il s’agira donc en pratique de développer et d’étudier de nouvelles
obligations de preuves dédiées à l’expression et à la vérification des aspects quantitatifs
et probabilistes des systèmes. Une fois ces obligations développées, elles seront intégrées
à la sémantique de B et l’on pourra s’intéresser à l’expression de propriétés quantitatives et à leur validation sur des modèles B combinant des aspects discrets et des aspects
probabilites.
Plan de travail prévisionnel de l’étude
• Etat de l’art à propos de l’expression et de la vérification – en particulier par des
démarches de preuve – de propriétés probabilistes ;
• Intégration de l’expression de probabilités dans le langage Event-B (au niveau des
gardes des événements ? au niveau des substitutions constituant ces événements ?)
4
et définition de nouvelles obligations de preuve pour valider la cohérence de ces
nouvelles expressions ;
• Expression de propriétés quantitatives en B événementiel et leur vérification ;
• Définition d’un processus de développement intégrant par raffinement les aspects
probabilistes au sein d’un modèle Event-B ;
En parallèle de ces aspects théoriques, on s’attachera au développement d’un plugin pour
la plateforme Rodin permettant d’outiller la démarche. Des exprimentations grandeur
nature pourront être réalisées sur la plateforme expérimentale de démonstration (un jeu
de « tennis » entre deux mini-robots) mise en place par l’équipe STR à l’IRCCyN dans le
cadre du projet AFSEC-PDL.
Candidats
Compétences
Les candidats doivent avoir une bonne maîtrise du domaine des méthodes formelles ainsi
que des compétences et un goût prononcé pour les mathématiques et en particulier la
théorie des probabilités.
5
Bibliographie
[ABH+ 10] Jean-Raymond Abrial, Michael Butler, Stefan Hallerstede, Thai Son Hoang,
Farhad Mehta, and Laurent Voisin. Rodin : an open toolset for modelling and
reasoning in Event-B. STTT, 12(6) :447–466, 2010.
[Abr96]
J.-R. Abrial. The B Book. Cambridge University Press, 1996.
[Abr10]
Jean-Raymond Abrial. Modeling in Event-B : System and Software Engineering.
Cambridge University Press, New York, NY, USA, 1st edition, 2010.
[And99]
Suzana Andova. Process algebra with probabilistic choice. In Proc. 5th International AMAST Workshop on Formal Methods for Real-Time and Probabilistic
Systems (ARTS), Bamberg, Germany, volume 1601 of Lecture Notes in Computer Science, pages 111–129. Springer, 1999.
[BDL+ 11] Gerd Behrmann, Alexandre David, Kim G. Larsen, Paul Pettersson, and Wang
Yi. Developing UPPAAL over 15 years. Software : Practice and Experience,
41(2) :133–142, February 2011.
[BY08]
Michael Butler and Divakar Yadav. An incremental development of the mondex system in event-b. Formal Asp. Comput., 20(1) :61–77, 2008.
[CDL+ 11] Benoît Caillaud, Benoît Delahaye, Kim G. Larsen, Axel Legay, Mikkel L. Pedersen, and Andrzej Wasowski. Constraint markov chains. Theor. Comput.
Sci., 412(34) :4373–4404, 2011.
[CM08]
Dominique Cansell and Dominique Méry. The Event-B Modelling Method Concepts and Case Studies. In Logics of Specification Languages, Monographs
in Theoretical Computer Science, pages 33–140. Springer, February 2008.
[dA97]
L. de Alfaro. Formal Verification of Probabilistic Systems. PhD thesis, Stanford
University, 1997.
[DB09]
Kriangsak Damchoom and Michael J. Butler. Applying Event and Machine
Decomposition to a Flash-Based Filestore in Event-B. In SBMF, pages 134–
152, 2009.
6
[DCL11]
Benoît Delahaye, Benoît Caillaud, and Axel Legay. Probabilistic contracts :
a compositional reasoning methodology for the design of systems with stochastic and/or non-deterministic aspects. Formal Methods in System Design,
38(1) :1–32, 2011.
[FRB11]
Asieh Salehi Fathabadi, Abdolbaghi Rezazadeh, and Michael Butler. Applying
Atomicity and Model Decomposition to a Space Craft System in Event-B. In
NASA Formal Methods, pages 328–342, 2011.
[HFA13]
Thai Son Hoang, Andreas Fürst, and Jean-Raymond Abrial. Event-b patterns
and their tool support. Softw. Syst. Model., 12(2) :229–244, May 2013.
[HH07]
Stefan Hallerstede and Thai Son Hoang. Qualitative probabilistic modelling
in event-b. In Proceedings of the 6th International Conference on Integrated
Formal Methods, IFM’07, pages 293–312, Berlin, Heidelberg, 2007. SpringerVerlag.
[KNP04]
M. Z. Kwiatkowska, G. Norman, and D. Parker. Prism 2.0 : A tool for probabilistic model checking. In Proc. 1st International Conference on Quantitative Evaluation of Systems (QEST), Enschede, The Netherlands, pages 322–323.
IEEE, 2004.
[KNPQ10] Marta Z. Kwiatkowska, Gethin Norman, David Parker, and Hongyang Qu.
Assume-guarantee verification for probabilistic systems. In TACAS, volume
6015 of Lecture Notes in Computer Science, pages 23–37. Springer, 2010.
[Lan08]
Arnaud Lanoix. Event-B Specification of a Situated Multi-Agent System :
Study of a Platoon of Vehicles. In 2nd IFIP/IEEE International Symposium
on Theoretical Aspects of Software Engineering (TASE 2008), page 8 pages,
France, June 2008.
[LN04]
Natalia López and Manuel Núñez. An overview of probabilistic process algebras and their equivalences. In Validation of Stochastic Systems - A Guide
to Current Research, volume 2925 of Lecture Notes in Computer Science, pages
89–123. Springer, 2004.
[LS07]
Thierry Lecomte and Thierry Servat. Formal methods in safety-critical railway
systems. In 10th Brasilian Symposium on Formal Methods, 2007.
[Rod]
RODIN : Event-B Platform. available online at http ://www.event-b.org/.
[TTL10]
Anton Tarasyuk, Elena Troubitsyna, and Linas Laibinis. Towards probabilistic
modelling in event-b. In Proceedings of the 8th International Conference on
Integrated Formal Methods, IFM’10, pages 275–289, Berlin, Heidelberg, 2010.
Springer-Verlag.
7
[TTL11]
Anton Tarasyuk, Elena Troubitsyna, and Linas Laibinis. Quantitative verification of system safety in event-b. In Proceedings of the Third International
Conference on Software Engineering for Resilient Systems, SERENE’11, pages
24–39, Berlin, Heidelberg, 2011. Springer-Verlag.
[YH10]
Emre Yilmaz and Thai Son Hoang. Development of rabin’s choice coordination algorithm in event-b. ECEASST, 35, 2010.
CV du directeur de thèse
C LAUDE JARD est professeur de classe exceptionnelle à l’Université de Nantes depuis
2012. Il est directeur de la fédération CNRS AtlanSTIC. Il était auparavant professeur à
l’ENS Cachan et directeur de la recherche de son antenne de Bretagne. Son domaine de
recherche concerne la modélisation formelle des comportements des systèmes répartis.
Il a contribué aux questions de spécification, vérification, test et supervision de ces systèmes. Il est particulièrement actif ces dernières années sur les questions liées au temps
et à la causalité dans le cadre des systèmes ouverts. C LAUDE JARD est auteur de plus de
150 publications.
CV du co-encadrant
B ENOÎT D ELAHAYE est Maître de conférence à l’Université de Nantes depuis Septembre
2013. Il exerce ses activités de recherche au LINA dans l’équipe AeLoS. Ses thématiques
de recherche sont centrées sur le développement de méthodes pour la vérification et la
spécification de systèmes quantitatifs et en particulier probabilistes. Ses travaux portent
aussi bien sur la partie théorique du problème, i.e. le développement de méthodologies
pour la modélisation et la vérification exacte de systèmes quantitatifs, que sur la partie
pratique du problème, i.e. de développement d’algorithmes et d’outils, notamment statistiques, utilisables en pratique. B ENOÎT D ELAHAYE est auteur de plus de 20 publications.
CV du co-encadrant
A RNAUD L ANOIX est Maître de conférence à l’Université de Nantes (IUT) depuis Septembre 2008 et chargé de mission Licence Pro SIL depuis septembre 2013. Il exerce
ses activités de recherches au LINA dans l’équipe AeLoS. Ses thématiques de recherches
sont centrées sur l’utilisation des méthodes formelles pour la validation des systèmes et
des logiciels, en particulier l’adaptation de processus de construction comme le raffinement aux problématiques liées à l’assemblage de composants hétérogènes. Ses derniers
travaux portent sur des problématiques liées à la formalisation et à la vérification des
opérations de reconfigurations dynamiques d’une architecture à base de composants ou
services. A RNAUD L ANOIX est auteur de plus de trente publications.
8