136
Mod´ elisation et v´ erification Yohan Boichut (inspir´ e du cours de John Mullins, Ecole polytechnique de Montr´ eal) Cours Master IRAD – Semestre 3 Yohan Boichut Mod´ elisation et v´ erification Cours Master IRAD – Semestre 3 1 / 69

Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Modelisation et verification

Yohan Boichut

(inspire du cours de John Mullins, Ecole polytechnique de Montreal)

Cours Master IRAD – Semestre 3

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 1 / 69

Page 2: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Outline

1 Introduction

2 Quelques petits exemples

3 Systemes de transitions

4 Logiques des systemes concurrents

5 Model-Checking LTL

6 End of story. . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 2 / 69

Page 3: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Motivations

▸ Conception de systemes fiables▸ Industrie des technologies de plus en plus tournees vers outils

de specification et verification (Siemens, Thomson, Intel, . . . )▸ Besoin de competences pour savoir utiliser et raisonner dans

un tel contexte

▸ Specifier pour verifier

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 3 / 69

Page 4: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Modelisation et verification

Abstraction du systeme concret et simulation de ce modele

▸ Modelisation de systemes : automates (systemes detransitions)

▸ Simulation du modele : langages des automates (tracesd’executions)

▸ Modelisation des proprietes attendues des systemes (Logiques)

Verification automatique par Model-checking

▸ Technique automatique

▸ Exploration complete des configurations des systemes

▸ Retour de contre-exemple lorsqu’une propriete n’est pasverifiee

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 4 / 69

Page 5: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Outline

1 Introduction

2 Quelques petits exemples

3 Systemes de transitions

4 Logiques des systemes concurrents

5 Model-Checking LTL

6 End of story. . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 5 / 69

Page 6: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons une montre a affichage numerique hh:mm

Avec 60 × 24 = 1440 etats, nous pouvons representer tous les etatsatteignables de notre montre

00:00

...

07:58

07:59

08:00

...

23:59

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 6 / 69

Page 7: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons une montre a affichage numerique hh:mm

Avec 60 × 24 = 1440 etats, nous pouvons representer tous les etatsatteignables de notre montre

00:00

...

07:58

07:59

08:00

...

23:59

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 6 / 69

Page 8: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons une montre a affichage numerique hh:mm

Avec 60 × 24 = 1440 etats, nous pouvons representer tous les etatsatteignables de notre montre

00:00

...

07:58

07:59

08:00

...

23:59

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 6 / 69

Page 9: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons un digicode a trois touches A,B et C. La porte s’ouvrequand ABA est saisi

Le digicode est dans son etat initial apres saisie d’un mauvais code

0

1

B,C

2A

3

A,B,C

A,C

4

B

A,B,C

B,C5

A

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 7 / 69

Page 10: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons un digicode a trois touches A,B et C. La porte s’ouvrequand ABA est saisi

Le digicode est dans son etat initial apres saisie d’un mauvais code

0

1

B,C

2A

3

A,B,C

A,C

4

B

A,B,C

B,C5

A

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 7 / 69

Page 11: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons un compteur modulo 4

Operations

▸ inc : incremente de 1 le compteur

▸ dec : diminue de 1 le compteur

1 etat par valeur du compteur : 4 etats

0

1

inc

3

dec

dec

2

incdec inc

inc

dec

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 8 / 69

Page 12: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons un compteur modulo 4

Operations

▸ inc : incremente de 1 le compteur

▸ dec : diminue de 1 le compteur

1 etat par valeur du compteur : 4 etats

0

1

inc

3

dec

dec

2

incdec inc

inc

dec

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 8 / 69

Page 13: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons un compteur modulo 4

Operations

▸ inc : incremente de 1 le compteur

▸ dec : diminue de 1 le compteur

1 etat par valeur du compteur : 4 etats

0

1

inc

3

dec

dec

2

incdec inc

inc

dec

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 8 / 69

Page 14: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons un canal FIFO de capacite 2 sur l’alphabet {a,b}

Operations

▸ in(x) : enfiler la lettre x si le canal n’est pas plein

▸ out(x) : defiler la lettre x si le canal n’est pas vide

1 etat par configuration possible du canal : 7 etats

bb bout(b)

in(b)

abin(a)

out(b)a

out(b)

in(b) in(a)

baout(a)

out(a)

in(b)

aain(a)

out(a)

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 9 / 69

Page 15: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons un canal FIFO de capacite 2 sur l’alphabet {a,b}

Operations

▸ in(x) : enfiler la lettre x si le canal n’est pas plein

▸ out(x) : defiler la lettre x si le canal n’est pas vide

1 etat par configuration possible du canal : 7 etats

bb bout(b)

in(b)

abin(a)

out(b)a

out(b)

in(b) in(a)

baout(a)

out(a)

in(b)

aain(a)

out(a)

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 9 / 69

Page 16: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons un canal FIFO de capacite 2 sur l’alphabet {a,b}

Operations

▸ in(x) : enfiler la lettre x si le canal n’est pas plein

▸ out(x) : defiler la lettre x si le canal n’est pas vide

1 etat par configuration possible du canal : 7 etats

bb bout(b)

in(b)

abin(a)

out(b)a

out(b)

in(b) in(a)

baout(a)

out(a)

in(b)

aain(a)

out(a)

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 9 / 69

Page 17: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons une variable booleenne

Operations

▸ b = vrai, b = faux : test de la valeur de la variable b

▸ b := vrai, b := faux : affectation de la variable b

1 etat par valeur

vrai

b = vraib := vrai

fauxb := fauxb := vrai

b := fauxb = faux

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 10 / 69

Page 18: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons une variable booleenne

Operations

▸ b = vrai, b = faux : test de la valeur de la variable b

▸ b := vrai, b := faux : affectation de la variable b

1 etat par valeur

vrai

b = vraib := vrai

fauxb := fauxb := vrai

b := fauxb = faux

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 10 / 69

Page 19: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons une variable booleenne

Operations

▸ b = vrai, b = faux : test de la valeur de la variable b

▸ b := vrai, b := faux : affectation de la variable b

1 etat par valeur

vrai

b = vraib := vrai

fauxb := fauxb := vrai

b := fauxb = faux

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 10 / 69

Page 20: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons le programme sequentiel

1: While true doif not b thenbegin2: b:= true;3: proc ;4: b := false;

endod

1

b = vrai2b = faux 3

b := vrai

4

procb := faux

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 11 / 69

Page 21: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petits exemples de modelisation

Prenons le programme sequentiel

1: While true doif not b thenbegin2: b:= true;3: proc ;4: b := false;

endod

1

b = vrai2b = faux 3

b := vrai

4

procb := faux

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 11 / 69

Page 22: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Outline

1 Introduction

2 Quelques petits exemples

3 Systemes de transitions

4 Logiques des systemes concurrents

5 Model-Checking LTL

6 End of story. . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 12 / 69

Page 23: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Systemes de transitions

DefinitionUn systeme de transitions est un couple A = ⟨S ,T ⟩ ou

▸ S est un ensemble d’etats fini ou infini

▸ T ⊆ S × S est un ensemble de transitions fini ou infini

DefinitionUn chemin c de longueur n (note ∣c ∣ = n) est une suite detransitions s1 → s2 → s3 → . . .→ sn. Un chemin infini est une suiteinfinie de transitions

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 13 / 69

Page 24: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Systemes de transitions

DefinitionUn systeme de transitions est un couple A = ⟨S ,T ⟩ ou

▸ S est un ensemble d’etats fini ou infini

