Upload
phungdung
View
220
Download
0
Embed Size (px)
Citation preview
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Mémoire de projet de �n d'études
Spéci�cation et véri�cation des réseaux de Petri temporels en Coq
Amal Chamakh
TuteursMme Micaela Mayero - M. Kais Klai
Laboratoire d'Informatique de Paris Nord
Université Paris 13
le 22 Janvier 2015
Amal Chamakh Mémoire de �n d'études 1 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Contexte et Problématique
Prolifération de systèmes pour :
• Surveiller les automatismes des transports terrestres
• Piloter des avions et des fusées
• Contrôler des centrales nucléaires
• Transmettre des données con�dentielles
Amal Chamakh Mémoire de �n d'études 2 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Contexte et Problématique
Prolifération de systèmes pour :
• Surveiller les automatismes des transports terrestres
• Piloter des avions et des fusées
• Contrôler des centrales nucléaires
• Transmettre des données con�dentielles
→ Erreur = désastres humains, �nanciers et environnementaux
Amal Chamakh Mémoire de �n d'études 2 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Contexte et Problématique
Prolifération de systèmes pour :
• Surveiller les automatismes des transports terrestres
• Piloter des avions et des fusées
• Contrôler des centrales nucléaires
• Transmettre des données con�dentielles
→ Erreur = désastres humains, �nanciers et environnementaux
Une solution : la véri�cation formelle.
Amal Chamakh Mémoire de �n d'études 2 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
La véri�cation formelle : prouver mécaniquement que le programmevéri�e une propriété
Amal Chamakh Mémoire de �n d'études 3 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
La véri�cation formelle : prouver mécaniquement que le programmevéri�e une propriété
Model checking Preuve Formelle
Amal Chamakh Mémoire de �n d'études 3 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
La véri�cation formelle : prouver mécaniquement que le programmevéri�e une propriété
Model checking
• automatique
• contre exemple fourni parun model checker
• décidable sur des systèmes�nis → problème del'explosion combinatoire
Preuve Formelle
Amal Chamakh Mémoire de �n d'études 3 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
La véri�cation formelle : prouver mécaniquement que le programmevéri�e une propriété
Model checking
• automatique
• contre exemple fourni parun model checker
• décidable sur des systèmes�nis → problème del'explosion combinatoire
Preuve Formelle
• non automatique
• fastidieuse
• applicable sur dessystèmes paramétrés,in�nis
Amal Chamakh Mémoire de �n d'études 3 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
La véri�cation formelle : prouver mécaniquement que le programmevéri�e une propriété
Model checking
• automatique
• contre exemple fourni parun model checker
• décidable sur des systèmes�nis → problème del'explosion combinatoire
Preuve Formelle
• non automatique
• fastidieuse
• applicable sur dessystèmes paramétrés,in�nis
⇒ Combiner model checking et preuve formelle.
Amal Chamakh Mémoire de �n d'études 3 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Objectifs
• Combiner preuve formelle et model checking de systèmestemporisés
• Validations qualitative et quantitative des systèmes temporisés
• Modélisation par des réseaux de Petri temporels
Amal Chamakh Mémoire de �n d'études 4 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Plan
Réseaux de Petri temporels
Le système Coq
Modélisation via PNML
Spéci�cation en Coq
Preuves sur les TPNs
Conclusion
Amal Chamakh Mémoire de �n d'études 5 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Réseaux de Petri temporels
Réseau de Petri P/T
Un outil de modélisation enphase de conception desystèmes.
Réseau de Petri temporel (TPN)
Extension des RdPs P/T :
• Intervalle de temps(statique)
• Horloge v
pour chaque transition
Amal Chamakh Mémoire de �n d'études 6 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Réseaux de Petri temporels
Réseau de Petri P/T
Un outil de modélisation enphase de conception desystèmes.
Réseau de Petri temporel (TPN)
Extension des RdPs P/T :
• Intervalle de temps(statique)
• Horloge v
pour chaque transition
Amal Chamakh Mémoire de �n d'études 6 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Réseaux de Petri temporels
Amal Chamakh Mémoire de �n d'études 7 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Réseaux de Petri temporels
Amal Chamakh Mémoire de �n d'études 7 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Réseaux de Petri temporels
⇒ Espace d'états in�ni
Amal Chamakh Mémoire de �n d'études 7 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Preuves formelles
Coq : assistant de preuve basé sur le langage Gallina- types usuels des langages de programmation- exprimer des assertions sur les expressions
Etapes
• Modéliser le système
• Spéci�er formellement le modèle : axiomes, règles d'inférence...• Écrire des preuves formelles :
1 Théorème : Proposition2 Preuve : Ensemble de tactiques → démontrer le théorème
Amal Chamakh Mémoire de �n d'études 8 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Preuves formelles
Coq : assistant de preuve basé sur le langage Gallina- types usuels des langages de programmation- exprimer des assertions sur les expressions
Etapes
• Modéliser le système
• Spéci�er formellement le modèle : axiomes, règles d'inférence...• Écrire des preuves formelles :
1 Théorème : Proposition2 Preuve : Ensemble de tactiques → démontrer le théorème
Amal Chamakh Mémoire de �n d'études 8 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Modélisation via PNML
PNML (Petri Net Markup Language) : format standard dedescription de réseaux de Petri.
Amal Chamakh Mémoire de �n d'études 9 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Modélisation via PNML
PNML (Petri Net Markup Language) : format standard dedescription de réseaux de Petri.
Amal Chamakh Mémoire de �n d'études 9 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
De PNML à Coq
Parser⇒Flex etBison
Amal Chamakh Mémoire de �n d'études 10 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Spéci�cation en Coq I
Aspect statique : composants du réseau et conditions
- État initial du réseau- Transition sensibilisée- Transition nouvellement sensibilisée- Transition persistante- Transition franchissable
→ Fonctions récursives :Fixpoint
Amal Chamakh Mémoire de �n d'études 11 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Spéci�cation en Coq II
Aspect dynamique : opérations et changements d'états
- Relation de transition continue : écoulement du temps
- Relation de transition discrète : franchissement d'une transition
Amal Chamakh Mémoire de �n d'études 12 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Aspect dynamique : opérations et changements d'états
- Relation de transition continue : écoulement du temps
- Relation de transition discrète : franchissement d'une transition
(m, v)(t,d)→ (m′, v ′)
Amal Chamakh Mémoire de �n d'études 13 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Preuves sur les TPNs
Théorème (Proposition) :
• Franchissabilité d'une séquence S de transitions
• Accessibilité d'un marquage (état)
• Franchissabilité de S dans un temps donné (calcul du tempsminimum de franchissement)
Amal Chamakh Mémoire de �n d'études 14 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Preuves sur les TPNs
Théorème (Proposition) :
• Franchissabilité d'une séquence S de transitions
• Accessibilité d'un marquage (état)
• Franchissabilité de S dans un temps donné (calcul du tempsminimum de franchissement)
S : contre exemple fourni par un model checker
Amal Chamakh Mémoire de �n d'études 14 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Preuves sur les TPNs
Théorème (Proposition) :
• Franchissabilité d'une séquence S de transitions
• Accessibilité d'un marquage (état)
• Franchissabilité de S dans un temps donné (calcul du tempsminimum de franchissement)
S : contre exemple fourni par un model checker
Preuves récursives : Propositions inductivesPreuves récursives et in�nies : Propositions coinductives
Amal Chamakh Mémoire de �n d'études 14 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Preuves sur les TPNs
Le langage Ltac :
- écriture de tactiques personnalisées
- construction par �ltrage (pattern matching)
- backtracking : retour en arrière
Amal Chamakh Mémoire de �n d'études 15 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Preuves sur les TPNs
Le langage Ltac :
- écriture de tactiques personnalisées
- construction par �ltrage (pattern matching)
- backtracking : retour en arrière
⇒ Automatisation des preuves
Amal Chamakh Mémoire de �n d'études 15 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Preuves sur les TPNs
Lemma Franchissable: franchissable_i S02 State0.Proof.co�x .rewrite (frob_eq S02).compute.prove_franchissable .Qed.
Amal Chamakh Mémoire de �n d'études 16 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Conclusion
Di�cultés :
• La manière de faire collaborer les deux approches devéri�cation
• Calcul sur les nombres réels et la complexité de Coq
• L'automatisation et l'optimisation du temps d'exécution d'unepreuve
Amal Chamakh Mémoire de �n d'études 17 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Conclusion
Dans le futur :
• Étudier le gain de ce travail sur des systèmes complexes :temps, e�cacité..
• Faire collaborer notre approche avec le model checkingparallèle
Amal Chamakh Mémoire de �n d'études 18 / 19
Réseaux de Petri temporelsLe système Coq
Modélisation via PNMLSpéci�cation en CoqPreuves sur les TPNs
Conclusion
Laboratoire d'Informatique de Paris Nord
Merci
de votre attention
Amal Chamakh Mémoire de �n d'études 19 / 19