Safety Contracts for Timed Reactive Components
Iulia Dragomir, Iulian Ober and Christian Percebois
IRIT - University of Toulouse
March 21, 2013
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 1 / 38
Safety Contracts for Timed Reactive Components Iulia Dragomir , - - PowerPoint PPT Presentation
Safety Contracts for Timed Reactive Components Iulia Dragomir , Iulian Ober and Christian Percebois IRIT - University of Toulouse March 21, 2013 Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 1 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 1 / 38
1 Motivation 2 Contract-based Reasoning 3 Component framework: Timed Input/Output Automata 4 A toy example 5 Contract framework for Timed Input/Output Automata 6 Applying contract-based reasoning on the toy example 7 Conclusions Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 2 / 38
1 Motivation Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 3 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 4 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 4 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 4 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 4 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 4 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 5 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 5 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 5 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 5 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 5 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 5 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 5 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 5 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 5 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 5 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 6 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 6 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 6 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 7 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 7 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 7 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 7 / 38
2 Contract-based Reasoning Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 8 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 9 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 9 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 9 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 9 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 9 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 9 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 9 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 10 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 10 / 38
1
2
3
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 10 / 38
3 Component framework: Timed Input/Output Automata Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 11 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 12 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 12 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 12 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 12 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 12 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 12 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 12 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 12 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 12 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 12 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 12 / 38
1 Existence of point trajectories: ∀x ∈ Q, γ(x) : [0, 0] → x ∈ T Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 13 / 38
1 Existence of point trajectories: ∀x ∈ Q, γ(x) : [0, 0] → x ∈ T 2 Prefix, suffix and concatenation closure of T Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 13 / 38
1 Existence of point trajectories: ∀x ∈ Q, γ(x) : [0, 0] → x ∈ T 2 Prefix, suffix and concatenation closure of T 3 Input actions enabling: ∀x ∈ Q, ∀a ∈ I, ∃x′ ∈ Q such that x ?a
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 13 / 38
1 Existence of point trajectories: ∀x ∈ Q, γ(x) : [0, 0] → x ∈ T 2 Prefix, suffix and concatenation closure of T 3 Input actions enabling: ∀x ∈ Q, ∀a ∈ I, ∃x′ ∈ Q such that x ?a
4 Time-passage enabling: ∀x ∈ Q, ∃τ ∈ T such that τ(0) = x and
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 13 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 14 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 15 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 15 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 15 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 15 / 38
4 A toy example Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 16 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 17 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 18 / 38
5 Contract framework for Timed Input/Output Automata Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 19 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 20 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 20 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 20 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 20 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 21 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 21 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 21 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 22 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 22 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 22 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 22 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 23 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 23 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 24 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 24 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 24 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 24 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 24 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 24 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 24 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 25 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 25 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 25 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 26 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 26 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 27 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 28 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 28 / 38
6 Applying contract-based reasoning on the toy example Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 29 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 30 / 38
1 K1 |
2 K2 |
3 K3 |
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 30 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 31 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 31 / 38
1 tracesA, tracesA1, tracesA2, tracesA3 are closed under limits and under
2 tracesG, tracesG1, tracesG2, tracesG3 are closed under limits and under
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 31 / 38
1 tracesA, tracesA1, tracesA2, tracesA3 are closed under limits and under
2 tracesG, tracesG1, tracesG2, tracesG3 are closed under limits and under
3 G1 G2 ⊑A G
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 31 / 38
1 tracesA, tracesA1, tracesA2, tracesA3 are closed under limits and under
2 tracesG, tracesG1, tracesG2, tracesG3 are closed under limits and under
3 G1 G2 ⊑A G 4 A G2 ⊑G1 A1 5 A G1 ⊑G2 A2 6 A G1 G2 ⊑G3 A3 Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 31 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 32 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 32 / 38
7 Conclusions Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 33 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 34 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 34 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 34 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 34 / 38
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 35 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 36 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 36 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 36 / 38
Safety Contracts for Timed Reactive Components March 21, 2013 36 / 38
1 How to build contracts? Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 37 / 38
1 How to build contracts?
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 37 / 38
1 How to build contracts?
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 37 / 38
1 How to build contracts?
2 Automation and integration within a development process Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 37 / 38
1
2
Iulia Dragomir (IRIT) Safety Contracts for Timed Reactive Components March 21, 2013 38 / 38