33

Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

Embed Size (px)

Citation preview

Page 1: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 2: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 3: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 4: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 5: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 6: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 7: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 8: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 9: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 10: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 11: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 12: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 13: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 14: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 15: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

[email protected]

Amal Chamakh Mémoire de �n d'études 7 / 19

Page 16: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

[email protected]

⇒ Espace d'états in�ni

Amal Chamakh Mémoire de �n d'études 7 / 19

Page 17: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 18: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 19: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 20: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 21: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 22: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 23: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 24: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 25: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 26: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 27: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 28: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 29: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 30: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 31: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 32: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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

Page 33: Mémoire de projet de n d'études - lipn.univ-paris13.frrodriguez/seminar/2015/chamakh... · Réseaux de Petri temprelso Le système Coq Modélisation via PNML Spéci cation en Coq

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