▸ T ⊆ S × S est un ensemble de transitions fini ou infini

DefinitionUn chemin c de longueur n (note ∣c ∣ = n) est une suite detransitions s1 → s2 → s3 → . . .→ sn. Un chemin infini est une suiteinfinie de transitions

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 13 / 69

Page 25: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Systemes de transitions etiquetes

DefinitionUn systeme de transitions etiquete est un couple A = ⟨S ,T ,Σ⟩ ou

▸ S est un ensemble d’etats fini ou infini

▸ T ⊆ S ×Σ × S est un ensemble de transitions fini ou infini

▸ Σ est un ensemble d’actions

DefinitionSi c est un chemin s1

a1→ s2a2→ s3

a3→ . . . alors la suite a1a2a3 . . . estune trace

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 14 / 69

Page 26: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Systemes de transitions etiquetes

DefinitionUn systeme de transitions etiquete est un couple A = ⟨S ,T ,Σ⟩ ou

▸ S est un ensemble d’etats fini ou infini

▸ T ⊆ S ×Σ × S est un ensemble de transitions fini ou infini

▸ Σ est un ensemble d’actions

DefinitionSi c est un chemin s1

a1→ s2a2→ s3

a3→ . . . alors la suite a1a2a3 . . . estune trace

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 14 / 69

Page 27: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Systemes de transitions

DefinitionUn systeme de transitions parametre est un tupleA = ⟨S ,T ,SX1 , . . . , ,SXm ,TY1 , . . . ,TYn⟩ ou

▸ S est un ensemble d’etats

▸ T ⊆ S × S est l’ensemble des transitions

▸ SXi⊆ S sont des parametres d’etats

▸ TYi⊆ T sont des parametres de transitions

En pratique, utilisation de systemes de transitions etiquetes etparametres par un etat initial et des etats terminaux

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 15 / 69

Page 28: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Produit libre de systemes de transitions

Systemes composes de sous systemes independants : aucuneinteraction entre les composants

DefinitionLe produit libre A1 ×A2 de deux systemes de transitionsA1 = ⟨S1,T1,Σ1⟩ et A2 = ⟨S2,T2,Σ2⟩ est le systeme de transitionA = ⟨S ,T ,Σ⟩ defini par

▸ S = S1 × S2

▸ T = {(s1, s2)(a1,a2)→ (s ′1, s ′2) ∣ ((s1, a1, s

′1) ∈ T1∧(s2, a2, s

′2) ∈ T2)

∨(a1 =′ ′ et s1 = s ′1) ∨ (a2 =′ ′ et s2 = s ′2)}▸ Σ = (Σ1 ∪ { }) × (Σ2 ∪ { })

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 16 / 69

Page 29: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Produit libre de systemes de transitions

Exemple

Calculer le produit libre de A1 et A2 ou

▸ A1 represente un compteur modulo 2

▸ A2 represente un compteur modulo 3

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 17 / 69

Page 30: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Produit synchronise de systemes de transitions

DefinitionLe produit synchronise A1∣∣SyncA2 de A1 et A2 par rapport aSync ⊆ Σ1 ∪ { })× (Σ2 ∪ { }) est le systeme de transitions A1 ×A2

restreint aux seules transitions presentes dans Sync

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 18 / 69

Page 31: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Produit synchronise de systemes de transitions

Exemple

Calculer le produit synchronise de A1 et A2 avecSync = {(inc, inc), (dec ,dec), ( , ))} ou

▸ A1 represente un compteur modulo 2

▸ A2 represente un compteur modulo 3

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 19 / 69

Page 32: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Synchronisation par messages

La relation de synchronisation couple les actions complementaires :emission / reception de messages (m!/m?)

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 20 / 69

Page 33: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Exercice : Protocole de commerce electronique

But : manipuler de l’argent electronique sous forme de certificatsmonetairesDonnees

▸ Un client, une banque et un marchand

▸ Cryptographie parfaite Ô⇒ validite des certificats monetaires

ScenarioLe client

1. initie une action de paiement

1.1 envoie au marchand son certificat electronique1.2 Sur presentation du certificat, le marchand demande a la

banque l’emission d’un nouveau certificat monetaire et1.3 Le marchand livre la marchandise

2. emet une demande d’annulation dans quel cas, la banqueapres verification du certificat retourne l’argent dans lecompte client et annule sa validite

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 21 / 69

Page 34: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Exercice : Protocole de commerce electronique

Modelisation

▸ Un client qui peut payer, attendre sa livraison et annuler

▸ Un marchand qui peut enregistrer le paiement, livrer /demander un nouveau certificat puis recevoir le transfert

▸ Une banque qui peut recevoir une demande d’annulation ourecevoir une demande de certificat puis realiser le transfert

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 22 / 69

Page 35: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Exercice : Protocole de commerce electronique

▸ Amarchand

a bpayer?

clivrer!

d

certif! e

certif!

livrer!

ftransfert?

g

transfert?

livrer!

▸ Aclient

payer!, livrer?,annuler!

▸ Abanque

0

1annuler?

2

certif?

3transfert!

Calculer le produit synchronise par message de ces trois automates!

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 23 / 69

Page 36: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Synchronisation par canal

P0 et P1 communiquent par messages avec un canal C

Nous pouvons ramener le probleme a une synchronisation parmessages entre les deux processus et un troisieme modelisant uncanal FIFO

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 24 / 69

Page 37: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Synchronisation par variables partagees

Algorithme de Peterson

P0 execute

while true do

begin

{section non critique}

d0 := true;

tour := 0;

attendre (d1=false ou tour=1);

{section critique}

d0 := false;

end

P1 execute

while true do

begin

{section non critique}

d1 := true;

tour := 1;

attendre (d0=false ou tour=0);

{section critique}

d1 := false;

end

Exercice

1. Representez les processus et les variables partagees par dessystemes de transitions

2. Estimez la taille du produit synchronise de ces 5 composants !

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 25 / 69

Page 38: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Outline

1 Introduction

2 Quelques petits exemples

3 Systemes de transitions

4 Logiques des systemes concurrents

5 Model-Checking LTL

6 End of story. . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 26 / 69

Page 39: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Motivation

▸ Complement de l’approche operationnelle

▸ Descrition de proprietes que le systeme modelise doit satisfaire

Exemple

Pour l’algorithme de Peterson

▸ Il n’existe aucun etat du produit synchronise ou les deuxprocessus sont en meme temps en section critique

▸ Il n’existe aucun deadlock

▸ S’il existe un etat ou le processus essaie de rentrer en sectioncritique alors il existe un etat accessible de cet etat ou ceprocessus rentre effectivement en section critique

▸ Il n’existe pas de chemin infini constitue uniquement detransitions ou les deux processus tentent de rentrer en sectioncritique sans jamais y parvenir

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 27 / 69

Page 40: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Motivation

▸ Complement de l’approche operationnelle

▸ Descrition de proprietes que le systeme modelise doit satisfaire

Exemple

Pour l’algorithme de Peterson

▸ Il n’existe aucun etat du produit synchronise ou les deuxprocessus sont en meme temps en section critique

▸ Il n’existe aucun deadlock

▸ S’il existe un etat ou le processus essaie de rentrer en sectioncritique alors il existe un etat accessible de cet etat ou ceprocessus rentre effectivement en section critique

▸ Il n’existe pas de chemin infini constitue uniquement detransitions ou les deux processus tentent de rentrer en sectioncritique sans jamais y parvenir

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 27 / 69

Page 41: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Motivation

▸ Complement de l’approche operationnelle

▸ Descrition de proprietes que le systeme modelise doit satisfaire

