symbolic bounded synthesis
play

Symbolic Bounded Synthesis R udiger Ehlers Saarland University, - PowerPoint PPT Presentation

Symbolic Bounded Synthesis R udiger Ehlers Saarland University, Reactive Systems Group CAV 2010 July 18, 2010 R udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 July 18, 2010 1 / 20 Synthesis of reactive systems -


  1. Symbolic Bounded Synthesis R¨ udiger Ehlers Saarland University, Reactive Systems Group CAV 2010 – July 18, 2010 R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 1 / 20

  2. Synthesis of reactive systems - overview Problem description Given ... a set of input atomic propositions AP I , a set of output atomic propositions AP O , a temporal logic formula ψ over AP I ⊎ AP O ... does there exist a Mealy/Moore automaton reading AP I and outputting AP O that satisfies ψ ? Properties of this problem Church’s problem is known to be 2EXPTIME-complete for LTL specifications. R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 2 / 20

  3. LTL synthesis in practice Approaches Several approaches exist (e.g., generalized reactivity(1) synthesis [PPS06], “classical” parity game solving, etc.) Here, we are concerned with bounded synthesis [SF07], a Safraless approach for LTL synthesis [KV05]. Criteria for the evaluation of these approaches Expressivity Scalability suitability for typical specifications amenable to symbolic implementations R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 3 / 20

  4. A Safraless approach for LTL synthesis [KV05] Basic Approach 1 Convert ¬ ψ to a non-deterministic B¨ uchi word automaton A uchi word automaton (UCW) A ′ 2 Dualize A to a universal co-B¨ 3 Check the universal co-B¨ uchi tree automaton (UCT) obtained from A ′ for emptiness Basic idea: Universality makes the world simpler R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 4 / 20

  5. Bounded synthesis [SF07] start NBW for the negated specification / UCW for the specification q 0 true r ∧ ¬ g r ∧ ¬ g q 1 R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 5 / 20

  6. Bounded synthesis [SF07] start Corresponding UCT * q 0 g ¬ g ∗ r r q 1 ¬ g R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 5 / 20

  7. Bounded synthesis [SF07] Central idea For every finite-state system satisfying ψ , there exists an upper bound on the number of visits to rejecting UCT states Bound that number! Then, synthesis can be done by solving a safety game. start ¬ r g * * * ¬ g q 0 (2 , ∞ ) start g ¬ r g ¬ r ¬ g ∗ ¬ g * r r r q 1 (2 , 1) (2 , 0) g ¬ g r ¬ g R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 5 / 20

  8. On the efficiency of the technique Properties of the game structure Number of states: roughly ( b + 1) | Q | – huge! Structure is amenable to symbolic implementations A symbolic approach from last year’s CAV [FJR09] Antichains can efficiently represent frontier sets during the game solving process. Basic idea: sets of winning states are closed under counter increasals, e.g., if state (2 , 0) is winning for the system player, then so is state (2 , 1). Binary decision diagrams Interestingly, they seem to be unconsidered so far. In this work, we show how to solve the challenges of applying them in practice . R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 6 / 20

  9. BDDs for bounded synthesis Points for BDDs Good for tracking components that run in parallel : games/automata for the specification conjuncts evolution of the counters Points against BDDs Counters in BDDs are evil! [Weg00, SL99, BMPY97, TV07] The question raised and answered in this paper: How can we reduce the number of counters such that the BDD- approach to Safraless/bounded synthesis is feasible in practice? R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 7 / 20

  10. Structure of the remainder of the talk The steps for reducing the number of counters Splitting the specification into safety/non-safety properties and composing them to a synthesis game Getting rid of some counters in the resulting synthesis game Experiments & Outlook Comparison of our prototype against Lily/Acacia R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 8 / 20

  11. Splitting a specification into safety and non-safety prop’s The shape of a “typical specification” ( a 1 ∧ a 2 ∧ . . . ∧ a n ) → ( g 1 ∧ g 2 ∧ . . . ∧ g m ) Decomposing the specification Assumptions a 1 , . . . , a n Guarantees g 1 , . . . , g m Both assumptions and guarantees typically contain safety formulas. Intuition for splitting the specification Safety properties do not need counters. R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 9 / 20

  12. Splitting a simple conjunction G a ∧ G( b → X c ) ∧ GF d R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 10 / 20

  13. Splitting a simple conjunction G a ∧ G( b → X c ) ∧ GF d safety non-safety R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 10 / 20

  14. Splitting a simple conjunction G a ∧ G( b → X c ) ∧ GF d DST UCT R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 10 / 20

  15. Splitting a simple conjunction G a ∧ G( b → X c ) ∧ GF d DST UCT Safety game G 1 R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 10 / 20

  16. Splitting a simple conjunction G a ∧ G( b → X c ) ∧ GF d DST UCT Bound Safety game Safety game G 1 G 2 R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 10 / 20

  17. Splitting a simple conjunction G a ∧ G( b → X c ) ∧ GF d DST UCT Bound Safety game Safety game G 1 G 2 G 1 || G 2 Winning condition The system player wins G 1 || G 2 iff she wins G 1 and G 2 at the same time. R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 10 / 20

  18. Splitting an assumptions → guarantees specification (1/2) AP I = { a , b } , AP O = { c , d } (G a ∧ GF b ) → (G c ∧ GF d ) R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 11 / 20

  19. Splitting an assumptions → guarantees specification (1/2) AP I = { a , b } , AP O = { c , d } (G a ∧ GF b ) → (G c ∧ GF d ) DST R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 11 / 20

  20. Splitting an assumptions → guarantees specification (1/2) AP I = { a , b } , AP O = { c , d } (G a ∧ GF b ) → (G c ∧ GF d ) DST Safety game G 1 R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 11 / 20

  21. Splitting an assumptions → guarantees specification (1/2) AP I = { a , b } , AP O = { c , d } (G a ∧ GF b ) → (G c ∧ GF d ) DST DST Safety game G 1 R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 11 / 20

  22. Splitting an assumptions → guarantees specification (1/2) AP I = { a , b } , AP O = { c , d , safe } (G a ∧ GF b ) → (G c ∧ GF d ) DST DST Safety game G 2 , Safety game won if safe always G 1 represents whether the I/O so far is still accepted by the DST R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 11 / 20

  23. Splitting an assumptions → guarantees specification (1/2) AP I = { a , b } , AP O = { c , d , safe } (G a ∧ GF b ) → (G c ∧ GF d ) (GF b ) → (G safe ∧ GF d ) DST DST Safety game G 2 , Safety game won if safe always G 1 represents whether the I/O so far is still accepted by the DST R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 11 / 20

  24. Splitting an assumptions → guarantees specification (1/2) AP I = { a , b } , AP O = { c , d , safe } (G a ∧ GF b ) → (G c ∧ GF d ) (GF b ) → (G safe ∧ GF d ) DST DST UCT Bound Safety game G 2 , Safety game won if safe always Safety game G 1 represents whether the G 3 I/O so far is still accepted by the DST R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 11 / 20

  25. Splitting an assumptions → guarantees specification (1/2) AP I = { a , b } , AP O = { c , d , safe } (G a ∧ GF b ) → (G c ∧ GF d ) (GF b ) → (G safe ∧ GF d ) DST DST UCT Bound Safety game G 2 , Safety game won if safe always Safety game G 1 represents whether the G 3 I/O so far is still accepted by the DST G 1 || G 2 || G 3 R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 11 / 20

  26. Splitting an assumptions → guarantees specification (2/2) Winning condition The system player wins G 1 || G 2 || G 3 iff she loses G 1 or she wins G 2 and G 3 at the same time. The role of safe The AP safe connects the non-safety and safety guarantee parts. This is important for soundness. Example: (G a ∧ GF ¬ a ) → (G c ∧ G ¬ c ) R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 12 / 20

  27. Getting rid of additional counters in G 3 Example specification/Example UCT FG a ∧ G(( ¬ a ∧ X a ) → XXGF ¬ b ) ¬ a a b start q 0 q 1 q 2 q 3 a a ¬ a true b States of type ( ∗ , ∞ , ∗ , ∞ ) in the safety game for b = 3 (3 , ∞ , ∞ , ∞ ) (2 , ∞ , ∞ , ∞ ) (1 , ∞ , ∞ , ∞ ) (0 , ∞ , ∞ , ∞ ) (2 , ∞ , 2 , ∞ ) (1 , ∞ , 2 , ∞ ) (0 , ∞ , 2 , ∞ ) (2 , ∞ , 1 , ∞ ) (1 , ∞ , 1 , ∞ ) (0 , ∞ , 1 , ∞ ) (2 , ∞ , 0 , ∞ ) (1 , ∞ , 0 , ∞ ) (0 , ∞ , 0 , ∞ ) R¨ udiger Ehlers (SB) Symbolic Bounded Synthesis CAV 2010 – July 18, 2010 13 / 20

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