1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3...

32
1 Computergestützte Verifikation 11.6.2002

Transcript of 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3...

Page 1: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

1

Computergestützte Verifikation

11.6.2002

Page 2: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

2

5. Real Time Systeme

5.1 Timed Automata

5.2 TCTL

5.3 Abstraktion durch Regionen

5.4 Abstraktion durch Zonen

Page 3: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

3

geometrische Veranschaulichung

0 c1

c2

c1>2

c2 – c1 0

c1 – c2 < 4

c2 > 1

c2 3

c1 4

Page 4: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

4

Clock Difference Diagrams

ci - cj

[0,3) [3,17] (17,)

-Nachbildung aller BDD-Operationen, plus-Projektion-Öffnung-Schnitt

aber: lange Zeit offen: Normalisierung(inzwischen wohl gelöst für DDD)

Page 5: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

5

Zusammenfassung RT-Systeme

Zwei Ansätze: Größe vs. Expressivität

bei gleicher Größe viel komplexer

kleine Erweiterungen der Syntax können fatale Folgenfür Entscheidbarkeit haben

Manchmal dienen Uhren nur für Fairness

Page 6: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

6

Tools

UPPAAL

basiert auf Zonen

explizit + symbolisch (CDD)

spezialisiert auf einfache Erreichbarkeitsaussagen

Eingabe: Komponenten als Timed Automata

www.uppaal.com

Page 7: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

7

Tools

KRONOS

TCTL-Model Checker

basiert auf Zonen und Abstraktionsverfeinerung

Eingabe: Komponenten als Timed Automata

www-verimag.imag.fr/TEMPORISE/kronos/index-english.html

Page 8: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

8

Tools

RED

“region encoding diagrams”

Regionen + BDD

homepage.iis.sinica.edu.tw/farn/public_html/red/

Page 9: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

9

6. Abstraktion

Page 10: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

10

Worum geht es?

Studieren Beziehungen zwischen 2 Systemen C und A,die Eigenschaften vererben

Wie kann man diese Beziehungen “herstellen”?

Hintergrund: Prozessalgebra

Page 11: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

11

Abstraktionsrelation

geg: 2 Systeme C und A

Verbindung wird über eine Relation hergestellt

rot

gelb

grün

Gas

Bremse

Page 12: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

12

Beispiele für Abstraktionsrelationen

Symmetrien

s [s]

Real-Time Regionen

[d,v] [d,R]

Real-Time Zonen

[d,v] [d,Z]

ist sogar Funktion, d.h. zus in C ex. genau ein s’ in Amit s s’

Page 13: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

13

Mengensichtweise

rot

gelbgrün

Gas Bremse

gelb

a {c | c a}

Page 14: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

14

Vererbung elementarer Eigenschaften

Welche Eigenschaften erfüllt ein abstrakter Zustand

a p höchstens dann, wenn für alle c a: c p

Gas ¬ “rot”Gas “grün” Gas ¬ “grün”

“beschriften” abstraktes Transitionssystem mit geltendenelementaren Eigenschaften; nicht notwendigerweiseabgeschlossen bzgl. Negation

Page 15: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

15

Abstraktion und Nachfolger

Vererbung elementarer Eigenschaften allein reicht nicht

“Ampel” G( ¬rot X X X ¬rot)“Ampel” G(¬rot X X ¬rot)

“Auto” G( ¬rot X X X ¬rot)“Auto” G(¬rot X X ¬rot)

Page 16: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

16

Simulation

ist Simulationsrelation, wenn für alle c,a,c’:

Wenn c a und c c’ in C, so ex. ein a’ mit c’ a’ und a a’ in A

C

A

Page 17: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

17

Simulation als Spiel

C und A sind Spieler, ziehen abwechselnd, C beginnt

C zieht (= Übergang in C).

A zieht (= Übergang in A).

A’s Ziel: Immer einen Zustand erreichen, der zum aktuellenC-Zustand in Relation steht

C’s Ziel: A in ausweglose Situation manövrieren

Simulation = (lokale) Gewinnstrategie für A

Page 18: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

18

Simulation

C simuliert A falls eine Simulationsrelation von C nach Abesteht.

= jedes Verhalten in C kann in A nachgebildet werden A hat ein “reicheres” Verhalten als C

gelb

grün

rot

Gas

Bremse

ist keine Simulationsrelation

grün Gasgelb Bremserot Gas