Exemple

Pour l’algorithme de Peterson

▸ Il n’existe aucun etat du produit synchronise ou les deuxprocessus sont en meme temps en section critique

▸ Il n’existe aucun deadlock

▸ S’il existe un etat ou le processus essaie de rentrer en sectioncritique alors il existe un etat accessible de cet etat ou ceprocessus rentre effectivement en section critique

▸ Il n’existe pas de chemin infini constitue uniquement detransitions ou les deux processus tentent de rentrer en sectioncritique sans jamais y parvenir

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 27 / 69

Page 42: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Motivation

▸ Complement de l’approche operationnelle

▸ Descrition de proprietes que le systeme modelise doit satisfaire

Exemple

Pour l’algorithme de Peterson

▸ Il n’existe aucun etat du produit synchronise ou les deuxprocessus sont en meme temps en section critique

▸ Il n’existe aucun deadlock

▸ S’il existe un etat ou le processus essaie de rentrer en sectioncritique alors il existe un etat accessible de cet etat ou ceprocessus rentre effectivement en section critique

▸ Il n’existe pas de chemin infini constitue uniquement detransitions ou les deux processus tentent de rentrer en sectioncritique sans jamais y parvenir

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 27 / 69

Page 43: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Motivation

▸ Complement de l’approche operationnelle

▸ Descrition de proprietes que le systeme modelise doit satisfaire

Exemple

Pour l’algorithme de Peterson

▸ Il n’existe aucun etat du produit synchronise ou les deuxprocessus sont en meme temps en section critique

▸ Il n’existe aucun deadlock

▸ S’il existe un etat ou le processus essaie de rentrer en sectioncritique alors il existe un etat accessible de cet etat ou ceprocessus rentre effectivement en section critique

▸ Il n’existe pas de chemin infini constitue uniquement detransitions ou les deux processus tentent de rentrer en sectioncritique sans jamais y parvenir

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 27 / 69

Page 44: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et pour faire tout ceci. . .

▸ Utilisation de langages de specification appeles logiques

▸ Multitude de logiques

▸ Logique propositionnelle : proprietes purement locales▸ Logique temporelle lineaire : proprietes sur les systemes en

cours d’execution

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 28 / 69

Page 45: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et pour faire tout ceci. . .

▸ Utilisation de langages de specification appeles logiques▸ Multitude de logiques

▸ Logique propositionnelle : proprietes purement locales▸ Logique temporelle lineaire : proprietes sur les systemes en

cours d’execution

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 28 / 69

Page 46: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et pour faire tout ceci. . .

▸ Utilisation de langages de specification appeles logiques▸ Multitude de logiques

▸ Logique propositionnelle : proprietes purement locales

▸ Logique temporelle lineaire : proprietes sur les systemes encours d’execution

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 28 / 69

Page 47: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et pour faire tout ceci. . .

▸ Utilisation de langages de specification appeles logiques▸ Multitude de logiques

▸ Logique propositionnelle : proprietes purement locales▸ Logique temporelle lineaire : proprietes sur les systemes en

cours d’execution

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 28 / 69

Page 48: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Logique propositionnelle

Formules construites inductivement a partir d’un ensemble fixe depropositions atomiques PAV

PAV = {x = d ∣ x ∈ V ∧ d ∈ Dx}

avec V un ensemble de variables et pour une variable x , Dx

represente l’ensemble des valeurs possibles de x

SyntaxeL0 est le plus petit ensemble de formules propositionnelles tel que

▸ 0,1 ∈ L0

▸ PAV ⊆ L0

▸ Si φ,ψ ∈ L0 alors φ ∧ ψ ∈ L0 et φ ∨ ψ ∈ L0

▸ Si φ ∈ L0 alors ¬φ ∈ L0

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 29 / 69

Page 49: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Logique propositionnelle

Formules construites inductivement a partir d’un ensemble fixe depropositions atomiques PAV

PAV = {x = d ∣ x ∈ V ∧ d ∈ Dx}

avec V un ensemble de variables et pour une variable x , Dx

represente l’ensemble des valeurs possibles de x

SyntaxeL0 est le plus petit ensemble de formules propositionnelles tel que

▸ 0,1 ∈ L0

▸ PAV ⊆ L0

▸ Si φ,ψ ∈ L0 alors φ ∧ ψ ∈ L0 et φ ∨ ψ ∈ L0

▸ Si φ ∈ L0 alors ¬φ ∈ L0

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 29 / 69

Page 50: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Pourquoi pas ⇒ et ⇔ ?

Parce que

φ⇒ ψ ≡ ¬φ ∨ ψ

φ⇔ ψ ≡ (φ⇒ ψ) ∧ (ψ⇒ φ)

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 30 / 69

Page 51: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Pourquoi pas ⇒ et ⇔ ?

Parce que

φ⇒ ψ ≡ ¬φ ∨ ψ

φ⇔ ψ ≡ (φ⇒ ψ) ∧ (ψ⇒ φ)

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 30 / 69

Page 52: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Fonctions d’interpretation

Ces fonctions permettent de decorer des etats d’un automate avecdes propositions atomiques

DefinitionUn automate non etiquete sera un quadruplet ⟨S ,S0,T , ρ⟩ ouρ ∶ S ↦ 2PAV

Exemple

A l’automate suivant, nous pouvons definir pourPAV = {p,q, r , s, t} la decoration suivante : ρ(1) = {p,q, t},ρ(2) = {p,q, r}, ρ(3) = {p, s} et ρ(4) = {p, r}

1 2

3

4

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 31 / 69

Page 53: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Fonctions d’interpretation

Ces fonctions permettent de decorer des etats d’un automate avecdes propositions atomiques

DefinitionUn automate non etiquete sera un quadruplet ⟨S ,S0,T , ρ⟩ ouρ ∶ S ↦ 2PAV

Exemple

A l’automate suivant, nous pouvons definir pourPAV = {p,q, r , s, t} la decoration suivante : ρ(1) = {p,q, t},ρ(2) = {p,q, r}, ρ(3) = {p, s} et ρ(4) = {p, r}

1 2

3

4

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 31 / 69

Page 54: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Fonctions d’interpretation

Ces fonctions permettent de decorer des etats d’un automate avecdes propositions atomiques

DefinitionUn automate non etiquete sera un quadruplet ⟨S ,S0,T , ρ⟩ ouρ ∶ S ↦ 2PAV

Exemple

A l’automate suivant, nous pouvons definir pourPAV = {p,q, r , s, t} la decoration suivante : ρ(1) = {p,q, t},ρ(2) = {p,q, r}, ρ(3) = {p, s} et ρ(4) = {p, r}

1 2

3

4

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 31 / 69

Page 55: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule

A, s ⊧ φ

Inductivement sur la structure de la formule :

▸ A, s /⊧ 0 et A, s ⊧ 1

▸ Si φ ∈ PAV alors A, s ⊧ φ ssi φ ∈ ρ(s)▸ A, s ⊧ φ ∨ ψ ssi A, s ⊧ φ ou A, s ⊧ ψ▸ A, s ⊧ φ ∧ ψ ssi A, s ⊧ φ et A, s ⊧ ψ▸ A, s ⊧ ¬φ ssi A, s /⊧ φ

φ est une tautologie si c’est une formule valide sur tous les etats

φ est une contradiction si c’est une formule qui n’est valide suraucun etat

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 32 / 69

Page 56: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule

A, s ⊧ φ

Inductivement sur la structure de la formule :

▸ A, s /⊧ 0 et A, s ⊧ 1

