sat based abstraction refinement for real time systems
play

SAT-based Abstraction Refinement for Real-time Systems Stephanie - PowerPoint PPT Presentation

SAT-based Abstraction Refinement for Real-time Systems Stephanie Kemper 1 e Platzer 2 , 3 Andr 1 Centrum voor Wiskunde en Informatica, Software Engineering, Amsterdam, The Netherlands 2 University of Oldenburg, Department of Computing Science,


  1. SAT-based Abstraction Refinement for Real-time Systems Stephanie Kemper 1 e Platzer 2 , 3 Andr´ 1 Centrum voor Wiskunde en Informatica, Software Engineering, Amsterdam, The Netherlands 2 University of Oldenburg, Department of Computing Science, Germany 3 Carnegie Mellon University, Pittsburgh, PA, USA Third International Workshop on Formal Aspects of Component Software (FACS’06) Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 1 / 18

  2. Motivation Failures in embedded systems: disastrous Safety critical systems must work correctly Single components, and their composition Responses in time Timed Systems: difficult to check (state explosion) Abstraction Refinement to cope with Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 2 / 18

  3. Overview TA Represent s reachable Abstract Refine FOCI Unfold[k] SAT–solver Concretise s not reachable in k steps Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 3 / 18

  4. Timed Automata TA Represent s reachable Abstract Refine FOCI Unfold[k] SAT–solver Concretise s not reachable in k steps Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 3 / 18

  5. Timed Automata Example (Intelligent Light Controller) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright x ≤ δ Semantics = All possible traces Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  6. Timed Automata Example (Intelligent Light Controller) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright x ≤ δ Semantics = All possible traces Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  7. Timed Automata Example (Intelligent Light Controller) � ( > 0) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright x ≤ δ Semantics = All possible traces Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  8. Timed Automata Example (Intelligent Light Controller) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright x ≤ δ Semantics = All possible traces Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  9. Timed Automata Example (Intelligent Light Controller) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright x ≤ δ Semantics = All possible traces Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  10. Timed Automata Example (Intelligent Light Controller) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright x ≤ δ Semantics = All possible traces Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  11. Timed Automata Example (Intelligent Light Controller) � ( > 0) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright x ≤ δ Semantics = All possible traces Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  12. Timed Automata Example (Intelligent Light Controller) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright x ≤ δ Semantics = All possible traces Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  13. Timed Automata Example (Intelligent Light Controller) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright x ≤ δ Semantics = All possible traces Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  14. Timed Automata Example (Intelligent Light Controller) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright x ≤ δ Semantics = All possible traces Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  15. Timed Automata Example (Intelligent Light Controller) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright � ( > 0) x ≤ δ Semantics = All possible traces Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  16. Timed Automata Example (Intelligent Light Controller) press , x := 0 light off press , x > 3 press press , x ≤ 3 τ, x = δ bright x ≤ δ Semantics = All possible traces details Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 4 / 18

  17. Timed Automata: Systems Synchronisation step (or zero delay) Internal step (or zero delay) Delay step a a s 1 s 2 s 3 s 4 τ s 5 s 6 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 5 / 18

  18. Timed Automata: Systems Synchronisation step (or zero delay) Internal step (or zero delay) Delay step a a s 1 s 2 s 3 s 4 τ s 5 s 6 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 5 / 18

  19. Timed Automata: Systems Synchronisation step (or zero delay) Internal step (or zero delay) Delay step a a s 1 s 2 s 3 s 4 � (= 0) τ s 5 s 6 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 5 / 18

  20. Timed Automata: Systems Synchronisation step (or zero delay) Internal step (or zero delay) Delay step a a s 1 s 2 s 3 s 4 τ s 5 s 6 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 5 / 18

  21. Timed Automata: Systems Synchronisation step (or zero delay) Internal step (or zero delay) Delay step � (= 0) � (= 0) a a s 1 s 2 s 3 s 4 τ s 5 s 6 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 5 / 18

  22. Timed Automata: Systems Synchronisation step (or zero delay) Internal step (or zero delay) Delay step a a s 1 s 2 s 3 s 4 τ s 5 s 6 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 5 / 18

  23. Timed Automata: Systems Synchronisation step (or zero delay) Internal step (or zero delay) Delay step � ( > 0) � ( > 0) a a s 1 s 2 s 3 s 4 � ( > 0) τ s 5 s 6 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 5 / 18

  24. Representation TA Represent s reachable Abstract Refine FOCI Unfold[k] SAT–solver Concretise s not reachable in k steps Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 5 / 18

  25. Representation: Basic Components TA formula state s s 0 , s 1 , s 2 , . . . : TA at s in step i clock x x 0 , x 1 , x 2 , . . . : Time where x was last reset value of clock x z t - x t Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 6 / 18

  26. Representation: Basic Components TA formula state s s 0 , s 1 , s 2 , . . . : TA at s in step i clock x x 0 , x 1 , x 2 , . . . : Time where x was last reset value of clock x z t - x t value z x z t - x t time why z t ? Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 6 / 18

  27. Representation: Transitions Action transition: s0 t ∧ s1 t + 1 ∧ a t ∧ ( z t − x t < 2) ∧ ( z t = z t + 1 ) a , x < 2 s 0 s 1 ∧ ( x t + 1 = x t ) ∧ ( y t + 1 = z t + 1 ) x < 1 y := 0 Delay transition: s0 t ∧ s0 t + 1 ∧ ( z t < z t + 1 ) ∧ ( x t = x t + 1 ) a , x < 2 s 0 s 1 ∧ ( y t = y t + 1 ) ∧ ¬ a t ∧ ¬ b t x < 1 y := 0 Transition choice: ( s0 t ∧ s1 t + 1 ∧ . . . ) ∨ a , x < 2 s 0 s 1 ( s0 t ∧ s0 t + 1 ∧ . . . ) x < 1 y := 0 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 7 / 18

  28. Representation: Automaton Transition choice: ( s0 t ∧ s1 t + 1 ∧ . . . ) ∨ a , x < 2 s 0 s 1 x < 1 ( s0 t ∧ s0 t + 1 ∧ . . . ) y := 0 Mutual exclusion: ¬ ( s0 t ∧ s1 t ) s0 t → ( z t − x t < 1) ¬ ( a t ∧ b t ) ∧ ¬ ( a t ∧ τ t ) ∧ ¬ ( b t ∧ τ t ) Initial constraints: s0 0 ∧ ( z 0 = 0) ∧ ( x 0 = 0) ∧ ( y 0 = 0) s 0 x < 1 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 8 / 18

  29. Representation: Automaton  Transition choice:   ( s0 t ∧ s1 t + 1 ∧ . . . ) ∨ a , x < 2  s 0   s 1  x < 1 ( s0 t ∧ s0 t + 1 ∧ . . . )  y := 0        Mutual exclusion:     ¬ ( s0 t ∧ s1 t )   ϕ ( A ) s0 t → ( z t − x t < 1)   ¬ ( a t ∧ b t ) ∧ ¬ ( a t ∧ τ t ) ∧ ¬ ( b t ∧ τ t )         Initial constraints:     s0 0 ∧ ( z 0 = 0) ∧ ( x 0 = 0) ∧ ( y 0 = 0)  s 0    x < 1   Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 8 / 18

  30. Representation: Parallel Systems ϕ ( A 1 � A 2 � . . . � A n ) = ϕ ( A 1 ) ∧ ϕ ( A 2 ) ∧ . . . ∧ ϕ ( A n ) ▽ ! Product automaton representation is linear! Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 9 / 18

  31. Unfolding TA Represent s reachable Abstract Refine FOCI Unfold[k] SAT–solver Concretise s not reachable in k steps Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 9 / 18

  32. Unfolding: Timed Automata ϕ ( A ) 0 / t ϕ ( A ) 1 / t ϕ ( A ) 2 / t ϕ ( A ) k / t ∧ s . . . ϕ ( A ) k Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 10 / 18

  33. Unfolding: Timed Automata ϕ ( A ) 0 / t ϕ ( A ) 1 / t ϕ ( A ) 2 / t ϕ ( A ) k / t ∧ s . . . Step 1 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 10 / 18

  34. Unfolding: Timed Automata ϕ ( A ) 0 / t ϕ ( A ) 1 / t ϕ ( A ) 2 / t ϕ ( A ) k / t ∧ s . . . Step 1 Step 2 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 10 / 18

  35. Unfolding: Timed Automata ϕ ( A ) 0 / t ϕ ( A ) 1 / t ϕ ( A ) 2 / t ϕ ( A ) k / t ∧ s . . . Step 1 Step 2 Step 3 Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 10 / 18

  36. Unfolding: Timed Automata ϕ ( A ) 0 / t ϕ ( A ) 1 / t ϕ ( A ) 2 / t ϕ ( A ) k / t ∧ s . . . Step 1 Step 2 Step 3 Step k Stephanie Kemper, Andr´ e Platzer SAAtRe FACS06 10 / 18

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend