Model checking temporisé

Dimension: px
Commencer à balayer dès la page:

Download "Model checking temporisé"

Transcription

1 Model checking temporisé Béatrice Bérard LAMSADE Université Paris-Dauphine & CNRS ETR 07, 5 septembre /44

2 Nécessité de vérifier des systèmes... 2/44

3 Nécessité de vérifier des systèmes... critiques 2/44

4 Nécessité de vérifier avec des méthodes formelles génération de tests démonstration assistée model-checking 3/44

5 Nécessité de vérifier avec des méthodes formelles génération de tests démonstration assistée model-checking 3/44

6 Nécessité de vérifier avec des méthodes formelles génération de tests démonstration assistée model-checking 3/44

7 Nécessité de vérifier avec des méthodes formelles génération de tests démonstration assistée model-checking Le système satisfait-il sa spécification? 3/44

8 Nécessité de vérifier avec des méthodes formelles génération de tests démonstration assistée model-checking Le système satisfait-il sa spécification? Modélisation ϕ 3/44

9 Nécessité de vérifier avec des méthodes formelles génération de tests démonstration assistée model-checking Le système satisfait-il sa spécification? Modélisation = ϕ algorithme de model-checking 3/44

10 Difficultés pour chacune des trois étapes Construction d un modèle M avec un système de transitions : expressivité, taille du modèle (explosion combinatoire du nombre d états). Choix d une logique dans laquelle exprimer la formule ϕ : expressivité, facilité d utilisation. Algorithme de model-checking (M = ϕ?) pour une classe de modèles et un langage de spécification : décidabilité, complexité, efficacité des outils associés. 4/44

11 Difficultés pour chacune des trois étapes Construction d un modèle M avec un système de transitions : expressivité, taille du modèle (explosion combinatoire du nombre d états). Choix d une logique dans laquelle exprimer la formule ϕ : expressivité, facilité d utilisation. Algorithme de model-checking (M = ϕ?) pour une classe de modèles et un langage de spécification : décidabilité, complexité, efficacité des outils associés. 4/44

12 Difficultés pour chacune des trois étapes Construction d un modèle M avec un système de transitions : expressivité, taille du modèle (explosion combinatoire du nombre d états). Choix d une logique dans laquelle exprimer la formule ϕ : expressivité, facilité d utilisation. Algorithme de model-checking (M = ϕ?) pour une classe de modèles et un langage de spécification : décidabilité, complexité, efficacité des outils associés. 4/44

13 Vérification quantitative en ajoutant des caractéristiques... temporisées, probabilistes, de coût, aux modèles : par exemple en tenant compte des délais dans des protocoles de communication, aux logiques : par exemple pour exprimer des propriétés de temps de réponse, tout en conservant des algorithmes de model-checking. 5/44

14 Vérification quantitative en ajoutant des caractéristiques... temporisées, probabilistes, de coût, aux modèles : par exemple en tenant compte des délais dans des protocoles de communication, aux logiques : par exemple pour exprimer des propriétés de temps de réponse, tout en conservant des algorithmes de model-checking. 5/44

15 Vérification quantitative en ajoutant des caractéristiques... temporisées, probabilistes, de coût, aux modèles : par exemple en tenant compte des délais dans des protocoles de communication, aux logiques : par exemple pour exprimer des propriétés de temps de réponse, tout en conservant des algorithmes de model-checking. 5/44

16 Plan Modèles temporisés Logiques temporisées Model-checking Conclusion 6/44

17 Plan Modèles temporisés Logiques temporisées Model-checking Conclusion 7/44

18 Définition Systèmes de transitions Act alphabet d actions, Prop ensemble de propositions atomiques, T = (S, s 0, L, E) système de transitions S ensemble de configurations, s0 configuration initiale, L : S 2 Prop, étiquetage des configurations par des ensembles de propositions atomiques, E S Act S contient des transitions d action : s a s, exécution instantanée de l action a Exemple : une structure de Kripke Une exécution : q 0 q 1 q 0 q 1 q 2 q 0... ok fault ok fault alarm ok 8/44

19 Définition Systèmes de transitions Act alphabet d actions, Prop ensemble de propositions atomiques, T = (S, s 0, L, E) système de transitions S ensemble de configurations, s0 configuration initiale, L : S 2 Prop, étiquetage des configurations par des ensembles de propositions atomiques, E S Act S contient des transitions d action : s a s, exécution instantanée de l action a Exemple : une structure de Kripke q 0, ok q 1, fault un seul type d action (omise) ok, fault, alarm : prop. atomiques q 2, alarm Une exécution : q 0 q 1 q 0 q 1 q 2 q 0... ok fault ok fault alarm ok 8/44

20 Définition Systèmes de transitions Act alphabet d actions, Prop ensemble de propositions atomiques, T = (S, s 0, L, E) système de transitions S ensemble de configurations, s0 configuration initiale, L : S 2 Prop, étiquetage des configurations par des ensembles de propositions atomiques, E S Act S contient des transitions d action : s a s, exécution instantanée de l action a Exemple : une structure de Kripke q 0, ok q 1, fault un seul type d action (omise) ok, fault, alarm : prop. atomiques q 2, alarm Une exécution : q 0 q 1 q 0 q 1 q 2 q 0... ok fault ok fault alarm ok 8/44

21 Définition Systèmes de transitions Act alphabet d actions, Prop ensemble de propositions atomiques, T = (S, s 0, L, E) système de transitions S ensemble de configurations, s0 configuration initiale, L : S 2 Prop, étiquetage des configurations par des ensembles de propositions atomiques, E S Act S contient des transitions d action : s a s, exécution instantanée de l action a Exemple : un automate (fini) p q 0 q 1 r r e m q 2 prop. atomiques : noms des états m, p, r, e : actions Une exécution : q 0 p q1 r q0 p q1 e q2 r q0 9/44

22 Définition Systèmes de transitions Act alphabet d actions, Prop ensemble de propositions atomiques, T = (S, s 0, L, E) système de transitions S ensemble de configurations, s0 configuration initiale, L : S 2 Prop, étiquetage des configurations par des ensembles de propositions atomiques, E S Act S contient des transitions d action : s a s, exécution instantanée de l action a Exemple : un automate (fini) p q 0 q 1 r r e m q 2 prop. atomiques : noms des états m, p, r, e : actions Une exécution : q 0 p q1 r q0 p q1 e q2 r q0 9/44

23 Systèmes de transitions temporisés Définition Act alphabet d actions, Prop ensemble de propositions atomiques, T = (S, s 0, L, E) système de transitions S ensemble de configurations, s0 configuration initiale, L : S 2 Prop, étiquetage des configurations par des ensembles de propositions atomiques, E S Act S contient des transitions d action : s a s, exécution instantanée de l action a des transitions de durée : s d s, écoulement d une durée d. 10/44

24 Systèmes de transitions temporisés Définition Act alphabet d actions, T domaine de temps plongé dans R 0, Prop ensemble de propositions atomiques, T = (S, s 0, L, E) système de transitions temporisé S ensemble de configurations, s0 configuration initiale, L : S 2 Prop, étiquetage des configurations par des ensembles de propositions atomiques, E S (Act T) S contient des transitions d action : s a s, exécution instantanée de l action a des transitions de durée : s d s, écoulement d une durée d. 10/44