▸ Si φ ∈ PAV alors A, s ⊧ φ ssi φ ∈ ρ(s)▸ A, s ⊧ φ ∨ ψ ssi A, s ⊧ φ ou A, s ⊧ ψ▸ A, s ⊧ φ ∧ ψ ssi A, s ⊧ φ et A, s ⊧ ψ▸ A, s ⊧ ¬φ ssi A, s /⊧ φ

φ est une tautologie si c’est une formule valide sur tous les etats

φ est une contradiction si c’est une formule qui n’est valide suraucun etat

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 32 / 69

Page 57: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule

A, s ⊧ φ

Inductivement sur la structure de la formule :

▸ A, s /⊧ 0 et A, s ⊧ 1

▸ Si φ ∈ PAV alors A, s ⊧ φ ssi φ ∈ ρ(s)▸ A, s ⊧ φ ∨ ψ ssi A, s ⊧ φ ou A, s ⊧ ψ▸ A, s ⊧ φ ∧ ψ ssi A, s ⊧ φ et A, s ⊧ ψ▸ A, s ⊧ ¬φ ssi A, s /⊧ φ

φ est une tautologie si c’est une formule valide sur tous les etats

φ est une contradiction si c’est une formule qui n’est valide suraucun etat

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 32 / 69

Page 58: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule

A, s ⊧ φ

Inductivement sur la structure de la formule :

▸ A, s /⊧ 0 et A, s ⊧ 1

▸ Si φ ∈ PAV alors A, s ⊧ φ ssi φ ∈ ρ(s)

▸ A, s ⊧ φ ∨ ψ ssi A, s ⊧ φ ou A, s ⊧ ψ▸ A, s ⊧ φ ∧ ψ ssi A, s ⊧ φ et A, s ⊧ ψ▸ A, s ⊧ ¬φ ssi A, s /⊧ φ

φ est une tautologie si c’est une formule valide sur tous les etats

φ est une contradiction si c’est une formule qui n’est valide suraucun etat

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 32 / 69

Page 59: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule

A, s ⊧ φ

Inductivement sur la structure de la formule :

▸ A, s /⊧ 0 et A, s ⊧ 1

▸ Si φ ∈ PAV alors A, s ⊧ φ ssi φ ∈ ρ(s)▸ A, s ⊧ φ ∨ ψ ssi A, s ⊧ φ ou A, s ⊧ ψ

▸ A, s ⊧ φ ∧ ψ ssi A, s ⊧ φ et A, s ⊧ ψ▸ A, s ⊧ ¬φ ssi A, s /⊧ φ

φ est une tautologie si c’est une formule valide sur tous les etats

φ est une contradiction si c’est une formule qui n’est valide suraucun etat

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 32 / 69

Page 60: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule

A, s ⊧ φ

Inductivement sur la structure de la formule :

▸ A, s /⊧ 0 et A, s ⊧ 1

▸ Si φ ∈ PAV alors A, s ⊧ φ ssi φ ∈ ρ(s)▸ A, s ⊧ φ ∨ ψ ssi A, s ⊧ φ ou A, s ⊧ ψ▸ A, s ⊧ φ ∧ ψ ssi A, s ⊧ φ et A, s ⊧ ψ

▸ A, s ⊧ ¬φ ssi A, s /⊧ φφ est une tautologie si c’est une formule valide sur tous les etats

φ est une contradiction si c’est une formule qui n’est valide suraucun etat

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 32 / 69

Page 61: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule

A, s ⊧ φ

Inductivement sur la structure de la formule :

▸ A, s /⊧ 0 et A, s ⊧ 1

▸ Si φ ∈ PAV alors A, s ⊧ φ ssi φ ∈ ρ(s)▸ A, s ⊧ φ ∨ ψ ssi A, s ⊧ φ ou A, s ⊧ ψ▸ A, s ⊧ φ ∧ ψ ssi A, s ⊧ φ et A, s ⊧ ψ▸ A, s ⊧ ¬φ ssi A, s /⊧ φ

φ est une tautologie si c’est une formule valide sur tous les etats

φ est une contradiction si c’est une formule qui n’est valide suraucun etat

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 32 / 69

Page 62: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule

A, s ⊧ φ

Inductivement sur la structure de la formule :

▸ A, s /⊧ 0 et A, s ⊧ 1

▸ Si φ ∈ PAV alors A, s ⊧ φ ssi φ ∈ ρ(s)▸ A, s ⊧ φ ∨ ψ ssi A, s ⊧ φ ou A, s ⊧ ψ▸ A, s ⊧ φ ∧ ψ ssi A, s ⊧ φ et A, s ⊧ ψ▸ A, s ⊧ ¬φ ssi A, s /⊧ φ

φ est une tautologie si c’est une formule valide sur tous les etats

φ est une contradiction si c’est une formule qui n’est valide suraucun etat

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 32 / 69

Page 63: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule

A, s ⊧ φ

Inductivement sur la structure de la formule :

▸ A, s /⊧ 0 et A, s ⊧ 1

▸ Si φ ∈ PAV alors A, s ⊧ φ ssi φ ∈ ρ(s)▸ A, s ⊧ φ ∨ ψ ssi A, s ⊧ φ ou A, s ⊧ ψ▸ A, s ⊧ φ ∧ ψ ssi A, s ⊧ φ et A, s ⊧ ψ▸ A, s ⊧ ¬φ ssi A, s /⊧ φ

φ est une tautologie si c’est une formule valide sur tous les etats

φ est une contradiction si c’est une formule qui n’est valide suraucun etat

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 32 / 69

Page 64: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Logique temporelle lineaire

Mais avant... petite paranthesesur les ω−mots

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 33 / 69

Page 65: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

(ω −mots

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 34 / 69

Page 66: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Expressions regulieres

Pour un alphabet Σ,

▸ Si a ∈ Σ alors a est une expression reguliere▸ Si e1 et e2 sont deux expressions regulieres

▸ e1.e2 est une expression reguliere▸ e1 + e2 est une expression reguliere

▸ Si e est une expression reguliere alors e∗ est une expressionreguliere

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 35 / 69

Page 67: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Expressions regulieres

Exemple

Soit Σ = {a,b, c} alors l’expression reguliere

(ab∗ + c)∗

denote la concatenation de sequences de lettres de la forme

▸ c ou

▸ a suivi d’un nombre nul ou fini de b

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 36 / 69

Page 68: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Les expressions ω−regulieres

DefinitionLes expressions ω−regulieres sont definies inductivement a partirdes regles suivantes :

▸ Si e1, e2 sont des expressions regulieres (denotant E1, E2)alors e1.e

ω2 est une expression ω−reguliere (eω2 est une chaıne

infinie composee de mots de E2)

▸ Si e1, e2 sont des expressions ω−regulieres alors e1 + eω2 estune expression ω−reguliere

▸ Σ est un ensemble d’actions

TheoremeUne expression est ω−reguliere ssi elle est de la forme ⋃n

i=1(ei fωi )

ou ei et fi sont des expressions regulieres

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 37 / 69

Page 69: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Les expressions ω−regulieres

DefinitionLes expressions ω−regulieres sont definies inductivement a partirdes regles suivantes :

▸ Si e1, e2 sont des expressions regulieres (denotant E1, E2)alors e1.e

ω2 est une expression ω−reguliere (eω2 est une chaıne

infinie composee de mots de E2)

▸ Si e1, e2 sont des expressions ω−regulieres alors e1 + eω2 estune expression ω−reguliere

▸ Σ est un ensemble d’actions

TheoremeUne expression est ω−reguliere ssi elle est de la forme ⋃n

i=1(ei fωi )

ou ei et fi sont des expressions regulieres

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 37 / 69

Page 70: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Expressions ω−regulieres

Exemple

Soit Σ = {a,b, c} alors l’expression ω−reguliere

(c∗ac∗b)cω ∪ (c∗ac∗b)ω

denote l’ensemble des mots infinis pour lesquels

▸ toute occurence de a doit etre suivie de c∗b et

▸ toute occurence de b doit etre precedee de ac∗

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 38 / 69

Page 71: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Le lien avec les systemes de transitions ?

1 2

3

4

Execution infinie se presente par l’expression suivante : 1(234)ω

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 39 / 69

Page 72: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Le lien avec les systemes de transitions ?

1 2

3

4

Execution infinie se presente par l’expression suivante : 1(234)ω

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 39 / 69

Page 73: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Ca, c’est fait...

)ω −mots

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 40 / 69

