efficient emptiness check for timed b uchi automata
play

Efficient Emptiness Check for Timed B uchi Automata F. Herbreteau, - PowerPoint PPT Presentation

Efficient Emptiness Check for Timed B uchi Automata F. Herbreteau, B. Srivathsan and I. Walukiewicz Universit e de Bordeaux, LaBRI - CNRS August 2010 Efficient Emptiness Check for Timed B uchi Automata - 1/24 Timed B uchi Automata


  1. Efficient Emptiness Check for Timed B¨ uchi Automata F. Herbreteau, B. Srivathsan and I. Walukiewicz Universit´ e de Bordeaux, LaBRI - CNRS August 2010 Efficient Emptiness Check for Timed B¨ uchi Automata - 1/24

  2. Timed B¨ uchi Automata [AD94] Efficient Emptiness Check for Timed B¨ uchi Automata - 2/24

  3. Timed B¨ uchi Automata [AD94] Finite words L finite = a ∗ a Finite automata Efficient Emptiness Check for Timed B¨ uchi Automata - 2/24

  4. Timed B¨ uchi Automata [AD94] Finite words Infinite words L finite = a ∗ L infinite = a ω a a Finite automata B¨ uchi automata Efficient Emptiness Check for Timed B¨ uchi Automata - 2/24

  5. Timed B¨ uchi Automata [AD94] Timed words Finite words Infinite words L t = ( a , 1)( a , 2) . . . L finite = a ∗ L infinite = a ω a a ( x = 1), a , x := 0 Finite automata B¨ uchi automata Timed automata Clocks: can be ◮ compared with integers, diagonal-free constraints ◮ reset to 0 Efficient Emptiness Check for Timed B¨ uchi Automata - 2/24

  6. Timed B¨ uchi Automata [AD94] Run: infinite sequence of transitions y x ���� ���� 0 . 4 , a 0 . 5 , c 0 . 3 , d 15 , d ( s 0 , 0 , 0 ) − − − → ( s 1 , 0 . 4 , 0) − − − → ( s 3 , 0 . 9 , 0 . 5) − − − → ( s 3 , 1 . 2 , 0 . 8) − − → · · · ◮ accepting if infinitely often green ◮ non-Zeno if time diverges ( � i ≥ 0 δ i → ∞ ) Efficient Emptiness Check for Timed B¨ uchi Automata - 3/24

  7. Model-Checking Real-Time Systems Correctness: Safety + Liveness + Fairness ¬ open open , x := 0 ( x < 5) , close “Infinitely often, the gate is open for at least 5 s.” Realistic counter-examples: infinite non-Zeno runs Efficient Emptiness Check for Timed B¨ uchi Automata - 4/24

  8. The Problem That We Consider Given a TBA A , does it have a non-Zeno accepting run? Theorem [AD94] Deciding if a TBA has a non-Zeno accepting run is PSPACE- complete Efficient Emptiness Check for Timed B¨ uchi Automata - 5/24

  9. Regions [AD94] y x ◮ Region: set of valuations that satisfy the same ◮ 6 Corner points, e.g [(0 , 1)] guards w.r.t. time ◮ 14 Open line segments, e.g [0 < x = y < 1] ◮ 8 Open regions, e.g [0 < x < y < 1] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  10. Region Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time [0] [1] [2] [3] [4] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  11. Region Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time [0] [1] [2] [3] [4] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  12. Region Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time [0] [1] [2] [3] [4] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  13. Region Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time O ( | X | ! . M | X | ) many regions! [0] [1] [2] [3] [4] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  14. Region Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time O ( | X | ! . M | X | ) many regions! ◮ Zone: convex union of regions [0] [1] [2] [3] [4] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  15. Region Graph & Zone Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time O ( | X | ! . M | X | ) many regions! ◮ Zone: convex union of regions [0] [1] [2] [3] [4] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  16. Region Graph & Zone Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time O ( | X | ! . M | X | ) many regions! ◮ Zone: convex union of regions [0] [1] [2] [3] [4] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  17. Region Graph & Zone Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time O ( | X | ! . M | X | ) many regions! ◮ Zone: convex union of regions [0] [1] [2] [3] [4] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  18. Region Graph & Zone Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time O ( | X | ! . M | X | ) many regions! ◮ Zone: convex union of regions [0] [1] [2] [3] [4] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  19. Region Graph & Zone Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time O ( | X | ! . M | X | ) many regions! ◮ Zone: convex union of regions [0] [1] [2] [3] [4] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  20. Region Graph & Zone Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time O ( | X | ! . M | X | ) many regions! ◮ Zone: convex union of regions [0] [1] [2] [3] [4] Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  21. Region Graph & Zone Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time O ( | X | ! . M | X | ) many regions! ◮ Zone: convex union of regions [0] [1] [2] [3] [4] Finite accepting conditions [AD94, Bou04] Both regions and zones preserve state reachability Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  22. Region Graph & Zone Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time O ( | X | ! . M | X | ) many regions! ◮ Zone: convex union of regions [0] [1] [2] [3] [4] B¨ uchi accepting conditions [AD94, Tri09] Both regions and zones preserve repeated state reachability Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  23. Region Graph & Zone Graph ◮ Region: set of valuations that satisfy the same guards w.r.t. time O ( | X | ! . M | X | ) many regions! ◮ Zone: convex union of regions [0] [1] [2] [3] [4] non-Zenoness ◮ Region: an extra time progress criterion on paths [AD94] ◮ Zone: ??? Efficient Emptiness Check for Timed B¨ uchi Automata - 6/24

  24. Time Progress in the Zone Graph Time Progress Criterion [AD94] y := 0 x := 0 s 1 s 0 s 2 � unbounded( x ) ∨ fluctuating( x ) ( y = 0) ( x = 0) x ∈ X ◮ Path in RG( A ): ( s 1 , 0 = x < y ) ( s 2 , 0 = y < x ) ( s 0 , 0 = x = y ) ( s 1 , 0 = x = y ) ( s 0 , 0 = x = y ) ( s 2 , 0 = y = x ) ◮ Path in ZG( A ): ( s 0 , 0 = x = y ) ( s 1 , 0 = x ≤ y ) ( s 0 , 0 = x = y ) ( s 2 , 0 = y ≤ x ) The time progress criterion is not sound on ZG( A ) Efficient Emptiness Check for Timed B¨ uchi Automata - 7/24

  25. Outline Standard Reduction: Combinatorial Explosion A New Construction Conclusion Efficient Emptiness Check for Timed B¨ uchi Automata - 8/24

  26. Outline Standard Reduction: Combinatorial Explosion A New Construction Conclusion Efficient Emptiness Check for Timed B¨ uchi Automata - 9/24

  27. From TBA to Strongly non-Zeno TBA [TYB05] Key Idea : reduce non-Zenoness to B¨ uchi acceptation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ≥ 1 ≥ 1 g 1 ; R 1 g 1 & ( t ≥ 1) g 1 ; R 1 R 1 ; t := 0 . . . . . g 2 & ( t ≥ 1) . R 2 ; t := 0 R 2 ; 2 g g 2 ; R 2 A A ′ Efficient Emptiness Check for Timed B¨ uchi Automata - 10/24

  28. Strongly non-Zeno TBA [Tri99, TYB05] Definition Strongly non-Zeno TBA: all accepting runs are non-Zeno Theorem [TYB05] For every TBA A , there exists a Strongly non-Zeno TBA A ′ that has an accepting run iff A has a non-Zeno accepting run (size of A ′ : | X | + 1 clocks and at most 2 | Q | states) Theorem [Tri09] A has a non-Zeno accepting run iff ZG( A ′ ) has an accepting run Efficient Emptiness Check for Timed B¨ uchi Automata - 11/24

  29. Coming Next on Strongly non-Zeno Construction Adding one clock leads to an exponential blowup in the Zone Graph! Efficient Emptiness Check for Timed B¨ uchi Automata - 12/24

  30. Guard t ≥ 1 Allows to Count... s 1 s 1 s ′ 1 ( y ≤ d )&( t ≥ 1) ( y ≤ d ) x 1 := 0 ( y ≤ d ) t := 0 x 1 := 0 s 0 s 0 V V’ Run of V : 2 different zones in s 0 y ≤ d x 1 :=0 · · · ( s 0 , y ≤ x 1 ≤ x 2 ) − − − → ( s 1 , y ≤ x 1 ≤ x 2 & y ≤ d ) − − − → y ≤ d x 1 :=0 ( s 0 , 0 = x 1 ≤ y ≤ x 2 ) − − − → ( s 1 , x 1 ≤ y ≤ x 2 & y ≤ d ) − − − → ( s 0 , 0 = x 1 ≤ y ≤ x 2 ) · · · Efficient Emptiness Check for Timed B¨ uchi Automata - 13/24

  31. Guard t ≥ 1 Allows to Count... s 1 s 1 s ′ 1 ( y ≤ d )&( t ≥ 1) ( y ≤ d ) x 1 := 0 ( y ≤ d ) t := 0 x 1 := 0 s 0 s 0 V V’ Run of V’ : d + 2 different zones in s 0 ( y ≤ d )&( t ≥ 1) , t :=0 x 1 :=0 · · · ( s 0 , y ≤ x 1 ≤ x 2 ≤ t ) − − − − − − − − − − − − →→ − − − → ( y ≤ d )&( t ≥ 1) , t :=0 x 1 :=0 ( s 0 , 0 = x 1 ≤ t ≤ y ≤ x 2 & y − t ≥ 0 ) − − − − − − − − − − − − →→ − − − → ( y ≤ d )&( t ≥ 1) , t :=0 x 1 :=0 ( s 0 , 0 = x 1 ≤ t ≤ y ≤ x 2 & y − t ≥ 1 ) − − − − − − − − − − − − →→ − − − → ( y ≤ d )&( t ≥ 1) , t :=0 x 1 :=0 ( s 0 , 0 = x 1 ≤ t ≤ y ≤ x 2 & y − t ≥ 2 ) − − − − − − − − − − − − →→ − − − → . . . ( s 0 , 0 = x 1 ≤ t ≤ y ≤ x 2 & y − t ≥ d ) Remark: y − t ≥ c implies x 2 − x 1 ≥ c Efficient Emptiness Check for Timed B¨ uchi Automata - 13/24

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