25 Exemple 1 : structures de Kripke avec durées Une variante de [Emerson et al. 1992] [4, + [ q 0, ok q 1, fault [0, + [ [0, 2] [0, 5] [3, 3] q 2, alarm ok, fault, alarm : prop. atomiques domaine de temps : N contrainte : un intervalle de N Une exécution : q 0 15 q 1 1 q0 8 q1 3 q2 4 q0 Rq : uniquement des transitions de durées (Act est vide). 11/44

26 Exemple 1 : structures de Kripke avec durées Une variante de [Emerson et al. 1992] [4, + [ q 0, ok q 1, fault [0, + [ [0, 2] [0, 5] [3, 3] q 2, alarm ok, fault, alarm : prop. atomiques domaine de temps : N contrainte : un intervalle de N Une exécution : q 0 15 q 1 1 q0 8 q1 3 q2 4 q0 Rq : uniquement des transitions de durées (Act est vide). 11/44

27 Exemple 1 : structures de Kripke avec durées Une variante de [Emerson et al. 1992] [4, + [ q 0, ok q 1, fault [0, + [ [0, 2] [0, 5] [3, 3] q 2, alarm ok, fault, alarm : prop. atomiques domaine de temps : N contrainte : un intervalle de N Une exécution : q 0 15 q 1 1 q0 8 q1 3 q2 4 q0 Rq : uniquement des transitions de durées (Act est vide). 11/44

28 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e x : horloge à valeurs dans R 0 m, p, r, e : actions ok, fault, alarm : prop. atomiques x < 3, x = 3, x 4 : gardes x 3 : invariant {x} : remise à zéro de x 12/44

29 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e Contraintes et valuations d horloges x : horloge à valeurs dans R 0 m, p, r, e : actions ok, fault, alarm : prop. atomiques x < 3, x = 3, x 4 : gardes x 3 : invariant {x} : remise à zéro de x X ensemble d horloges, valuation v : X R 0, C(X) ensemble de contraintes d horloges : conjonctions de contraintes atomiques de la forme x c, pour une constante c et dans {<,, =,, >}. 12/44

30 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e Automate temporisé A = (Q,q 0,l,Inv, ) Q ensemble d états, q0 état initial, x : horloge à valeurs dans R 0 m, p, r, e : actions ok, fault, alarm : prop. atomiques x < 3, x = 3, x 4 : gardes x 3 : invariant {x} : remise à zéro de x l fonction d étiquetage, Inv associe un invariant à chaque état contient des transitions : g, a, r q q garde action reset 12/44

31 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm Une exécution : (q 0, [0]) 2.1 (q 2, [5.1]) r (q 0, [0]) q 1, fault x 3 x = 3, e 8.3 (q 0, [8.3]) p (q 1, [0]) 3 (q 1, [3]) e (q 2, [3]) Mot temporisé : (p, 8.3)(e, 11.3)(r, 13.4)... Etiquetage : ok, fault, alarm, ok... 13/44

32 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e Configurations : (q, v) v valeur de x satifaisant l invariant Une exécution : (q 0, [0]) 2.1 (q 2, [5.1]) r (q 0, [0]) 8.3 (q 0, [8.3]) p (q 1, [0]) 3 (q 1, [3]) e (q 2, [3]) Mot temporisé : (p, 8.3)(e, 11.3)(r, 13.4)... Etiquetage : ok, fault, alarm, ok... 13/44

33 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e Configurations : (q, v) v valeur de x satifaisant l invariant Une exécution : (q 0, [0]) 2.1 (q 2, [5.1]) r (q 0, [0]) 8.3 (q 0, [8.3]) p (q 1, [0]) 3 (q 1, [3]) e (q 2, [3]) Mot temporisé : (p, 8.3)(e, 11.3)(r, 13.4)... Etiquetage : ok, fault, alarm, ok... 13/44

34 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e Configurations : (q, v) v valeur de x satifaisant l invariant Une exécution : (q 0, [0]) 2.1 (q 2, [5.1]) r (q 0, [0]) 8.3 (q 0, [8.3]) p (q 1, [0]) 3 (q 1, [3]) e (q 2, [3]) Mot temporisé : (p, 8.3)(e, 11.3)(r, 13.4)... Etiquetage : ok, fault, alarm, ok... 13/44

35 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e Configurations : (q, v) v valeur de x satifaisant l invariant Une exécution : (q 0, [0]) 2.1 (q 2, [5.1]) r (q 0, [0]) 8.3 (q 0, [8.3]) p (q 1, [0]) 3 (q 1, [3]) e (q 2, [3]) Mot temporisé : (p, 8.3)(e, 11.3)(r, 13.4)... Etiquetage : ok, fault, alarm, ok... 13/44

36 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e Configurations : (q, v) v valeur de x satifaisant l invariant Une exécution : (q 0, [0]) 2.1 (q 2, [5.1]) r (q 0, [0]) 8.3 (q 0, [8.3]) p (q 1, [0]) 3 (q 1, [3]) e (q 2, [3]) Mot temporisé : (p, 8.3)(e, 11.3)(r, 13.4)... Etiquetage : ok, fault, alarm, ok... 13/44

37 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e Configurations : (q, v) v valeur de x satifaisant l invariant Une exécution : (q 0, [0]) 2.1 (q 2, [5.1]) r (q 0, [0]) 8.3 (q 0, [8.3]) p (q 1, [0]) 3 (q 1, [3]) e (q 2, [3]) Mot temporisé : (p, 8.3)(e, 11.3)(r, 13.4)... Etiquetage : ok, fault, alarm, ok... 13/44

38 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e Configurations : (q, v) v valeur de x satifaisant l invariant Une exécution : (q 0, [0]) 2.1 (q 2, [5.1]) r (q 0, [0]) 8.3 (q 0, [8.3]) p (q 1, [0]) 3 (q 1, [3]) e (q 2, [3]) Mot temporisé : (p, 8.3)(e, 11.3)(r, 13.4)... Etiquetage : ok, fault, alarm, ok... 13/44

39 Exemple 2 : automates temporisés Une variante de [Alur et Dill 1990] m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e Configurations : (q, v) v valeur de x satifaisant l invariant Une exécution : (q 0, [0]) 2.1 (q 2, [5.1]) r (q 0, [0]) 8.3 (q 0, [8.3]) p (q 1, [0]) 3 (q 1, [3]) e (q 2, [3]) Mot temporisé : (p, 8.3)(e, 11.3)(r, 13.4)... Etiquetage : ok, fault, alarm, ok... 13/44

40 Sémantique d un automate temporisé (1) Opérations sur les valuations X ensemble d horloges. Pour une valuation v : pour un sous-ensemble r de X, on obtient v[r 0] en remettant à 0 les horloges de r et en conservant les autres valeurs, pour une durée d, on obtient v + d en ajoutant d à toutes les valeurs d horloges. 14/44

41 Sémantique d un automate temporisé (1) Opérations sur les valuations X ensemble d horloges. Pour une valuation v : pour un sous-ensemble r de X, on obtient v[r 0] en remettant à 0 les horloges de r et en conservant les autres valeurs, pour une durée d, on obtient v + d en ajoutant d à toutes les valeurs d horloges. Vue géométrique avec deux horloges x et y y x 14/44

42 Sémantique d un automate temporisé (1) Opérations sur les valuations X ensemble d horloges. Pour une valuation v : pour un sous-ensemble r de X, on obtient v[r 0] en remettant à 0 les horloges de r et en conservant les autres valeurs, pour une durée d, on obtient v + d en ajoutant d à toutes les valeurs d horloges. Vue géométrique avec deux horloges x et y y [ 0 0 ] [ ] x 14/44

43 Sémantique d un automate temporisé (1) Opérations sur les valuations X ensemble d horloges. Pour une valuation v : pour un sous-ensemble r de X, on obtient v[r 0] en remettant à 0 les horloges de r et en conservant les autres valeurs, pour une durée d, on obtient v + d en ajoutant d à toutes les valeurs d horloges. Vue géométrique avec deux horloges x et y y [ 0 0 ] [ ] [ x:= ] x 14/44

44 Sémantique d un automate temporisé (1) Opérations sur les valuations X ensemble d horloges. Pour une valuation v : pour un sous-ensemble r de X, on obtient v[r 0] en remettant à 0 les horloges de r et en conservant les autres valeurs, pour une durée d, on obtient v + d en ajoutant d à toutes les valeurs d horloges. Vue géométrique avec deux horloges x et y y [ 0 0 ] [ ] [ x:= ] 2 [ ] x 14/44

45 Sémantique d un automate temporisé (1) Opérations sur les valuations X ensemble d horloges. Pour une valuation v : pour un sous-ensemble r de X, on obtient v[r 0] en remettant à 0 les horloges de r et en conservant les autres valeurs, pour une durée d, on obtient v + d en ajoutant d à toutes les valeurs d horloges. Vue géométrique avec deux horloges x et y y [ 0 0 ] [ ] [ x:= ] 2 [ ] y:=0 [ 2 0 ] x 14/44

46 Sémantique d un automate temporisé (2) Définition Pour un automate temporisé A = (Q, q 0, l, Inv, ), le système de transitions est T = (S, s 0, L, E) avec : ensemble de configurations S = {(q, v) Q R 0 v = Inv(q)}, configuration initiale s0 = (q 0,0), étiquetage L(q, v) = l(q) transitions d action (q, v) a (q, v ), s il existe une transition q g,a,r q de l automate telle que v = g et v = Inv(q ), avec v = v[r 0], de durée (q, v) d (q, v + d) si v + d = Inv(q). 15/44

47 Sémantique d un automate temporisé (2) Définition Pour un automate temporisé A = (Q, q 0, l, Inv, ), le système de transitions est T = (S, s 0, L, E) avec : ensemble de configurations S = {(q, v) Q R 0 v = Inv(q)}, configuration initiale s0 = (q 0,0), étiquetage L(q, v) = l(q) transitions d action (q, v) a (q, v ), s il existe une transition q g,a,r q de l automate telle que v = g et v = Inv(q ), avec v = v[r 0], de durée (q, v) d (q, v + d) si v + d = Inv(q). 15/44

48 Sémantique d un automate temporisé (2) Définition Pour un automate temporisé A = (Q, q 0, l, Inv, ), le système de transitions est T = (S, s 0, L, E) avec : ensemble de configurations S = {(q, v) Q R 0 v = Inv(q)}, configuration initiale s0 = (q 0,0), étiquetage L(q, v) = l(q) transitions d action (q, v) a (q, v ), s il existe une transition q g,a,r q de l automate telle que v = g et v = Inv(q ), avec v = v[r 0], de durée (q, v) d (q, v + d) si v + d = Inv(q). 15/44

49 Plan Modèles temporisés Logiques temporisées Model-checking Conclusion 16/44

50 Exemple : temps de réponse Logiques temporelles Tout signal est suivi d une réponse en CTL : AG(signal AF reponse) en LTL : G(signal F reponse) CTL et LTL, deux sous-classes incomparables de CTL* Logiques temporisées Tout signal est suivi d une réponse en moins de 5 unités de temps Comment étendre les modalités des logiques temporelles avec un temps explicite? 17/44

51 Exemple : temps de réponse Logiques temporelles Tout signal est suivi d une réponse en CTL : AG(signal AF reponse) en LTL : G(signal F reponse) CTL et LTL, deux sous-classes incomparables de CTL* Logiques temporisées Tout signal est suivi d une réponse en moins de 5 unités de temps Comment étendre les modalités des logiques temporelles avec un temps explicite? 17/44

52 Exemple : temps de réponse Logiques temporelles Tout signal est suivi d une réponse en CTL : AG(signal AF reponse) en LTL : G(signal F reponse) CTL et LTL, deux sous-classes incomparables de CTL* Logiques temporisées Tout signal est suivi d une réponse en moins de 5 unités de temps Comment étendre les modalités des logiques temporelles avec un temps explicite? 17/44

53 Exemple : temps de réponse Logiques temporelles Tout signal est suivi d une réponse en CTL : AG(signal AF reponse) en LTL : G(signal F reponse) CTL et LTL, deux sous-classes incomparables de CTL* Logiques temporisées Tout signal est suivi d une réponse en moins de 5 unités de temps Comment étendre les modalités des logiques temporelles avec un temps explicite? 17/44

54 Exemple : temps de réponse Logiques temporelles Tout signal est suivi d une réponse en CTL : AG(signal AF reponse) en LTL : G(signal F reponse) CTL et LTL, deux sous-classes incomparables de CTL* Logiques temporisées Tout signal est suivi d une réponse en moins de 5 unités de temps Comment étendre les modalités des logiques temporelles avec un temps explicite? 17/44

55 Exemple : temps de réponse Logiques temporelles Tout signal est suivi d une réponse en CTL : AG(signal AF reponse) en LTL : G(signal F reponse) CTL et LTL, deux sous-classes incomparables de CTL* Logiques temporisées Tout signal est suivi d une réponse en moins de 5 unités de temps Comment étendre les modalités des logiques temporelles avec un temps explicite? 17/44

56 Syntaxe de CTL CTL ϕ, ψ ::= P ϕ EXϕ AXϕ ϕ ψ EϕUψ AϕUψ où P est une proposition atomique dans Prop. Interprétation : sur les états d une structure de Kripke 18/44

57 Syntaxe de CTL CTL ϕ, ψ ::= P ϕ EXϕ AXϕ ϕ ψ EϕUψ AϕUψ où P est une proposition atomique dans Prop. Interprétation : sur les états d une structure de Kripke q 0, ok q 1, fault q 2, alarm 18/44

58 Syntaxe de CTL CTL ϕ, ψ ::= P ϕ EXϕ AXϕ ϕ ψ EϕUψ AϕUψ où P est une proposition atomique dans Prop. Interprétation : sur les états d une structure de Kripke q 0, ok q 1, fault avec un arbre d exécution fault ok alarm q 2, alarm ok fault ok. ok alarm fault ok /44

59 Syntaxe de CTL CTL ϕ, ψ ::= P ϕ EXϕ AXϕ ϕ ψ EϕUψ AϕUψ où P est une proposition atomique dans Prop. Interprétation : sur les états d une structure de Kripke q 0, ok q 1, fault avec un arbre d exécution fault ok alarm q 2, alarm E : il existe un chemin X : position suivante (next) q 1 = EXok ok fault ok. ok alarm fault ok /44

60 Syntaxe de CTL CTL ϕ, ψ ::= P ϕ EXϕ AXϕ ϕ ψ EϕUψ AϕUψ où P est une proposition atomique dans Prop. Interprétation : sur les états d une structure de Kripke q 0, ok q 1, fault avec un arbre d exécution fault ok alarm q 2, alarm A : pour tout chemin ϕuψ : until ok fault ok. ok alarm fault ok /44

61 Syntaxe de CTL CTL ϕ, ψ ::= P ϕ EXϕ AXϕ ϕ ψ EϕUψ AϕUψ où P est une proposition atomique dans Prop. Interprétation : sur les états d une structure de Kripke q 0, ok q 1, fault avec un arbre d exécution fault ok alarm q 2, alarm Abréviations : AFψ pour A true Uψ q 1 = AFok ok fault ok. ok alarm fault ok /44

62 Syntaxe de CTL CTL ϕ, ψ ::= P ϕ EXϕ AXϕ ϕ ψ EϕUψ AϕUψ où P est une proposition atomique dans Prop. Interprétation : sur les états d une structure de Kripke q 0, ok q 1, fault avec un arbre d exécution fault ok alarm q 2, alarm Abréviations : EFψ pour E true Uψ AGψ pour EF( ϕ) ok fault ok. ok alarm fault ok /44

63 Syntaxe de CTL CTL ϕ, ψ ::= P ϕ EXϕ AXϕ ϕ ψ EϕUψ AϕUψ où P est une proposition atomique dans Prop. Interprétation : sur les états d une structure de Kripke q 0, ok q 1, fault avec un arbre d exécution fault ok alarm q 2, alarm ok fault ok q. 0 = AG(AFok) ok alarm fault ok de tout état, sur tout chemin partant de cet état, il est possible d atteindre ok 18/44

64 Syntaxe de CTL CTL ϕ, ψ ::= P ϕ EXϕ AXϕ ϕ ψ EϕUψ AϕUψ où P est une proposition atomique dans Prop. Interprétation : sur les états d une structure de Kripke q 0, ok q 1, fault avec un arbre d exécution fault ok alarm q 2, alarm K = AG(AFok) ok fault ok. ok alarm fault ok /44

65 CTL+temps : TCTL Syntaxe de TCTL [Alur - Henzinger 1991] ϕ, ψ ::= P ϕ ϕ ψ EϕU c ψ AϕU c ψ où P est une proposition atomique dans Prop, c est une constante dans N et l opérateur est dans {<, >,,, =}. Interprétation : sur des configurations d un STT 19/44

66 CTL+temps : TCTL Syntaxe de TCTL [Alur - Henzinger 1991] ϕ, ψ ::= P ϕ ϕ ψ EϕU c ψ AϕU c ψ où P est une proposition atomique dans Prop, c est une constante dans N et l opérateur est dans {<, >,,, =}. Interprétation : sur des configurations d un STT 19/44

67 CTL+temps : TCTL Syntaxe de TCTL [Alur - Henzinger 1991] ϕ, ψ ::= P ϕ ϕ ψ EϕU c ψ AϕU c ψ où P est une proposition atomique dans Prop, c est une constante dans N et l opérateur est dans {<, >,,, =}. Interprétation : sur des configurations d un STT s. Durée= 2 19/44

68 CTL+temps : TCTL Syntaxe de TCTL [Alur - Henzinger 1991] ϕ, ψ ::= P ϕ ϕ ψ EϕU c ψ AϕU c ψ où P est une proposition atomique dans Prop, c est une constante dans N et l opérateur est dans {<, >,,, =}. Interprétation : sur des configurations d un STT s s = EϕU 2 ψ ϕ ψ. Durée= 2 19/44

69 CTL+temps : TCTL Syntaxe de TCTL [Alur - Henzinger 1991] ϕ, ψ ::= P ϕ ϕ ψ EϕU c ψ AϕU c ψ où P est une proposition atomique dans Prop, c est une constante dans N et l opérateur est dans {<, >,,, =}. Interprétation : sur des configurations d un STT s s = AϕU 2 ψ ϕ ψ. Durée= 2 19/44

70 CTL+temps : TCTL Syntaxe de TCTL [Alur - Henzinger 1991] ϕ, ψ ::= P ϕ ϕ ψ EϕU c ψ AϕU c ψ où P est une proposition atomique dans Prop, c est une constante dans N et l opérateur est dans {<, >,,, =}. Interprétation : sur des configurations de T = (S,s 0,L,E) s = EϕU c ψ s = AϕU c ψ s il existe une exécution ρ partant de s telle que ρ = ϕu c ψ si, pour toute exécution ρ partant de s, ρ = ϕu c ψ avec ρ = ϕu c ψ s il existe une position p de ρ telle que Dur(ρ p ) c, s p = ψ et pour toute position p < ρ p, s p = ϕ 20/44

71 TCTL et temps de réponse Tout signal est suivi d une réponse en moins de 5 unités de temps : AG(signal AF 5 reponse) et automates temporisés A = (Q, q 0, l, Inv, ) un automate temporisé, T = (S, s 0, L, E) le système de transitions associé avec : la configuration initiale s0 = (q 0, v 0 ) où v 0 = 0, des exécutions de la forme (q 0, v 0 ) d 1 (q 0, v 0 + d 1 ) a 1 (q 1, v 1 ) d 2 (q 1, v 1 + d 2 ) a 2 (q 2, v 2 ) Pour une formule ϕ de TCTL, A = ϕ si s 0 = ϕ. 21/44

72 TCTL et temps de réponse Tout signal est suivi d une réponse en moins de 5 unités de temps : AG(signal AF 5 reponse) et automates temporisés A = (Q, q 0, l, Inv, ) un automate temporisé, T = (S, s 0, L, E) le système de transitions associé avec : la configuration initiale s0 = (q 0, v 0 ) où v 0 = 0, des exécutions de la forme (q 0, v 0 ) d 1 (q 0, v 0 + d 1 ) a 1 (q 1, v 1 ) d 2 (q 1, v 1 + d 2 ) a 2 (q 2, v 2 ) Pour une formule ϕ de TCTL, A = ϕ si s 0 = ϕ. 21/44

73 TCTL et temps de réponse Tout signal est suivi d une réponse en moins de 5 unités de temps : AG(signal AF 5 reponse) et automates temporisés A = (Q, q 0, l, Inv, ) un automate temporisé, T = (S, s 0, L, E) le système de transitions associé avec : la configuration initiale s0 = (q 0, v 0 ) où v 0 = 0, des exécutions de la forme (q 0, v 0 ) d 1 (q 0, v 0 + d 1 ) a 1 (q 1, v 1 ) d 2 (q 1, v 1 + d 2 ) a 2 (q 2, v 2 ) Pour une formule ϕ de TCTL, A = ϕ si s 0 = ϕ. 21/44

74 Exemple m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e satisfait AG(fault AF 8 ok) 22/44

75 Exemple m q 0, ok x 8, r, {x} x 4, p, {x} x < 3, r, {x} q 2, alarm q 1, fault x 3 x = 3, e satisfait AG(fault AF 8 ok) 22/44

76 D autres logiques du temps arborescent Extension de TCTL avec horloges AG(signal z AF(z 5 reponse)) z horloge de formule remise à zéro par z Logique Tµ, avec par exemple l opérateur, until en un pas z (true (P z 5)) P deviendra vraie en une seule transition, exécutée avant 5 unités de temps. etc. 23/44

77 D autres logiques du temps arborescent Extension de TCTL avec horloges AG(signal z AF(z 5 reponse)) z horloge de formule remise à zéro par z Logique Tµ, avec par exemple l opérateur, until en un pas z (true (P z 5)) P deviendra vraie en une seule transition, exécutée avant 5 unités de temps. etc. 23/44

78 D autres logiques du temps arborescent Extension de TCTL avec horloges AG(signal z AF(z 5 reponse)) z horloge de formule remise à zéro par z Logique Tµ, avec par exemple l opérateur, until en un pas z (true (P z 5)) P deviendra vraie en une seule transition, exécutée avant 5 unités de temps. etc. 23/44

79 Syntaxe de LTL LTL ϕ, ψ ::= P ϕ ϕ ψ Xϕ ϕuψ où P est une proposition atomique dans Prop. Interprétation : pour une structure de Kripke sur une position le long d une exécution 24/44

80 Syntaxe de LTL LTL ϕ, ψ ::= P ϕ ϕ ψ Xϕ ϕuψ où P est une proposition atomique dans Prop. Interprétation : pour une structure de Kripke sur une position le long d une exécution q 0, ok q 1, fault q 2, alarm 24/44

81 Syntaxe de LTL LTL ϕ, ψ ::= P ϕ ϕ ψ Xϕ ϕuψ où P est une proposition atomique dans Prop. Interprétation : pour une structure de Kripke sur une position le long d une exécution q 0, ok q 1, fault σ : q 0, q 0, q 1, q 0, q 1, q 2, q 0,... q 2, alarm σ, 2 = fault X ok σ, 4 = F ok 24/44

82 Syntaxe de LTL LTL ϕ, ψ ::= P ϕ ϕ ψ Xϕ ϕuψ où P est une proposition atomique dans Prop. Interprétation : pour une structure de Kripke sur une position le long d une exécution q 0, ok q 1, fault σ : q 0, q 0, q 1, q 0, q 1, q 2, q 0,... q 2, alarm σ, 2 = fault X ok σ, 4 = F ok σ, 0 = GF ok K = GF ok pour toute exécution σ de K, σ, 0 = GF ok 24/44

83 Syntaxe de MTL [Koymans 1990] LTL+temps : MTL ϕ, ψ ::= P ϕ ϕ ψ ϕu I ψ où P est une proposition atomique et I un intervalle. MITL : restriction à des intervalles non réduits à un point Sémantique Une formule s interprète sur une exécution s d 1 s d 1 2 s2 s a 2 2 s3 partant d une configuration quelconque s d un système de transition temporisé. Pour une formule ϕ de TCTL, et pour un automate temporisé A = (Q, q 0, l, Inv, ), avec le système de transitions temporisé associé T = (S, s 0, L, E) : a 1 A = ϕ si toute exécution partant de la configuration initiale s 0 = (q 0, v 0 ) avec v 0 = 0 satisfait ϕ. Temps de réponse G(signal F [0,5] reponse) 25/44

84 Syntaxe de MTL [Koymans 1990] LTL+temps : MTL ϕ, ψ ::= P ϕ ϕ ψ ϕu I ψ où P est une proposition atomique et I un intervalle. MITL : restriction à des intervalles non réduits à un point Sémantique Une formule s interprète sur une exécution s d 1 s d 1 2 s2 s a 2 2 s3 partant d une configuration quelconque s d un système de transition temporisé. Pour une formule ϕ de TCTL, et pour un automate temporisé A = (Q, q 0, l, Inv, ), avec le système de transitions temporisé associé T = (S, s 0, L, E) : a 1 A = ϕ si toute exécution partant de la configuration initiale s 0 = (q 0, v 0 ) avec v 0 = 0 satisfait ϕ. Temps de réponse G(signal F [0,5] reponse) 25/44

85 Syntaxe de MTL [Koymans 1990] LTL+temps : MTL ϕ, ψ ::= P ϕ ϕ ψ ϕu I ψ où P est une proposition atomique et I un intervalle. MITL : restriction à des intervalles non réduits à un point Sémantique Une formule s interprète sur une exécution s d 1 s d 1 2 s2 s a 2 2 s3 partant d une configuration quelconque s d un système de transition temporisé. Pour une formule ϕ de TCTL, et pour un automate temporisé A = (Q, q 0, l, Inv, ), avec le système de transitions temporisé associé T = (S, s 0, L, E) : a 1 A = ϕ si toute exécution partant de la configuration initiale s 0 = (q 0, v 0 ) avec v 0 = 0 satisfait ϕ. Temps de réponse G(signal F [0,5] reponse) 25/44

86 Syntaxe de MTL [Koymans 1990] LTL+temps : MTL ϕ, ψ ::= P ϕ ϕ ψ ϕu I ψ où P est une proposition atomique et I un intervalle. MITL : restriction à des intervalles non réduits à un point Sémantique Une formule s interprète sur une exécution s d 1 s d 1 2 s2 s a 2 2 s3 partant d une configuration quelconque s d un système de transition temporisé. Pour une formule ϕ de TCTL, et pour un automate temporisé A = (Q, q 0, l, Inv, ), avec le système de transitions temporisé associé T = (S, s 0, L, E) : a 1 A = ϕ si toute exécution partant de la configuration initiale s 0 = (q 0, v 0 ) avec v 0 = 0 satisfait ϕ. Temps de réponse G(signal F [0,5] reponse) 25/44

87 Syntaxe de MTL [Koymans 1990] LTL+temps : MTL ϕ, ψ ::= P ϕ ϕ ψ ϕu I ψ où P est une proposition atomique et I un intervalle. MITL : restriction à des intervalles non réduits à un point Sémantique Une formule s interprète sur une exécution s d 1 s d 1 2 s2 s a 2 2 s3 partant d une configuration quelconque s d un système de transition temporisé. Pour une formule ϕ de TCTL, et pour un automate temporisé A = (Q, q 0, l, Inv, ), avec le système de transitions temporisé associé T = (S, s 0, L, E) : a 1 A = ϕ si toute exécution partant de la configuration initiale s 0 = (q 0, v 0 ) avec v 0 = 0 satisfait ϕ. Temps de réponse G(signal F [0,5] reponse) 25/44

88 D autres logiques du temps linéaire TPTL, extension de LTL avec horloges Gx (signal Fy (reponse y x + 5)) x et y horloges de formule, gelées par x et y Variantes avec temps discret ou interprétation sur des séquences discrètes etc. 26/44

89 D autres logiques du temps linéaire TPTL, extension de LTL avec horloges Gx (signal Fy (reponse y x + 5)) x et y horloges de formule, gelées par x et y Variantes avec temps discret ou interprétation sur des séquences discrètes etc. 26/44

90 D autres logiques du temps linéaire TPTL, extension de LTL avec horloges Gx (signal Fy (reponse y x + 5)) x et y horloges de formule, gelées par x et y Variantes avec temps discret ou interprétation sur des séquences discrètes etc. 26/44

91 Plan Modèles temporisés Logiques temporisées Model-checking Conclusion 27/44

92 Model-checking de LTL Theorème [Sistla et Clarke 1985, Lichtenstein et al. 1985] Le problème du model-checking pour LTL sur des structures de Kripke est PSPACEcomplet. Procédure de décision Données : une formule ϕ de LTL et une structure de Kripke K 1. Construction d un automate (de Büchi) A ϕ dont les exécutions sont exactement les séquences d étiquettes satisfaisant la formule ϕ. 2. Construction de l automate H = K A ϕ acceptant exactement les exécutions communes à K et A ϕ (intersection). 3. Test du vide pour H. Difficulté : construire l automate A ϕ caractérisant ϕ 28/44

93 Model-checking de LTL Theorème [Sistla et Clarke 1985, Lichtenstein et al. 1985] Le problème du model-checking pour LTL sur des structures de Kripke est PSPACEcomplet. Procédure de décision Données : une formule ϕ de LTL et une structure de Kripke K 1. Construction d un automate (de Büchi) A ϕ dont les exécutions sont exactement les séquences d étiquettes satisfaisant la formule ϕ. 2. Construction de l automate H = K A ϕ acceptant exactement les exécutions communes à K et A ϕ (intersection). 3. Test du vide pour H. Difficulté : construire l automate A ϕ caractérisant ϕ 28/44

94 Model-checking de LTL Theorème [Sistla et Clarke 1985, Lichtenstein et al. 1985] Le problème du model-checking pour LTL sur des structures de Kripke est PSPACEcomplet. Procédure de décision Données : une formule ϕ de LTL et une structure de Kripke K 1. Construction d un automate (de Büchi) A ϕ dont les exécutions sont exactement les séquences d étiquettes satisfaisant la formule ϕ. 2. Construction de l automate H = K A ϕ acceptant exactement les exécutions communes à K et A ϕ (intersection). 3. Test du vide pour H. Difficulté : construire l automate A ϕ caractérisant ϕ Σ s r Σ r Σ = 2 Prop Σ s r 0 1 Σ r Σ r = {α Σ r α} Σ r = Σ \ Σ r, etc. 28/44

95 Model-checking de LTL Theorème [Sistla et Clarke 1985, Lichtenstein et al. 1985] Le problème du model-checking pour LTL sur des structures de Kripke est PSPACEcomplet. Procédure de décision Données : une formule ϕ de LTL et une structure de Kripke K 1. Construction d un automate (de Büchi) A ϕ dont les exécutions sont exactement les séquences d étiquettes satisfaisant la formule ϕ. 2. Construction de l automate H = K A ϕ acceptant exactement les exécutions communes à K et A ϕ (intersection). 3. Test du vide pour H. Difficulté : construire l automate A ϕ caractérisant ϕ Σ s r Σ r Σ s r pour la formule du temps de réponse : 0 1 G(s F r) Σ r 28/44

96 Model-checking de LTL Theorème [Sistla et Clarke 1985, Lichtenstein et al. 1985] Le problème du model-checking pour LTL sur des structures de Kripke est PSPACEcomplet. Procédure de décision Données : une formule ϕ de LTL et une structure de Kripke K 1. Construction d un automate (de Büchi) A ϕ dont les exécutions sont exactement les séquences d étiquettes satisfaisant la formule ϕ. 2. Construction de l automate H = K A ϕ acceptant exactement les exécutions communes à K et A ϕ (intersection). 3. Test du vide pour H. Difficulté : construire l automate A ϕ caractérisant ϕ Pire cas : O(2 ϕ ) 28/44

97 Model-checking de MTL et MITL Theorèmes Le problème du model-checking pour MTL sur des automates temporisés est indécidable [Henzinger 1991]. Le problème du model-checking pour MITL sur des automates temporisés est EXPSPACE-complet [Alur et al. 1996]. Procédure de décision pour MITL Données : une formule ϕ de MITL et un automate temporisé A 1. Construction d un automate temporisé A ϕ dont les exécutions sont exactement celles qui satisfont la formule ϕ. 2. Construction de l automate temporisé B = A A ϕ acceptant les exécutions communes à A et A ϕ. 3. Test du vide pour B. Remarque Les points 1 et 3 sont plus difficiles pour des automates temporisés. 29/44

98 Model-checking de MTL et MITL Theorèmes Le problème du model-checking pour MTL sur des automates temporisés est indécidable [Henzinger 1991]. Le problème du model-checking pour MITL sur des automates temporisés est EXPSPACE-complet [Alur et al. 1996]. Procédure de décision pour MITL Données : une formule ϕ de MITL et un automate temporisé A 1. Construction d un automate temporisé A ϕ dont les exécutions sont exactement celles qui satisfont la formule ϕ. 2. Construction de l automate temporisé B = A A ϕ acceptant les exécutions communes à A et A ϕ. 3. Test du vide pour B. Remarque Les points 1 et 3 sont plus difficiles pour des automates temporisés. 29/44

99 Model-checking de MTL et MITL Theorèmes Le problème du model-checking pour MTL sur des automates temporisés est indécidable [Henzinger 1991]. Le problème du model-checking pour MITL sur des automates temporisés est EXPSPACE-complet [Alur et al. 1996]. Procédure de décision pour MITL Données : une formule ϕ de MITL et un automate temporisé A 1. Construction d un automate temporisé A ϕ dont les exécutions sont exactement celles qui satisfont la formule ϕ. 2. Construction de l automate temporisé B = A A ϕ acceptant les exécutions communes à A et A ϕ. 3. Test du vide pour B. Remarque Les points 1 et 3 sont plus difficiles pour des automates temporisés. 29/44

100 Model-checking de MTL et MITL Theorèmes Le problème du model-checking pour MTL sur des automates temporisés est indécidable [Henzinger 1991]. Le problème du model-checking pour MITL sur des automates temporisés est EXPSPACE-complet [Alur et al. 1996]. Procédure de décision pour MITL Données : une formule ϕ de MITL et un automate temporisé A 1. Construction d un automate temporisé A ϕ dont les exécutions sont exactement celles qui satisfont la formule ϕ. 2. Construction de l automate temporisé B = A A ϕ acceptant les exécutions communes à A et A ϕ. 3. Test du vide pour B. Remarque Les points 1 et 3 sont plus difficiles pour des automates temporisés. 29/44

101 Exemple de construction de A ϕ pour ϕ : G ]0,1] (s F [1,2] r) On suppose que s et r sont vraies seulement sur des intervalles réduits à un point, avec au moins une configuration vérifiant r dans ]1, 2[ et dans ]2, 3[, et que r est fausse au temps 2. x := 0 z = 0 z < 1 y := 0 s z < 1 x, y := 0 z < 1 y := 0 z < 2 x := 0 r 1 < z < 2 x = 1 r z < 3 r 2 < z < 3 y = 2 Rq : impossible pour G ]0,1[ (s F [1,1] r) 30/44

102 Exemple de construction de A ϕ pour ϕ : G ]0,1] (s F [1,2] r) On suppose que s et r sont vraies seulement sur des intervalles réduits à un point, avec au moins une configuration vérifiant r dans ]1, 2[ et dans ]2, 3[, et que r est fausse au temps 2. x := 0 z = 0 z < 1 y := 0 s z < 1 x, y := 0 z < 1 y := 0 z < 2 x := 0 r 1 < z < 2 x = 1 r z < 3 r 2 < z < 3 y = 2 Rq : impossible pour G ]0,1[ (s F [1,1] r) 30/44

103 Theorème [Alur et Dill 1990] Test du vide Le test du vide pour les automates temporisés est PSPACE-complet. Procédure de décision Donnée : un automate temporisé A = (Q, q 0, l, Inv, ) sur un ensemble d horloges X, avec domaine de temps R 0 Construction d un automate (de Büchi) non temporisé H, tel que : A n a aucune exécution H n a aucune exécution. Test du vide pour H. 31/44

104 Theorème [Alur et Dill 1990] Test du vide Le test du vide pour les automates temporisés est PSPACE-complet. Procédure de décision Donnée : un automate temporisé A = (Q, q 0, l, Inv, ) sur un ensemble d horloges X, avec domaine de temps R 0 Construction d un automate (de Büchi) non temporisé H, tel que : A n a aucune exécution H n a aucune exécution. Test du vide pour H. 31/44

105 Theorème [Alur et Dill 1990] Test du vide Le test du vide pour les automates temporisés est PSPACE-complet. Procédure de décision Donnée : un automate temporisé A = (Q, q 0, l, Inv, ) sur un ensemble d horloges X, avec domaine de temps R 0 Construction d un automate (de Büchi) non temporisé H, tel que : A n a aucune exécution H n a aucune exécution. Test du vide pour H. T = (S, s 0, L, E) système de transition associé à A états : (q, v) q Q, v R X 0 quotient H automate des régions de A états : (q, [v]) q Q, [v] classe d équivalence pour une relation sur R X 0 31/44

106 Construction d un quotient (1) avec les propriétés suivantes : Pour deux valuations équivalentes v v 1. si une transition d action q g,a,r q est possible depuis v, alors la même transition est possible depuis v et les valuations obtenues v[r 0] et v [r 0] sont équivalentes, 2. si une transition de délai d est possible depuis v, alors une transition de délai d est possible depuis v et les valuations obtenues v + d et v + d sont équivalentes. Remarques Cette relation est une bisimulation avec abstraction du temps entre les états de T : Q R X 0 et ceux de H : Q RX 0 /. Pour la première condition, il suffit de considérer les contraintes x k, pour les horloges de X et les constantes 0 k m, où m est la plus grande constante apparaissant dans les contraintes de A. 32/44

107 Construction d un quotient (1) avec les propriétés suivantes : Pour deux valuations équivalentes v v 1. si une transition d action q g,a,r q est possible depuis v, alors la même transition est possible depuis v et les valuations obtenues v[r 0] et v [r 0] sont équivalentes, 2. si une transition de délai d est possible depuis v, alors une transition de délai d est possible depuis v et les valuations obtenues v + d et v + d sont équivalentes. Remarques Cette relation est une bisimulation avec abstraction du temps entre les états de T : Q R X 0 et ceux de H : Q RX 0 /. Pour la première condition, il suffit de considérer les contraintes x k, pour les horloges de X et les constantes 0 k m, où m est la plus grande constante apparaissant dans les contraintes de A. 32/44

108 Construction d un quotient (1) avec les propriétés suivantes : Pour deux valuations équivalentes v v 1. si une transition d action q g,a,r q est possible depuis v, alors la même transition est possible depuis v et les valuations obtenues v[r 0] et v [r 0] sont équivalentes, 2. si une transition de délai d est possible depuis v, alors une transition de délai d est possible depuis v et les valuations obtenues v + d et v + d sont équivalentes. Remarques Cette relation est une bisimulation avec abstraction du temps entre les états de T : Q R X 0 et ceux de H : Q RX 0 /. Pour la première condition, il suffit de considérer les contraintes x k, pour les horloges de X et les constantes 0 k m, où m est la plus grande constante apparaissant dans les contraintes de A. 32/44

109 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y x 33/44

110 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y x Compatibilité de valuations équivalentes avec les contraintes x k 33/44

111 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y x Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

112 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y x Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

113 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y x Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

114 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y x Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

115 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y 2 région R définie par I x =]0; 1[, I y =]1; 2[ frac(x) > frac(y) x Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

116 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y 2 région R définie par I x =]0; 1[, I y =]1; 2[ frac(x) > frac(y) 1 R Successeur de R pour le temps I x = [1; 1], I y =]1; 2[ x Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

117 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y 2 région R définie par I x =]0; 1[, I y =]1; 2[ frac(x) > frac(y) 1 R Successeur de R pour le temps I x = [1; 1], I y =]1; 2[ x Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

118 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y 2 région R définie par I x =]0; 1[, I y =]1; 2[ frac(x) > frac(y) 1 R Successeur de R pour le temps I x = [1; 1], I y =]1; 2[ x Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

119 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y 2 région R définie par I x =]0; 1[, I y =]1; 2[ frac(x) > frac(y) 1 R Successeur de R pour le temps I x = [1; 1], I y =]1; 2[ x Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

120 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y 2 région R définie par I x =]0; 1[, I y =]1; 2[ frac(x) > frac(y) 1 R Successeur de R pour le temps I x = [1; 1], I y =]1; 2[ x Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

121 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y 2 région R définie par I x =]0; 1[, I y =]1; 2[ frac(x) > frac(y) 1 R Successeur de R pour le temps I x = [1; 1], I y =]1; 2[ x Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

122 Construction d un quotient (2) Vue géométrique avec deux horloges x et y, pour m = 2 y 2 région R définie par I x =]0; 1[, I y =]1; 2[ frac(x) > frac(y) 1 R Successeur de R pour le temps I x = [1; 1], I y =]1; 2[ x Successeur de R pour une action avec y := 0 I x =]0; 1[, I y = [0; 0] Compatibilité de valuations équivalentes avec les contraintes x k Compatibilité de valuations équivalentes avec l écoulement du temps 33/44

123 Construction d un quotient (3) Automate des régions H A pour l automate temporisé A = (Q, q 0, l, Inv, ), avec ensemble d horloges X et constante maximale m, quotient R X 0 / noté R X,m. états Q RX,M transitions de délai (abstraites) : (q, R) (q, succ(r)) transitions d action : (q, R) a (q, R ) s il existe une transition q g,a,r q de A avec R = g et R = R[r 0] Nombre d états La taille de R X,m est en O( X! m X ), à multiplier par Q. 34/44

124 Construction d un quotient (3) Automate des régions H A pour l automate temporisé A = (Q, q 0, l, Inv, ), avec ensemble d horloges X et constante maximale m, quotient R X 0 / noté R X,m. états Q RX,M transitions de délai (abstraites) : (q, R) (q, succ(r)) transitions d action : (q, R) a (q, R ) s il existe une transition q g,a,r q de A avec R = g et R = R[r 0] Nombre d états La taille de R X,m est en O( X! m X ), à multiplier par Q. 34/44

125 Exemple [Alur et Dill, 1990] y x 35/44

Vérification des propriétés temporisées des automates programmables industriels

Vérification des propriétés temporisées des automates programmables industriels Vérification des propriétés temporisées des automates programmables industriels Houda Bel Mokadem To cite this version: Houda Bel Mokadem. Vérification des propriétés temporisées des automates programmables

Plus en détail

Model checking temporisé Algorithmes efficaces et complexité

Model checking temporisé Algorithmes efficaces et complexité Model checking temporisé Algorithmes efficaces et complexité (Mémoire d habilitation à diriger des recherches) François Laroussinie Laboratoire Spécification et Vérification ENS de Cachan & CNRS UMR 8643

Plus en détail

Résolution générique à la volée de systèmes d équations booléennes et applications

Résolution générique à la volée de systèmes d équations booléennes et applications Résolution générique à la volée de systèmes d équations booléennes et applications Radu Mateescu INRIA Rhône-Alpes / VASY Plan Introduction Systèmes d équations booléennes d alternance 1 Algorithmes de

Plus en détail

Vérification avec TINA

Vérification avec TINA Vérification avec TINA B. Berthomieu, F. Vernadat LAAS-CNRS Journée AFSEC Outils - Juin 2007 Insa Lyon 22 Juin 2007 Le contexte Vérification de Systèmes Réactifs, Protocoles, Logiciels Temps Réel Points

Plus en détail

Les limites théoriques de l informatique Les problèmes indécidables

Les limites théoriques de l informatique Les problèmes indécidables Les limites théoriques de l informatique Les problèmes indécidables Samuel Fiorini - Gilles Geeraerts - Jean-François Raskin Université Libre de Bruxelles Académie Royale des Sciences Bruxelles 3/3/2010

Plus en détail

Fondements de l informatique: Examen Durée: 3h

Fondements de l informatique: Examen Durée: 3h École polytechnique X2013 INF412 Fondements de l informatique Fondements de l informatique: Examen Durée: 3h Sujet proposé par Olivier Bournez Version 3 (corrigé) L énoncé comporte 4 parties (sections),

Plus en détail

et Automates de Büchi

et Automates de Büchi Cours 9: Propriétes ω-régulières et Automates de Büchi Francesco Belardinelli Laboratoire IBISC Remerciements à Alessio Lomuscio et Joost-Pieter Katoen 26 mars 2015 Cours 9 - Vue d Ensemble Motivation

Plus en détail

VÉRIFICATION DES SYSTÈMES À PILE AU MOYEN DES ALGÈBRES DE KLEENE

VÉRIFICATION DES SYSTÈMES À PILE AU MOYEN DES ALGÈBRES DE KLEENE VINCENT MATHIEU VÉRIFICATION DES SYSTÈMES À PILE AU MOYEN DES ALGÈBRES DE KLEENE Mémoire présenté à la Faculté des études supérieures de l Université Laval dans le cadre du programme de maîtrise en informatique

Plus en détail

Automatisation de la certification formelle de systèmes critiques par instrumentation d interpréteurs abstraits

Automatisation de la certification formelle de systèmes critiques par instrumentation d interpréteurs abstraits 1 d Automatisation de la certification formelle de systèmes critiques par instrumentation d sous la direction de Michaël Périn Soutenance de Thèse de Doctorat Université de Grenoble - Laboratoire Verimag

Plus en détail

Automates temporisés Partie 1: Définitions

Automates temporisés Partie 1: Définitions p.1 Automates temporisés Partie 1: Définitions p.2 Motivation Les automates temporisés constituent un des modèle de systèmes réactifs à temps continu proposé par Alur et Dill en 1991. Temps continu vs

Plus en détail

Introduction au model-checking et application à la vérification des protocoles cryptographiques

Introduction au model-checking et application à la vérification des protocoles cryptographiques Introduction au model-checking et application à la vérification des protocoles cryptographiques Prof. John MULLINS École Polytechnique de Montréal Prof. John MULLINS (École Polytechnique) Introduction

Plus en détail

DIC9305 Logique, informatique et sciences cognitives

DIC9305 Logique, informatique et sciences cognitives DIC9305 Logique, informatique et sciences cognitives Logique modale II Roger Villemaire Département d informatique UQAM le 6 mars 2014 Plan 1 Choix d une logique modale 2 Relations de Allen 3 Logiques

Plus en détail

UNIVERSITÉ DE MONTRÉAL VÉRIFICATION ET CONFIGURATION AUTOMATIQUES DE PARE-FEUX PAR MODEL CHECKING ET SYNTHÈSE DE CONTRÔLEUR

UNIVERSITÉ DE MONTRÉAL VÉRIFICATION ET CONFIGURATION AUTOMATIQUES DE PARE-FEUX PAR MODEL CHECKING ET SYNTHÈSE DE CONTRÔLEUR UNIVERSITÉ DE MONTRÉAL VÉRIFICATION ET CONFIGURATION AUTOMATIQUES DE PARE-FEUX PAR MODEL CHECKING ET SYNTHÈSE DE CONTRÔLEUR MAJDA MOUSSA DÉPARTEMENT DE GÉNIE INFORMATIQUE ET GÉNIE LOGICIEL ÉCOLE POLYTECHNIQUE

Plus en détail

Machines composées de (depuis 1940 env.) : http://cui.unige.ch/isi/cours/std/

Machines composées de (depuis 1940 env.) : http://cui.unige.ch/isi/cours/std/ données pr ogramme 11111101 11001101 01000101 b us disque ma gnétique processeur écran Structures de données et algorithmes Ordinateurs Gilles Falquet, printemps-été 2002 Machines composées de (depuis

Plus en détail

Génération aléatoire de structures ordonnées

Génération aléatoire de structures ordonnées Génération aléatoire de structures ordonnées Olivier Roussel Équipe APR Laboratoire d Informatique de Paris 6 Université Pierre et Marie Curie ALÉA 2011 7 mars 2011 Olivier Roussel (LIP6) Génération de

Plus en détail

Analyse statique de programmes et interprétation abstraite. Olivier Bouissou

Analyse statique de programmes et interprétation abstraite. Olivier Bouissou Analyse statique de programmes et interprétation abstraite Olivier Bouissou Organisation du cours. Intervenants : cours et TP assurés par Olivier Bouissou (olivier.bouissou@cea.fr) - CEA LIST. Déroulement

Plus en détail

Programmation linéaire

Programmation linéaire 1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit

Plus en détail

Vérification des systèmes modulaires

Vérification des systèmes modulaires Vérification des systèmes modulaires F. Ouazar Lounnaci M.Ioualalen M.C.Boukala MOVEP, USTHB, Algérie fouazar@gmail.com mioualalen@usthb.dz mboukala@usthb.dz Résumé La vérification des systèmes par model-checking

Plus en détail

Programmation logique par contraintes. Partie II

Programmation logique par contraintes. Partie II Programmation logique par contraintes Partie II Plan du cours Programmation logique et Prolog (PL) SWI-Prolog, Sicstus Programmation logique par contraintes (PLC) Sicstus Problèmes de satisfaction de contraintes

Plus en détail

Arbres. Alphabet Σ = Σ 0 Σ k. Exemples

Arbres. Alphabet Σ = Σ 0 Σ k. Exemples Arbres Alphabet Σ = Σ 0 Σ k Σ i : alphabet fini de symboles de rang i (Σ i Σ j possible). Un arbre t de rang k est défini par un ensemble (fini) dom(t) {1,..., k} clos par préfixe (domaine de t) : si v,

Plus en détail

Correction de programmes : Logique de Hoare

Correction de programmes : Logique de Hoare 16 juillet 2009 Logique et informatique Vis-à-vis de l informatique la logique a au moins 2 rôles : 1 Externe et théorique (fondements de l informatique - Électif en S4) : Logique comme méta-informatique

Plus en détail

INFO-F-302 Informatique Fondamentale Logique du premier ordre

INFO-F-302 Informatique Fondamentale Logique du premier ordre INFO-F-302 Informatique Fondamentale Logique du premier ordre Prof. Emmanuel Filiot Exercice 1 1. Soit un langage L = (p, q, r, s, t, f, g) où p, q sont des prédicats unaires, r, s, t sont des prédicats

Plus en détail

Analyse abstraite de missions sous PILOT

Analyse abstraite de missions sous PILOT Analyse abstraite de missions sous PILOT Damien Massé EA 3883, Université de Bretagne Occidentale, Brest damien.masse@univ-brest.fr Résumé Nous étudions la possibilité de réaliser un analyseur par interprétation

Plus en détail

Démonstrations. Chapitre 4. 4.1 Introduction

Démonstrations. Chapitre 4. 4.1 Introduction Chapitre 4 Démonstrations L objectif de ce chapitre est de commencer à aborder la question fondamentale suivante : qu est-ce qu une démonstration? Pour cela, plus précisément, on va se focaliser dans ce

Plus en détail

AVATAR. Un profil SysML temps réel outillé

AVATAR. Un profil SysML temps réel outillé AVATAR Un profil SysML temps réel outillé Ludovic Apvrille, Pierre de Saqui-Sannes ludovic.apvrille@telecom-paristech.fr pdss@isae.fr SysML France, 6 décembre 2010 Agenda De TURTLE à AVATAR Le langage

Plus en détail

Ordonnancement avec exclusion mutuelle par un graphe d intervalles ou d une classe apparentée : complexité et algorithmes ~ Frédéric Gardi

Ordonnancement avec exclusion mutuelle par un graphe d intervalles ou d une classe apparentée : complexité et algorithmes ~ Frédéric Gardi Ordonnancement avec exclusion mutuelle par un graphe d intervalles ou d une classe apparentée : complexité et algorithmes ~ Frédéric Gardi - 14 Juin 2005 - - Faculté des Sciences de Luminy - 1. Introduction

Plus en détail

Les automates. Fabrice EUDES, Pascal EVRARD, Philippe MARQUET, François RECHER & Yann SECQ

Les automates. Fabrice EUDES, Pascal EVRARD, Philippe MARQUET, François RECHER & Yann SECQ Les automates Fabrice EUDES, Pascal EVRARD, Philippe MARQUET, François RECHER & Yann SECQ Avril 2015 Retour sur l île et le barman Deux problèmes similaires: Des îles, des bateaux et un trésor à trouver

Plus en détail

Techniques et outils de test pour les logiciels réactifs synchrones

Techniques et outils de test pour les logiciels réactifs synchrones Journées Systèmes et Logiciels Critiques Institut IMAG ; 14-16 nombre 2000 Techniques et outils de test pour les logiciels réactifs synchrones Farid Ouabdesselam 1 Méthodes de test : classification générale

Plus en détail

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé Baccalauréat ES Pondichéry 7 avril 204 Corrigé EXERCICE 4 points Commun à tous les candidats. Proposition fausse. La tangente T, passant par les points A et B d abscisses distinctes, a pour coefficient

Plus en détail

Partie I : Automates et langages

Partie I : Automates et langages 2 Les calculatrices sont interdites. N.B. : Le candidat attachera la plus grande importance à la clarté, à la précision et à la concision de la rédaction. Si un candidat est amené à repérer ce qui peut

Plus en détail

CH.8 Décidabilité. Propriétés des langages récursifs : Fermés par complémentation, union et intersection. oui. non. oui M 1. non. oui M 2.

CH.8 Décidabilité. Propriétés des langages récursifs : Fermés par complémentation, union et intersection. oui. non. oui M 1. non. oui M 2. CH.8 Décidabilité 8.1 Les langages récursifs 8.2 La machine de Turing universelle 8.3 Des problèmes de langages indécidables 8.4 D'autres problèmes indécidables Automates ch8 1 8.1 Les langages récursifs

Plus en détail

Surveillance et maintenance prédictive : évaluation de la latence de fautes. Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG)

Surveillance et maintenance prédictive : évaluation de la latence de fautes. Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG) Surveillance et maintenance prédictive : évaluation de la latence de fautes Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG) SURVEILLANCE Analyser une situation et fournir des indicateurs! Détection de symptômes!

Plus en détail

Langages de spécification cours 3

Langages de spécification cours 3 Langages de spécification cours 3 Introduction en logique temporelle Catalin Dima Spécification des propriétés temporelles Les automates permettent de décrire des ensembles de comportements. Langage de

Plus en détail

Fonctions de plusieurs variables

Fonctions de plusieurs variables Module : Analyse 03 Chapitre 00 : Fonctions de plusieurs variables Généralités et Rappels des notions topologiques dans : Qu est- ce que?: Mathématiquement, n étant un entier non nul, on définit comme

Plus en détail

Un tout petit peu d homotopie

Un tout petit peu d homotopie Vincent Beck On note I = [ 0, 1 ]. Un tout petit peu d homotopie 0.1 Homotopie Définition 1 Applications homotopes. Soient X, Y deux espaces topologiques et f, g : X Y deux applications continues. On dit

Plus en détail

Quelques aspects des automates en informatique

Quelques aspects des automates en informatique Quelques aspects des automates en informatique Applications à la vérification & aspects théoriques Marc Zeitoun Conférence ENS Cachan, 2/9/2008 Plan A. Rappels et exemples. B. Quelques applications des

Plus en détail

Définitions. Numéro à préciser. (Durée : )

Définitions. Numéro à préciser. (Durée : ) Numéro à préciser (Durée : ) On étudie dans ce problème l ordre lexicographique pour les mots sur un alphabet fini et plusieurs constructions des cycles de De Bruijn. Les trois parties sont largement indépendantes.

Plus en détail

Les méthodes formelles dans le cycle de vie. Virginie Wiels ONERA/DTIM Virginie.Wiels@onera.fr

Les méthodes formelles dans le cycle de vie. Virginie Wiels ONERA/DTIM Virginie.Wiels@onera.fr Les méthodes formelles dans le cycle de vie Virginie Wiels ONERA/DTIM Virginie.Wiels@onera.fr Plan Introduction Différentes utilisations possibles Différentes techniques pour différentes propriétés à différents

Plus en détail

La chasse aux bugs : pourquoi? Les bugs en informatique. La chasse aux bugs : pourquoi? Des bugs logiciels aux conséquences désastreuses (1)

La chasse aux bugs : pourquoi? Les bugs en informatique. La chasse aux bugs : pourquoi? Des bugs logiciels aux conséquences désastreuses (1) La chasse aux bugs : pourquoi? Les bugs en informatique où pourquoi faire un peu de maths quand c est utile Les bugs sont partie intégrante de l informatique. Mais en fait... les bugs, est-ce si grave?

Plus en détail

Théorème du point fixe - Théorème de l inversion locale

Théorème du point fixe - Théorème de l inversion locale Chapitre 7 Théorème du point fixe - Théorème de l inversion locale Dans ce chapitre et le suivant, on montre deux applications importantes de la notion de différentiabilité : le théorème de l inversion

Plus en détail

Fabien BONNEFOI. Vérification Formelle des Spécifications de Systèmes Complexes Application aux Systèmes de Transport Intelligents 1/31

Fabien BONNEFOI. Vérification Formelle des Spécifications de Systèmes Complexes Application aux Systèmes de Transport Intelligents 1/31 Fabien BONNEFOI Vérification Formelle des Spécifications de Systèmes Complexes Application aux Systèmes de Transport Intelligents Soutenance de Thèse sous la direction de M. Fabrice KORDON Jury Mme. Béatrice

Plus en détail

NOTES DE COURS LA MÉTHODE DES ARBRES POUR LE CALCUL DES PROPOSITIONS

NOTES DE COURS LA MÉTHODE DES ARBRES POUR LE CALCUL DES PROPOSITIONS NOTES DE COURS L MÉTHODE DES RRES POUR LE CLCUL DES PROPOSITIONS JOSEPH VIDL-ROSSET TLE DES MTIÈRES 1. L essentiel sur la méthode des arbres 1 1.1. Méthode sémantique ou syntaxique? 1 1.2. Le comment et

Plus en détail

L enseignement de l algorithmique au Lycée

L enseignement de l algorithmique au Lycée L enseignement de l algorithmique au Lycée Sisteron 12 novembre 2009 Fernand Didier didier@irem.univ-mrs.fr Approche naïve C est une méthode, une façon systématique de procéder, pour faire quelque chose

Plus en détail

Un automate à états fini

Un automate à états fini Automates à états et langages Notion d automate Langage reconnu par un automate Automates non déterministes Expressions régulières et automates Limites des automates Notion d automate Objectif : définir

Plus en détail

Épreuve orale d Informatique Fondamentale

Épreuve orale d Informatique Fondamentale Épreuve orale d Informatique Fondamentale Patrick Baillot, Nicolas Ollinger, Alexis Saurin ULC MPI 2013 Résumé Ce document consiste en une sélection, à titre d exemples, de 3 sujets proposés à l épreuve

Plus en détail

Sortie : OUI si n est premier, NON sinon. On peut voir Premier aussi comme une fonction, en remplaçant OUI par 1 et NON par 0.

Sortie : OUI si n est premier, NON sinon. On peut voir Premier aussi comme une fonction, en remplaçant OUI par 1 et NON par 0. Université Bordeaux 1. Master Sciences & Technologies, Informatique. Examen UE IN7W11, Modèles de calcul. Responsable A. Muscholl Session 1, 2011 2012. 12 décembre 2011, 14h-17h. Documents autorisés :

Plus en détail

Université Paris Diderot Master 1 II. Théorie et pratique de la concurrence

Université Paris Diderot Master 1 II. Théorie et pratique de la concurrence Université Paris Diderot Master 1 II Théorie et pratique de la concurrence Partiel du 30 avril 2009 Durée : 1h30. Tous les documents sont autorisés. Le barème est indicatif. Question 1 : Soit le programme

Plus en détail

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3

I Arbres binaires. Lycée Faidherbe 2014-2015. 1 Rappels 2 1.1 Définition... 2 1.2 Dénombrements... 2 1.3 Parcours... 3 I Arbres binaires 2014-2015 Table des matières 1 Rappels 2 1.1 Définition................................................ 2 1.2 Dénombrements............................................ 2 1.3 Parcours.................................................

Plus en détail

Programmation Linéaire Cours 1 : programmes linéaires, modélisation et résolution graphique

Programmation Linéaire Cours 1 : programmes linéaires, modélisation et résolution graphique Programmation Linéaire Cours 1 : programmes linéaires, modélisation et résolution graphique F. Clautiaux francois.clautiaux@math.u-bordeaux1.fr Université Bordeaux 1 Bât A33 Motivation et objectif du cours

Plus en détail

Modules du Parcours : Informatique embarquée

Modules du Parcours : Informatique embarquée Modules du Parcours : Informatique embarquée Temps Réel (TREEL) Forme Cours 20 h TD/TP 10 h Travaux pratiques 70 h Enseignant: J.-P. Elloy Concevoir l ossature du logiciel de pilotage d un procédé industriel

Plus en détail

Vérification par model-checking, extension aux systèmes infinis

Vérification par model-checking, extension aux systèmes infinis Vérification par model-checking, extension aux systèmes infinis Sébastien Bardin LSV - CNRS & ENS de Cachan Des programmes fiables? L informatique se répand très vite dans tous les domaines : téléphones,

Plus en détail

B03. Ensembles, applications, relations, groupes

B03. Ensembles, applications, relations, groupes B03. Ensembles, applications, relations, groupes Bernard Le Stum Université de Rennes 1 Version du 6 janvier 2006 Table des matières 1 Calcul propositionnel 2 2 Ensembles 5 3 Relations 7 4 Fonctions, applications

Plus en détail

SPOT : une bibliothèque. de logique temporelle à temps linéaire

SPOT : une bibliothèque. de logique temporelle à temps linéaire SPOT : une bibliothèque de vérification de propriétés de logique temporelle à temps linéaire Mémoire de DEA Alexandre DURET-LUTZ aduret@src.lip6.fr DEA Systèmes Informatiques Répartis, LIP6, Paris. Rachid

Plus en détail

Cours de Model Checking

Cours de Model Checking S.Bardin Model checking 1/ 30 Cours de Model Checking Leçon 3 : Algorithmes de Model Checking Sébastien Bardin CEA-LIST, Laboratoire de Sûreté Logicielle sebastien.bardin@cea.fr http://sebastien.bardin.free.fr/

Plus en détail

Notes de cours. Cours introductif sur la théorie des domaines. Modèles des langages de programmation Master Parisien de Recherche en Informatique

Notes de cours. Cours introductif sur la théorie des domaines. Modèles des langages de programmation Master Parisien de Recherche en Informatique Notes de cours Cours introductif sur la théorie des domaines Paul-André Melliès Modèles des langages de programmation Master Parisien de Recherche en Informatique 1 Ensembles ordonnés Definition 1.1 (ensemble

Plus en détail

Quelques problèmes NP-complets

Quelques problèmes NP-complets Chapitre 12 Quelques problèmes NP-complets Maintenant que nous connaissons la NP-complétude d au moins un problème (SAT), nous allons montrer qu un très grand nombre de problèmes sont NP-complets. Le livre

Plus en détail

Sémantique formelle et synthèse de client pour services Web

Sémantique formelle et synthèse de client pour services Web Sémantique formelle et synthèse de client pour services Web Séminaire «Services Web» 24 Janvier 2006 sylvain.rampacek@univ-reims.fr CReSTIC LAMSADE Plan Introduction Services Web Description de la plate-forme

Plus en détail

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

Modèles à Événements Discrets. Réseaux de Petri Stochastiques Modèles à Événements Discrets Réseaux de Petri Stochastiques Table des matières 1 Chaînes de Markov Définition formelle Idée générale Discrete Time Markov Chains Continuous Time Markov Chains Propriétés

Plus en détail

Calculabilité Cours 2 : Machines de Turing

Calculabilité Cours 2 : Machines de Turing Calculabilité Cours 2 : Machines de Turing Introduction Un autre type de modèle de calcul Les fonctions récursives et les fonctions λ représentables définissent des modèles de calculs dans k N Nk N Nous

Plus en détail

(3.22) Interchangeabilité mutuelle : p q r p q r

(3.22) Interchangeabilité mutuelle : p q r p q r Préséance (priorité) des opérateurs (1) [x := e] (substitution textuelle) (prioritéélevée) (2). (application de fonction) (3) + P (opérateurs unaires préfixes) (4) / mod pgcd (5) + (opérateurs binaires)

Plus en détail

Machine de Turing. Informatique II Algorithmique 1

Machine de Turing. Informatique II Algorithmique 1 Machine de Turing Nous avons vu qu un programme peut être considéré comme la décomposition de la tâche à réaliser en une séquence d instructions élémentaires (manipulant des données élémentaires) compréhensibles

Plus en détail

Compatibility and replaceability analysis for timed web service protocols

Compatibility and replaceability analysis for timed web service protocols Compatibility and replaceability analysis for timed web service protocols Boualem Benatallah 1 Fabio Casati 2 Julien Ponge 3,1 Farouk Toumani 3 1 Computer School of Engineering, The University of New South

Plus en détail

Optimisation en nombres entiers

Optimisation en nombres entiers Optimisation en nombres entiers p. 1/83 Optimisation en nombres entiers Michel Bierlaire michel.bierlaire@epfl.ch EPFL - Laboratoire Transport et Mobilité - ENAC Optimisation en nombres entiers p. 2/83

Plus en détail

BJ - RELATIONS BINAIRES

BJ - RELATIONS BINAIRES BJ - RELATIONS BINAIRES Définitions Soit A et B deux ensembles non vides, et G une partie de A B. On dit qu un élément x de A est relié à un élément y de B par une relation binaire de graphe G, si le couple

Plus en détail

Placements de tours sur les diagrammes de permutations

Placements de tours sur les diagrammes de permutations Placements de tours sur les diagrammes de permutations 5 août 0 Résumé Le problème des placements de tours consiste à compter le nombre de manières de placer k tours sur un échiquier sans que les tours

Plus en détail

Analyse statique de SCADE par interprétation abstraite

Analyse statique de SCADE par interprétation abstraite Analyse statique de SCADE par interprétation abstraite soutenance de stage Alex AUVOLAT ANSYS-Esterel Technologies sous l encadrement de Jean-Louis Colaço Juin-Juillet 2014 1/33 Introduction SCADE : programmation

Plus en détail

Logique informatique 2013-2014. Examen

Logique informatique 2013-2014. Examen Logique informatique 2013-2014. Examen 30 mai 2013. Durée 3h. Tous les documents sont autorisés. Seuls les résultats du cours peuvent être utilisés sans démonstration. Le barême et la longueur des solutions

Plus en détail

Validation de systèmes interactifs centrée sur l usager

Validation de systèmes interactifs centrée sur l usager Validation de systèmes interactifs centrée sur l usager C. Ailleres Mardi 6 Janvier 2004 Problématique Avènement de l informatique : besoin de qualité et de fiabilité des systèmes Génie Logiciel Importance

Plus en détail

Points fixes de fonctions à domaine fini

Points fixes de fonctions à domaine fini ÉCOLE POLYTECHNIQUE ÉCOLE NORMALE SUPÉRIEURE DE CACHAN ÉCOLE SUPÉRIEURE DE PHYSIQUE ET DE CHIMIE INDUSTRIELLES CONCOURS D ADMISSION 2013 FILIÈRE MP HORS SPÉCIALITÉ INFO FILIÈRE PC COMPOSITION D INFORMATIQUE

Plus en détail

Modélisation et vérification

Modélisation et vérification Modélisation et vérification Yohan Boichut (inspiré du cours de John Mullins, Ecole polytechnique de Montréal) Cours Master IRAD Semestre 3 Yohan Boichut Modélisation et vérification Cours Master IRAD

Plus en détail

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France. La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of

Plus en détail

Property and Equivalence Testing

Property and Equivalence Testing Property and Equivalence Testing Frédéric Magniez - Probabilistic Abstraction for Model Checking: An Approach Based on Property Testing, LICS 02 - Property Testing of Regular Tree Languages, ICALP 04 -

Plus en détail

Analyse de programmes par interprétation abstraite

Analyse de programmes par interprétation abstraite Analyse de programmes par interprétation abstraite Marc PEGON marc.pegon@ensimag.imag.fr Ensimag - Grenoble INP Encadrants David MONNIAUX Matthieu MOY 1 / 21 Analyse statique : obtenir automatiquement

Plus en détail

Chapitre 2. Eléments pour comprendre un énoncé

Chapitre 2. Eléments pour comprendre un énoncé Chapitre 2 Eléments pour comprendre un énoncé Ce chapitre est consacré à la compréhension d un énoncé. Pour démontrer un énoncé donné, il faut se reporter au chapitre suivant. Les tables de vérité données

Plus en détail

TSCPN: Timed Secure Colored Petri Net Modélisation et vérification de la sécurité des informations par des réseaux de Petri colorés temporisés

TSCPN: Timed Secure Colored Petri Net Modélisation et vérification de la sécurité des informations par des réseaux de Petri colorés temporisés TSCPN: Timed Secure Colored Petri Net Modélisation et vérification de la sécurité des informations par des réseaux de Petri colorés temporisés Présenté par : Hind Rakkay Dirigé par : Hanifa Boucheneb École

Plus en détail

Algorithmique et Analyse d Algorithmes

Algorithmique et Analyse d Algorithmes Algorithmique et Analyse d Algorithmes L3 Info Cours 11 : Arbre couvrant Prétraitement Benjamin Wack 2015-2016 1 / 32 La dernière fois Rappels sur les graphes Problèmes classiques Algorithmes d optimisation

Plus en détail

Analyse de programme

Analyse de programme Analyse de programme À quoi ça sert? Comment ça marche? Bertrand Jeannet et Alain Girault INRIA Rhône-Alpes 25 janvier 2012 A. Girault et B. Jeannet (INRIA) Analyse de programme 25 janvier 2012 1 / 41

Plus en détail

Notion de complexité

Notion de complexité 1 de 27 Algorithmique Notion de complexité Florent Hivert Mél : Florent.Hivert@lri.fr Adresse universelle : http://www-igm.univ-mlv.fr/ hivert Outils mathématiques 2 de 27 Outils mathématiques : analyse

Plus en détail

Limites finies en un point

Limites finies en un point 8 Limites finies en un point Pour ce chapitre, sauf précision contraire, I désigne une partie non vide de R et f une fonction définie sur I et à valeurs réelles ou complees. Là encore, les fonctions usuelles,

Plus en détail

ALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII

ALGORITHMIQUE II NOTION DE COMPLEXITE. SMI AlgoII ALGORITHMIQUE II NOTION DE COMPLEXITE 1 2 Comment choisir entre différents algorithmes pour résoudre un même problème? Plusieurs critères de choix : Exactitude Simplicité Efficacité (but de ce chapitre)

Plus en détail

INTRODUCTION A L OPTIMISATION

INTRODUCTION A L OPTIMISATION INTRODUCTION A L OPTIMISATION Les domaines d application L optimisation est essentiellement un outil d aide à la décision au sein de l entreprise, mais aussi pour des individus. Le terme optimal est souvent

Plus en détail

Programmation Linéaire - Cours 1

Programmation Linéaire - Cours 1 Programmation Linéaire - Cours 1 P. Pesneau pierre.pesneau@math.u-bordeaux1.fr Université Bordeaux 1 Bât A33 - Bur 265 Ouvrages de référence V. Chvátal - Linear Programming, W.H.Freeman, New York, 1983.

Plus en détail

Chapitre 4 Automates à pile et langages hors-contexte

Chapitre 4 Automates à pile et langages hors-contexte Chapitre 4 Automates à pile et langages hors-contexte 87 Introduction Langage a n b n n est pas accepté par un automate fini. Par contre L k = {a n b n n k} est accepté. Mémoire finie, mémoire infinie,

Plus en détail

CHAPITRE 4 FORMES NORMALES SYSTEMES COMPLETS DE CONNECTEURS 1

CHAPITRE 4 FORMES NORMALES SYSTEMES COMPLETS DE CONNECTEURS 1 Université Paris 7 U3MI36 CHAPITRE 4 FORMES NORMALES SYSTEMES COMPLETS DE CONNECTEURS 1 4.1 Formes normales Définitions : 1) Une formule F est sous forme normale disjonctive si et seulement si il existe

Plus en détail

À propos des matrices échelonnées

À propos des matrices échelonnées À propos des matrices échelonnées Antoine Ducros appendice au cours de Géométrie affine et euclidienne dispensé à l Université Paris 6 Année universitaire 2011-2012 Introduction Soit k un corps, soit E

Plus en détail

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique La programmation linéaire : une introduction Qu est-ce qu un programme linéaire? Qu est-ce qu un programme linéaire? Exemples : allocation de ressources problème de recouvrement Hypothèses de la programmation

Plus en détail

Plus courts chemins, programmation dynamique

Plus courts chemins, programmation dynamique 1 Plus courts chemins, programmation dynamique 1. Plus courts chemins à partir d un sommet 2. Plus courts chemins entre tous les sommets 3. Semi-anneau 4. Programmation dynamique 5. Applications à la bio-informatique

Plus en détail

Cours d analyse 1ère année. Rhodes Rémi

Cours d analyse 1ère année. Rhodes Rémi Cours d analyse 1ère année Rhodes Rémi 10 décembre 2008 2 Table des matières 1 Propriétés des nombres réels 5 1.1 Sous-ensembles remarquables de R........................ 5 1.2 Relations d ordre..................................

Plus en détail

Outils d analyse fonctionnelle Cours 5 Théorie spectrale

Outils d analyse fonctionnelle Cours 5 Théorie spectrale Outils d analyse fonctionnelle Cours 5 Théorie spectrale 22 septembre 2015 Généralités Dans tout ce qui suit V désigne un espace de Hilbert réel muni d un produit scalaire x, y. Définition Soit A une application

Plus en détail

Théorie des ensembles

Théorie des ensembles Théorie des ensembles Cours de licence d informatique Saint-Etienne 2002/2003 Bruno Deschamps 2 Contents 1 Eléments de théorie des ensembles 3 1.1 Introduction au calcul propositionnel..................

Plus en détail

Problème de contrôle optimal pour une chaîne de Markov

Problème de contrôle optimal pour une chaîne de Markov Problème de contrôle optimal pour une chaîne de Markov cours ENSTA MA206 Il s agit de résoudre un problème d arrêt optimal pour une chaîne de Markov à temps discret. Soit X n une chaîne de Markov à valeurs

Plus en détail

Recherche opérationnelle. Programmation linéaire et recherche opérationnelle. Programmation linéaire. Des problèmes de RO que vous savez résoudre

Recherche opérationnelle. Programmation linéaire et recherche opérationnelle. Programmation linéaire. Des problèmes de RO que vous savez résoudre Recherche opérationnelle Programmation linéaire et recherche opérationnelle Ioan Todinca Ioan.Todinca@univ-orleans.fr tél. 0 38 41 7 93 bureau : en bas à gauche Tentative de définition Ensemble de méthodes

Plus en détail

Validation et génération de tableaux de Knuth-Morris-Pratt

Validation et génération de tableaux de Knuth-Morris-Pratt Validation et génération de tableaux de Knuth-Morris-Pratt Jean-Pierre Duval, Thierry Lecroq et Arnaud Lefebvre {Jean-Pierre.Duval,Thierry.Lecroq,Arnaud.Lefebvre}@univ-rouen.fr Laboratoire d Informatique,

Plus en détail

Chapitre 6. Modélisation en P.L.I. 6.1 Lien entre PL et PLI. 6.1.1 Approximation de la PLI

Chapitre 6. Modélisation en P.L.I. 6.1 Lien entre PL et PLI. 6.1.1 Approximation de la PLI Chapitre 6 Modélisation en P.L.I. 6.1 Lien entre PL et PLI (P) problème de PL. On restreint les variables à être entières : on a un problème de PLI (ILP en anglais). On restreint certaines variables à

Plus en détail

Représentation des fonctions booléennes

Représentation des fonctions booléennes Représentation des fonctions booléennes Épreuve pratique d algorithmique et de programmation Juillet 2003 Ce problème est consacré à l étude de deux représentations des fonctions booléennes de N variables

Plus en détail

Concours 2015 Épreuve d Informatique Filière : MP Durée de l épreuve : 3 heures. L utilisation d une calculatrice est autorisée.

Concours 2015 Épreuve d Informatique Filière : MP Durée de l épreuve : 3 heures. L utilisation d une calculatrice est autorisée. A 2015 INFO. MP École des Ponts ParisTech, SUPAERO (ISAE), ENSTA ParisTech, Télécom ParisTech, Mines ParisTech, Mines de Saint-étienne, Mines Nancy, Télécom Bretagne, ENSAE ParisTech (filière MP), École

Plus en détail

Fonctions homographiques

Fonctions homographiques Fonctions homographiques On donne ci-dessous deux définitions des fonctions homographiques, et on montre que ces deux définitions sont équivalentes. On décrit la courbe représentative d une fonction homographique.

Plus en détail

Le corps R des nombres réels

Le corps R des nombres réels Le corps R des nombres réels. Construction de R à l aide des suites de Cauchy de nombres rationnels On explique brièvement dans ce paragraphe comment construire le corps R des nombres réels à partir du

Plus en détail

Intelligence Artificielle Planification

Intelligence Artificielle Planification Intelligence Artificielle Planification Bruno Bouzy http://web.mi.parisdescartes.fr/~bouzy bruno.bouzy@parisdescartes.fr Licence 3 Informatique UFR Mathématiques et Informatique Université Paris Descartes

Plus en détail

Raisonnement symbolique et géométrique pour la robotique mobile

Raisonnement symbolique et géométrique pour la robotique mobile Introduction à la réunion finale Raisonnement symbolique et géométrique pour la robotique mobile J. Guitton, J.L. Farges Control Architectures of Robots - Bourges - 30 mai 2008 1 Plan Introduction Vers

Plus en détail