Page 74: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Donc... la logique temporelle lineaire

SyntaxeL1 est le plus petit ensemble de formules temporelles lineaires telque

▸ 0,1 ∈ L1

▸ PAV ⊆ L1

▸ Si φ,ψ ∈ L1 alors φ ∧ ψ ∈ L1 et φ ∨ ψ ∈ L1

▸ Si φ ∈ L1 alors ¬φ ∈ L1

▸ Si φ,ψ ∈ L1 alors φ ∧ ψ ∈ L1 et φUψ ∈ L1

▸ Si φ ∈ L1 alors Nφ ∈ L1

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 41 / 69

Page 75: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Donc... la logique temporelle lineaire

SyntaxeL1 est le plus petit ensemble de formules temporelles lineaires telque

▸ 0,1 ∈ L1

▸ PAV ⊆ L1

▸ Si φ,ψ ∈ L1 alors φ ∧ ψ ∈ L1 et φ ∨ ψ ∈ L1

▸ Si φ ∈ L1 alors ¬φ ∈ L1

▸ Si φ,ψ ∈ L1 alors φ ∧ ψ ∈ L1 et φUψ ∈ L1

▸ Si φ ∈ L1 alors Nφ ∈ L1

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 41 / 69

Page 76: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Donc... la logique temporelle lineaire

SyntaxeL1 est le plus petit ensemble de formules temporelles lineaires telque

▸ 0,1 ∈ L1

▸ PAV ⊆ L1

▸ Si φ,ψ ∈ L1 alors φ ∧ ψ ∈ L1 et φ ∨ ψ ∈ L1

▸ Si φ ∈ L1 alors ¬φ ∈ L1

▸ Si φ,ψ ∈ L1 alors φ ∧ ψ ∈ L1 et φUψ ∈ L1

▸ Si φ ∈ L1 alors Nφ ∈ L1

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 41 / 69

Page 77: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule de L1

A, c ⊧ φou c = t1t2 . . .

Inductivement sur la structure de la formule :

▸ A, c /⊧ 0 et A, c ⊧ 1

▸ Si φ ∈ PAV alors A, c ⊧ φ ssi φ ∈ ρ(t1)▸ A, c ⊧ φ ∨ ψ ssi A, c ⊧ φ ou A, c ⊧ ψ▸ A, c ⊧ φ ∧ ψ ssi A, c ⊧ φ et A, c ⊧ ψ▸ A, c ⊧ ¬φ ssi A, c /⊧ φ▸ A, c ⊧ Nφ ssi c = t.c ′ et A, c ′ ⊧ φ▸ A, c ⊧ φUψ ssi

▸ c = t1 . . . tnc ′ avec A, c ′ ⊧ ψ et ∀i ∈ {1 . . .n}, A, ti . . . tnc ′ ⊧ φou

▸ A, c ⊧ ψ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 42 / 69

Page 78: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule de L1

A, c ⊧ φou c = t1t2 . . .

Inductivement sur la structure de la formule :

▸ A, c /⊧ 0 et A, c ⊧ 1

▸ Si φ ∈ PAV alors A, c ⊧ φ ssi φ ∈ ρ(t1)▸ A, c ⊧ φ ∨ ψ ssi A, c ⊧ φ ou A, c ⊧ ψ▸ A, c ⊧ φ ∧ ψ ssi A, c ⊧ φ et A, c ⊧ ψ▸ A, c ⊧ ¬φ ssi A, c /⊧ φ▸ A, c ⊧ Nφ ssi c = t.c ′ et A, c ′ ⊧ φ▸ A, c ⊧ φUψ ssi

▸ c = t1 . . . tnc ′ avec A, c ′ ⊧ ψ et ∀i ∈ {1 . . .n}, A, ti . . . tnc ′ ⊧ φou

▸ A, c ⊧ ψ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 42 / 69

Page 79: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule de L1

A, c ⊧ φou c = t1t2 . . .

Inductivement sur la structure de la formule :

▸ A, c /⊧ 0 et A, c ⊧ 1

▸ Si φ ∈ PAV alors A, c ⊧ φ ssi φ ∈ ρ(t1)▸ A, c ⊧ φ ∨ ψ ssi A, c ⊧ φ ou A, c ⊧ ψ▸ A, c ⊧ φ ∧ ψ ssi A, c ⊧ φ et A, c ⊧ ψ▸ A, c ⊧ ¬φ ssi A, c /⊧ φ▸ A, c ⊧ Nφ ssi c = t.c ′ et A, c ′ ⊧ φ▸ A, c ⊧ φUψ ssi

▸ c = t1 . . . tnc ′ avec A, c ′ ⊧ ψ et ∀i ∈ {1 . . .n}, A, ti . . . tnc ′ ⊧ φou

▸ A, c ⊧ ψ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 42 / 69

Page 80: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule de L1

A, c ⊧ φou c = t1t2 . . .

Inductivement sur la structure de la formule :

▸ A, c /⊧ 0 et A, c ⊧ 1

▸ Si φ ∈ PAV alors A, c ⊧ φ ssi φ ∈ ρ(t1)

▸ A, c ⊧ φ ∨ ψ ssi A, c ⊧ φ ou A, c ⊧ ψ▸ A, c ⊧ φ ∧ ψ ssi A, c ⊧ φ et A, c ⊧ ψ▸ A, c ⊧ ¬φ ssi A, c /⊧ φ▸ A, c ⊧ Nφ ssi c = t.c ′ et A, c ′ ⊧ φ▸ A, c ⊧ φUψ ssi

▸ c = t1 . . . tnc ′ avec A, c ′ ⊧ ψ et ∀i ∈ {1 . . .n}, A, ti . . . tnc ′ ⊧ φou

▸ A, c ⊧ ψ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 42 / 69

Page 81: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule de L1

A, c ⊧ φou c = t1t2 . . .

Inductivement sur la structure de la formule :

▸ A, c /⊧ 0 et A, c ⊧ 1

▸ Si φ ∈ PAV alors A, c ⊧ φ ssi φ ∈ ρ(t1)▸ A, c ⊧ φ ∨ ψ ssi A, c ⊧ φ ou A, c ⊧ ψ

▸ A, c ⊧ φ ∧ ψ ssi A, c ⊧ φ et A, c ⊧ ψ▸ A, c ⊧ ¬φ ssi A, c /⊧ φ▸ A, c ⊧ Nφ ssi c = t.c ′ et A, c ′ ⊧ φ▸ A, c ⊧ φUψ ssi

▸ c = t1 . . . tnc ′ avec A, c ′ ⊧ ψ et ∀i ∈ {1 . . .n}, A, ti . . . tnc ′ ⊧ φou

▸ A, c ⊧ ψ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 42 / 69