Page 19: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

19

Beispiel für Simulation

rot

gelb

grün

Gas

Bremse

Diesmal: Ampel simuliert Auto

Page 20: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

20

“simuliert” ist nicht symmetrisch

A

B1 B

CD

A

B

C D

C A

C simuliert A, aber A simuliert nicht C

2

Page 21: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

21

Simulation und Computation Tree

rot

gelb

grün

Gas

Bremse

Page 22: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

22

Bewahrung von ACTL*

Fazit: Berechnungsbaum von C findet sich “als Teilbaum”des Berechnungsbaums von A wieder

ACTL* quantifiziert nuruniversell über Pfade

Satz: Wenn C A simuliert, so gilt jede ACTL*-Eigenschaft von A auch in C

Page 23: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

23

Ein Transitionssystem simuliert seinensymmetrisch reduziertes System

s [s]

(Betrachten Eigenschaften, sie insensitiv sind bzgl. Symmetrie)

s s’

[s] [s’]

Jede ACTL*-Eigenschaft des symm. reduzierten Systems gilt auch im originalen System

Page 24: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

24

Ein Real-Time-Transitionssystem simuliert seinen Zonengraph

Annahme für Simulation: Selbstschleifen an jedem Zustanddes Zonengraphsspäter: Schleifen weglassen, weil kein X in TCTL

a) Zeitverlauf

b) diskreter Übergang

Page 25: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

25

Ein Transitionssystem simuliertjede Überapproximation

Sei [S,E,A] ein Transitionssystem

Wenn S S’ und E S’ , so ist [S’,E’,A] eineÜberapproximation von S

: Id

Wenn eine ACTL*-Eigenschaft in einer Überapproximation gilt, so auch im originalen System

Interessant für symbolische Verifikation

Page 26: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

26

Konstruktion von Abstraktionen

geg: Konkretes System C = [S,E], Menge A von abstrakten Zuständen, Relation vonC in Ages: E’, so daß Simulationsrelation zwischen C und A wird

Lösung: a a’ gdw. es gibt c,c’ mit c a und c’ a’ undc c’

“Existential Abstraction”

Page 27: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

27

Existential Abstraction vs Simulation

Wenn sich abstrakte Zustände überlappen können, fordertexistential abstraction mehr Ereignisse als die Def. von Simulation

Existential Abstraction: nach Def. Simulation reicht:

Page 28: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

28

Abstraktionsfunktionen

Wenn abstrakte Zustände zu disjunkten konkretenZustandsmengen korreliert sind (c a und c a’ a = a’)dann fallen Simulation und Existential Abstraction zusammen,d.h. die durch Existential Abstraction definierte Ereignismengeist die kleinste, die zu einer Simulationsrelation macht.

RegionenSymmetrie

Simulation: Wenn c a und c c’, so ex. a’ mit c’ a’ und a a’

Ex. Abstraction: Wenn c a und c c’ und c’ a’ , so a a’

Page 29: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

29

Existential Abstraction

Sehr praktikabel:

1. Wähle abstrakte Zustandsmenge (nach Kriterien wie z.B. Bewahrung elementarer Eigenschaften)

2. Ergänze kanonisch eine Übergangsrelation

rot

gelb

grün

Gas

Bremse

Page 30: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

30

Beispiele

1. Vorzeichenabstraktion

Nat {< 0 , 0 , > 0}

2. Logarithmische Abstraktion

Nat Nat; i lg i = log2(i+1)

3. Bit-Abstraktion

AND/OR/NOT

Reg

AND/OR/NOT

Reg

I O I O

Page 31: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

31

Übung 1

Geg: guarded command Programm:

init(x) = init(y) = 0

g1: x > 3 x := x – 2;g2: x = 0 y := y + 1;g3: true x := - y;g4: x < y y := y – x;

Ergänze abstrakte Zustandsmenge {x<0,x=0,x>0} x {y<0,y=0,y>0}zu einem abstrakten Transitionssystem, das vom konkreten System simuliert wird!

Page 32: 1 Computergestützte Verifikation 11.6.2002. 2 5. Real Time Systeme 5.1 Timed Automata 5.2 TCTL 5.3 Abstraktion durch Regionen 5.4 Abstraktion durch Zonen.

32

Übung 2

Bestimme eine Abstraktionsrelation derart, daß daslinke System das rechte System simuliert (Anfangszustand rot)!