Page 82: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule de L1

A, c ⊧ φou c = t1t2 . . .

Inductivement sur la structure de la formule :

▸ A, c /⊧ 0 et A, c ⊧ 1

▸ Si φ ∈ PAV alors A, c ⊧ φ ssi φ ∈ ρ(t1)▸ A, c ⊧ φ ∨ ψ ssi A, c ⊧ φ ou A, c ⊧ ψ▸ A, c ⊧ φ ∧ ψ ssi A, c ⊧ φ et A, c ⊧ ψ

▸ A, c ⊧ ¬φ ssi A, c /⊧ φ▸ A, c ⊧ Nφ ssi c = t.c ′ et A, c ′ ⊧ φ▸ A, c ⊧ φUψ ssi

▸ c = t1 . . . tnc ′ avec A, c ′ ⊧ ψ et ∀i ∈ {1 . . .n}, A, ti . . . tnc ′ ⊧ φou

▸ A, c ⊧ ψ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 42 / 69

Page 83: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule de L1

A, c ⊧ φou c = t1t2 . . .

Inductivement sur la structure de la formule :

▸ A, c /⊧ 0 et A, c ⊧ 1

▸ Si φ ∈ PAV alors A, c ⊧ φ ssi φ ∈ ρ(t1)▸ A, c ⊧ φ ∨ ψ ssi A, c ⊧ φ ou A, c ⊧ ψ▸ A, c ⊧ φ ∧ ψ ssi A, c ⊧ φ et A, c ⊧ ψ▸ A, c ⊧ ¬φ ssi A, c /⊧ φ

▸ A, c ⊧ Nφ ssi c = t.c ′ et A, c ′ ⊧ φ▸ A, c ⊧ φUψ ssi

▸ c = t1 . . . tnc ′ avec A, c ′ ⊧ ψ et ∀i ∈ {1 . . .n}, A, ti . . . tnc ′ ⊧ φou

▸ A, c ⊧ ψ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 42 / 69

Page 84: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule de L1

A, c ⊧ φou c = t1t2 . . .

Inductivement sur la structure de la formule :

▸ A, c /⊧ 0 et A, c ⊧ 1

▸ Si φ ∈ PAV alors A, c ⊧ φ ssi φ ∈ ρ(t1)▸ A, c ⊧ φ ∨ ψ ssi A, c ⊧ φ ou A, c ⊧ ψ▸ A, c ⊧ φ ∧ ψ ssi A, c ⊧ φ et A, c ⊧ ψ▸ A, c ⊧ ¬φ ssi A, c /⊧ φ▸ A, c ⊧ Nφ ssi c = t.c ′ et A, c ′ ⊧ φ

▸ A, c ⊧ φUψ ssi▸ c = t1 . . . tnc ′ avec A, c ′ ⊧ ψ et ∀i ∈ {1 . . .n}, A, ti . . . tnc ′ ⊧ φ

ou▸ A, c ⊧ ψ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 42 / 69

Page 85: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Satisfaction d’une formule de L1

A, c ⊧ φou c = t1t2 . . .

Inductivement sur la structure de la formule :

▸ A, c /⊧ 0 et A, c ⊧ 1

▸ Si φ ∈ PAV alors A, c ⊧ φ ssi φ ∈ ρ(t1)▸ A, c ⊧ φ ∨ ψ ssi A, c ⊧ φ ou A, c ⊧ ψ▸ A, c ⊧ φ ∧ ψ ssi A, c ⊧ φ et A, c ⊧ ψ▸ A, c ⊧ ¬φ ssi A, c /⊧ φ▸ A, c ⊧ Nφ ssi c = t.c ′ et A, c ′ ⊧ φ▸ A, c ⊧ φUψ ssi

▸ c = t1 . . . tnc ′ avec A, c ′ ⊧ ψ et ∀i ∈ {1 . . .n}, A, ti . . . tnc ′ ⊧ φou

▸ A, c ⊧ ψYohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 42 / 69

Page 86: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petit exemple

1 2

3

4

avec ρ(1) = {p,q, t}, ρ(2) = {p,q, r}, ρ(3) = {p, s} etρ(4) = {p, r}

▸ A,1(234)ω?⊧ p ∧ ¬r

▸ A,1(234)ω?⊧ r ⇒ s

▸ A,1(234)ω?⊧ N(p ⇔ s)

▸ A,1(234)ω?⊧ NNs

▸ A,1(234)ω?⊧ qUs

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 43 / 69

Page 87: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Operateurs de temps ◻ et ◇

▸ ◇φ Def= 1Uφ

▸ ◻φ Def= ¬◇¬φ

D’un point de vue semantique

1. A, c ⊧◇φ ssi il existe un suffixe c ′ de c tel que A, c ′ ⊧ φ2. A, c ⊧ ◻φ ssi pour tout suffixe c ′ de c , A, c ′ ⊧ φ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 44 / 69

Page 88: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Operateurs de temps ◻ et ◇

▸ ◇φ Def= 1Uφ

▸ ◻φ Def= ¬◇¬φD’un point de vue semantique

1. A, c ⊧◇φ ssi il existe un suffixe c ′ de c tel que A, c ′ ⊧ φ2. A, c ⊧ ◻φ ssi pour tout suffixe c ′ de c , A, c ′ ⊧ φ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 44 / 69

Page 89: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Proprietes temporelles utiles

Soit c un chemin infini de A, A, c ⊧ ◻◇ φ ssi il existe une infinitede suffixes c2 tels que

A, c2 ⊧ φ

Soit c un chemin infini de A, A, c ⊧◇◻¬φ ssi il existe un nombrefini de suffixes c ′ tels que

A, c ′ ⊧ φ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 45 / 69

Page 90: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Petit exemple

1 2

3

4

avec ρ(1) = {p,q, t}, ρ(2) = {p,q, r}, ρ(3) = {p, s} etρ(4) = {p, r}

▸ A,1(234)ω?⊧ ◻◇ r

▸ A,1(234)ω?⊧ ◻◇ (qUs)

▸ A,1(234)ω?⊧◇◻¬t

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 46 / 69

Page 91: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Model-checking

DefinitionSoit A = ⟨S ,S0,T , ρ⟩, un automate et φ, une formule de L1 alors :

1. φ est realisable d’un etat s si pour tout chemin de A s.c issude s on a A, s.c ⊧ φ. On note alors A, s ⊧ φ

2. φ est realisable si elle est realisable de tout etat s ∈ S0. Onnote alors A ⊧ φ

3. φ est valide si tout automate est un de modele de φ. On notealors ⊧ φ

Model-checking : etant donne un automate A et une proprietespecifiee par une formule φ, on verifie :

A ⊧ φ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 47 / 69

Page 92: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Quelques petits exercices

ExerciceL’automate ci-dessous modelise un feux de circulation avec commefonction d’interpretation : ρ(s1) = v,ρ(s2) = o,ρ(s3) = r etρ(s4) = i .

s1

s3

s2 s4

1. A, s1?⊧ NN(o)

2. A, (s1s3s2)∗(s4s2)ω?⊧ (¬i)Ui

3. A, (s1s3s2)∗(s4s2)ω?⊧◇◻¬r

4. A, s4?⊧ (¬i)Ui

5. A, s4?⊧ iU(¬i)

6. A?⊧◇o

7. A, (s1s3s2)ω?⊧ ◻¬i

8. A?⊧ ◻◇ o

9. A, s1?⊧ (¬i)Ui

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 48 / 69

Page 93: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Encore un petit pour la route

Exercice

▸ Canal unidirectionnel parfait entre un emetteur S et unrecepteur R

▸ S et R sont munis d’un tampon de capacite infinie parfaitS .out et R.in

▸ Un message m envoye par S est insere dans S .out, puisachemine par le canal et enfin present dans R.in

▸ M est un ensemble de messages fini

▸ PAV = {m ∈ S .out ∶ m ∈ M} ∪ {m ∈ R.in ∶ m ∈ M}

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 49 / 69

Page 94: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Encore un petit pour la route

PAV = {m ∈ S .out ∶ m ∈ M} ∪ {m ∈ R.in ∶ m ∈ M}Exprimer par des formules de L1 etendu les proprietes suivantes :

1. Un message ne peut pas etre dans les deux tampons en memetemps

2. Le canal ne perd pas de message

3. Le canal preserve a la sortie l’ordre d’entree des messages

4. Le canal ne genere pas spontanement de messages

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 50 / 69

Page 95: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Outline

1 Introduction

2 Quelques petits exemples

3 Systemes de transitions

4 Logiques des systemes concurrents

5 Model-Checking LTL

6 End of story. . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 51 / 69

Page 96: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Les automates de Buchi

Structure reconnaissant des ω−mots

DefinitionUn automate de Buchi est un quintuplet B = ⟨S ,T ,S0,F ,Σ⟩ ou

▸ S est un ensemble d’etats

▸ S0 ⊆ S est l’ensemble des etats initiaux

▸ T ⊆ S ×Σ × S est l’ensemble des transitions

▸ F ⊆ S est l’ensemble des etats finaux

▸ Σ est un alphabet

Critere d’acceptation de BuchiUn ω−mot sur Σ est reconnaissable par B si la chaıne des etatsvisites par l’automate passe infiniment souvent par des etats de F

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 52 / 69

Page 97: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Les automates de Buchi

Structure reconnaissant des ω−mots

DefinitionUn automate de Buchi est un quintuplet B = ⟨S ,T ,S0,F ,Σ⟩ ou

▸ S est un ensemble d’etats

▸ S0 ⊆ S est l’ensemble des etats initiaux

▸ T ⊆ S ×Σ × S est l’ensemble des transitions

▸ F ⊆ S est l’ensemble des etats finaux

▸ Σ est un alphabet

Critere d’acceptation de BuchiUn ω−mot sur Σ est reconnaissable par B si la chaıne des etatsvisites par l’automate passe infiniment souvent par des etats de F

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 52 / 69

Page 98: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Automate de Buchi

0

a

1ba

b

L’ensemble des ω−mots reconnaissable par l’automate est

(a∗bb ∗ a)ω + (a∗bb ∗ a)∗a∗b(b)ω

TheoremeUn ω−langage est reconnaissable par un automate de Buchi ssi ilest ω−regulier

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 53 / 69

Page 99: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Automate de Buchi

0

a

1ba

b

L’ensemble des ω−mots reconnaissable par l’automate est

(a∗bb ∗ a)ω + (a∗bb ∗ a)∗a∗b(b)ω

TheoremeUn ω−langage est reconnaissable par un automate de Buchi ssi ilest ω−regulier

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 53 / 69

Page 100: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Automate de Buchi

Le vide est decidable pour les automates de Buchi

Algorithme de Tarjan-Paige

▸ Enumeration des composantes fortement connexesatteignables a partir de S0

▸ Langage est vide si toutes les CFC ne passent pas par un etatfinal

Model-checking se reduit au probleme du vide

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 54 / 69

Page 101: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Automate de Buchi

Le vide est decidable pour les automates de Buchi

Algorithme de Tarjan-Paige

▸ Enumeration des composantes fortement connexesatteignables a partir de S0

▸ Langage est vide si toutes les CFC ne passent pas par un etatfinal

Model-checking se reduit au probleme du vide

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 54 / 69

Page 102: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Automate de Buchi

Le vide est decidable pour les automates de Buchi

Algorithme de Tarjan-Paige

▸ Enumeration des composantes fortement connexesatteignables a partir de S0

▸ Langage est vide si toutes les CFC ne passent pas par un etatfinal

Model-checking se reduit au probleme du vide

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 54 / 69

Page 103: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Transformation d’un systeme en automate de Buchi

Avec PAV = {p,q, r , s, t}, on peut construire 25 valuationspossibles representables par 25 vecteurs de dimension 5

Exemple

▸ ⟨0,0,1,0,1⟩ represente {r , t}▸ ⟨1,1,1,0,0⟩ represente {p,q, r}▸ ⟨0,0,0,0,0⟩ represente ∅

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 55 / 69

Page 104: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Transformation d’un systeme en automate de Buchi

1 2

3

4

avec ρ(1) = {p,q, t}, ρ(2) = {p,q, r}, ρ(3) = {p, s} etρ(4) = {p, r}En considerant les vecteurs ⟨p,q, r , s, t⟩, le chemin 1(234)ω et lespropositions mises en jeu peuvent etre representees par

1 2<1,1,0,0,1>

3<1,1,1,0,0>

4

<1,0,0,1,0>

<1,0,1,0,0>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 56 / 69

Page 105: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Lien entre logique temporelle lineaire / automates de Buchi

Theoreme(Wolper-Vardi,Sistla, 1983) Etant donne une formule φ de la LTL,on peut construire un automate de Buchi Aφ = ⟨S ,T ,S0,F ,Σ⟩avec Σ = 2PA et ∣S ∣ ≤ 2O(∣φ∣) tel que L(A) est exactementl’ensemble des modeles de φ

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 57 / 69

Page 106: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

p1 ⇒ p2

1 2<0,0>,<0,1>,<1,1>

<0,0>,<0,1>,<1,0>,<1,1>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 58 / 69

Page 107: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

p1 ⇒ p2

1 2<0,0>,<0,1>,<1,1>

<0,0>,<0,1>,<1,0>,<1,1>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 58 / 69

Page 108: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Np1

1 2<0,0>,<0,1>,<1,0>,<1,1>

3<1,0>,<1,1>

<0,0>,<0,1>,<1,0>,<1,1>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 59 / 69

Page 109: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Np1

1 2<0,0>,<0,1>,<1,0>,<1,1>

3<1,0>,<1,1>

<0,0>,<0,1>,<1,0>,<1,1>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 59 / 69

Page 110: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

p1Up2

1

<1,0>

2<0,1>,<1,1>

<0,0>,<0,1>,<1,0>,<1,1>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 60 / 69

Page 111: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

p1Up2

1

<1,0>

2<0,1>,<1,1>

<0,0>,<0,1>,<1,0>,<1,1>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 60 / 69

Page 112: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

◻(p1 ⇒ Np2)

1

<0,0>,<0,1>

2<1,0>,<1,1>

<0,1>

<1,1>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 61 / 69

Page 113: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

◻(p1 ⇒ Np2)

1

<0,0>,<0,1>

2<1,0>,<1,1>

<0,1>

<1,1>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 61 / 69

Page 114: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Model-Checking LTL

A ⊧ φ revient a

L(A) ⊆ L(Bφ) ≡ L(A) ∩ (L(Bφ))c ≡L(A) ∩L(B¬φ) = ∅

▸ Calcul de l’intersection plus simple que l’inclusion

▸ Calcul du complement est difficile

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 62 / 69

Page 115: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Model-Checking LTL

A ⊧ φ revient a

L(A) ⊆ L(Bφ) ≡ L(A) ∩ (L(Bφ))c ≡L(A) ∩L(B¬φ) = ∅

▸ Calcul de l’intersection plus simple que l’inclusion

▸ Calcul du complement est difficile

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 62 / 69

Page 116: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Model-Checking LTL

A ⊧ φ revient a

L(A) ⊆ L(Bφ) ≡ L(A) ∩ (L(Bφ))c ≡L(A) ∩L(B¬φ) = ∅

▸ Calcul de l’intersection plus simple que l’inclusion

▸ Calcul du complement est difficile

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 62 / 69

Page 117: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Model-Checking LTL

A ⊧ φ revient a

L(A) ⊆ L(Bφ) ≡ L(A) ∩ (L(Bφ))c ≡L(A) ∩L(B¬φ) = ∅

▸ Calcul de l’intersection plus simple que l’inclusion

▸ Calcul du complement est difficile

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 62 / 69

Page 118: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Exemple

φ = ◻(p1 ⇒ N ◇ p2)

Exprimer ¬φ

¬φ =◇(p1 ∧N ◻ ¬p2)

Exprimer cette formule sous forme d’automate

1

<0,0>,<0,1>,<1,0>,<1,1>

2<1,0>,<1,1>

<1,0>,<0,0>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 63 / 69

Page 119: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Exemple

φ = ◻(p1 ⇒ N ◇ p2)

Exprimer ¬φ¬φ =◇(p1 ∧N ◻ ¬p2)

Exprimer cette formule sous forme d’automate

1

<0,0>,<0,1>,<1,0>,<1,1>

2<1,0>,<1,1>

<1,0>,<0,0>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 63 / 69

Page 120: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Exemple

φ = ◻(p1 ⇒ N ◇ p2)

Exprimer ¬φ¬φ =◇(p1 ∧N ◻ ¬p2)

Exprimer cette formule sous forme d’automate

1

<0,0>,<0,1>,<1,0>,<1,1>

2<1,0>,<1,1>

<1,0>,<0,0>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 63 / 69

Page 121: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Exemple

φ = ◻(p1 ⇒ N ◇ p2)

Exprimer ¬φ¬φ =◇(p1 ∧N ◻ ¬p2)

Exprimer cette formule sous forme d’automate

1

<0,0>,<0,1>,<1,0>,<1,1>

2<1,0>,<1,1>

<1,0>,<0,0>

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 63 / 69

Page 122: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Intersection automates

DefinitionSoit A = ⟨S1,S01,T1,F1,Σ⟩ et B¬φ = ⟨S2,S02,T2,F2,Σ⟩ alorsL(A) ∩L(B¬φ) est l’ensemble des ω−mots reconnaissables parl’automate de Buchi A⊗ B¬φ = ⟨S ,S0,T ,F ,Σ⟩ ou

▸ S = S1 × S2

▸ S0 = S01 × S02

▸ T est la synchronisation de T1 et T2 sur les actions identiques

▸ F = F1 × F2

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 64 / 69

Page 123: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Verification de φ par Model-Checking

Soit le systeme specifie par l’automate A suivant

1 4<0,0>

2<1,1>

3

<0,0>

<0,0><0,0>

Pour rappel, B¬(◻(p1⇒N◇p2))est l’automate suivant

1

<0,0>,<0,1>,<1,0>,<1,1>

2<1,0>,<1,1>

<1,0>,<0,0>

Calculer le produit synchronise A∣∣SyncB¬(◻(p1⇒N◇p2))

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 65 / 69

Page 124: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Resultat du produit

1

4

<0,0>

2<1,1> 5

<1,1>

3

<0,0>

<0,0>

<0,0>

6<0,0>

7

<0,0><0,0>

8

<0,0>

L(A) ∩L(B¬φ) /= ∅

Par consequent,

A /⊧ ◻(p1 ⇒ N ◇ p2)

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 66 / 69

Page 125: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Resultat du produit

1

4

<0,0>

2<1,1> 5

<1,1>

3

<0,0>

<0,0>

<0,0>

6<0,0>

7

<0,0><0,0>

8

<0,0>

L(A) ∩L(B¬φ) /= ∅

Par consequent,

A /⊧ ◻(p1 ⇒ N ◇ p2)

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 66 / 69

Page 126: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Resultat du produit

1

4

<0,0>

2<1,1> 5

<1,1>

3

<0,0>

<0,0>

<0,0>

6<0,0>

7

<0,0><0,0>

8

<0,0>

L(A) ∩L(B¬φ) /= ∅

Par consequent,

A /⊧ ◻(p1 ⇒ N ◇ p2)

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 66 / 69

Page 127: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Outline

1 Introduction

2 Quelques petits exemples

3 Systemes de transitions

4 Logiques des systemes concurrents

5 Model-Checking LTL

6 End of story. . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 67 / 69

Page 128: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et alors ?

▸ C’est bien beau de specifier des systemes de transitions pardes automates. . .

▸ Definition de langages de haut-niveau : Promela, CASPER, . . .

▸ Y a t’il des outils automatiques performants ?

Of course thereare

▸ SPIN▸ FDR▸ CADP▸ . . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 68 / 69

Page 129: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et alors ?

▸ C’est bien beau de specifier des systemes de transitions pardes automates. . .

▸ Definition de langages de haut-niveau : Promela, CASPER, . . .

▸ Y a t’il des outils automatiques performants ?

Of course thereare

▸ SPIN▸ FDR▸ CADP▸ . . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 68 / 69

Page 130: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et alors ?

▸ C’est bien beau de specifier des systemes de transitions pardes automates. . .

▸ Definition de langages de haut-niveau : Promela, CASPER, . . .

▸ Y a t’il des outils automatiques performants ?

Of course thereare

▸ SPIN▸ FDR▸ CADP▸ . . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 68 / 69

Page 131: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et alors ?

▸ C’est bien beau de specifier des systemes de transitions pardes automates. . .

▸ Definition de langages de haut-niveau : Promela, CASPER, . . .

▸ Y a t’il des outils automatiques performants ? Of course thereare

▸ SPIN▸ FDR▸ CADP▸ . . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 68 / 69

Page 132: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et alors ?

▸ C’est bien beau de specifier des systemes de transitions pardes automates. . .

▸ Definition de langages de haut-niveau : Promela, CASPER, . . .

▸ Y a t’il des outils automatiques performants ? Of course thereare

▸ SPIN

▸ FDR▸ CADP▸ . . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 68 / 69

Page 133: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et alors ?

▸ C’est bien beau de specifier des systemes de transitions pardes automates. . .

▸ Definition de langages de haut-niveau : Promela, CASPER, . . .

▸ Y a t’il des outils automatiques performants ? Of course thereare

▸ SPIN▸ FDR

▸ CADP▸ . . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 68 / 69

Page 134: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et alors ?

▸ C’est bien beau de specifier des systemes de transitions pardes automates. . .

▸ Definition de langages de haut-niveau : Promela, CASPER, . . .

▸ Y a t’il des outils automatiques performants ? Of course thereare

▸ SPIN▸ FDR▸ CADP

▸ . . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 68 / 69

Page 135: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Et alors ?

▸ C’est bien beau de specifier des systemes de transitions pardes automates. . .

▸ Definition de langages de haut-niveau : Promela, CASPER, . . .

▸ Y a t’il des outils automatiques performants ? Of course thereare

▸ SPIN▸ FDR▸ CADP▸ . . .

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 68 / 69

Page 136: Mod elisation et v eri cation...L Industrie des technologies de plus en plus tourn ees vers outils de sp eci cation et v eri cation (Siemens, Thomson, Intel, ...) L Besoin de comp

Architecture de SPIN

Yohan Boichut Modelisation et verification Cours Master IRAD – Semestre 3 69 / 69