Games and Synthesis. Nir Piterman University of Leicester Telč, July-Autugst 2014
|
|
- Pearl Webster
- 5 years ago
- Views:
Transcription
1 Games and Synthesis Nir Piterman University of Leicester Telč, July-Autugst 2014 Games and Synthesis, EATCS Young Researchers School, Telč, Summer 2014
2 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Turing Machine A Turing machine is: M = Σ, Q, Δ, q 0, ƅ Where Σ finite set of symbols (alphabet). Q finite set of states. Includes special states acc(ept) and rej(ect). ƅ is a blank symbol (indicating an empty/blank cell). Δ: Q (Σ {ƅ}) (Σ,, Q) with every state and letter (where a could be ƅ) associate new letter, direction, and new state. We assume that acc and rej have no successors! q 0 is an initial state. Interesting questions about Turing machines: Does it accept input x? Does it halt on input x?
3 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Programming A function defines a relation between inputs and outputs.
4 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Doesn t quite work
5 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Computation vs. Reactivity
6 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Reactive Systems Systems whose main aim is to interact rather than compute (OS, driver, CPU, car controller). Main complexity is in maintaining communication with a user / another program / the environment. Reactive systems are notoriously hard to design. Major efforts are invested in development and validation of reactive systems.
7 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background The Requirement Language Correctness of computational programs is expressed as Hoare triples. P C{Q} Correctness of reactive programs is expressed as behavioral specifications: The behavior of a system is a sequence of system states. Specification should tell us when a sequence is good/bad. We use temporal logic: connect states through time.
8 Lecture 1: Introduction and Background Validating Reactive Systems Simulations: Run the system and check whether behavior satisfies specifications. Model checking: Create a comprehensive model of the system and check whether all behaviors satisfy specifications. Model checking research: Automatic construction of models. Predicate extraction. Heap analysis. Counter-example guided abstraction refinement. Techniques for model exploration. Efficient enumerative graph exploration. Symbolic representation of states. Bounded model checking. Specification. Expressive specification languages. Translation to model exploration. Games and Synthesis, EATCS Young Researchers School, Telč, Summer
9 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Synthesis Developing systems is hard, expensive, and error prone. The common solution is extensive testing and verification. If we can verify, why not go directly from specification to correct-by-construction systems by synthesis? Church s synthesis problem: Given a circuit interface specification and a behavioral specification: Determine if there is an automaton that realizes the specification. If the specification is realizable, construct an implementing automaton. Circuit interface partition to inputs and outputs. Behavioral specification description in first order logic.
10 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Synthesis from Temporal Specifications i o 1 t. o 1 t o 2 t t. i t t > t. o 1 t o 2 t t. o 1 t t < t. i t t < t < t. o 1 t o 2 t t. o 2 t t < t. i t t < t < t. o 1 t o 2 t o 2 t. o 1 t t. o 1 t t > t. o 1 t t < t < t. o 2 t t > t. o 2 t t < t < t. o 1 t Is it possible to realize this specification? The formula defines a relation between i: N {0,1} and o 1, o 2 : N {0,1} We want a function.
11 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Causality o 0 ( t. i t ) The relation is not empty. The function needs to be causal! It cannot be clairvoyant. R = { i, o i: N 0,1, o: N 0,1, o 0 t. i t }
12 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Adversarial t. i t o t t. i t t > t. o(t) There are some input sequences for which this is possible. But not all! We want a function that can answer all input sequences. f: i: 0,, n 0,1 n N {0,1} Furthermore, for every i: N {0,1} the unique o: N {0,1} such that o n = f(i 0,,n ) for every n N satisfies the specification.
13 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Brief History Church s problem [1965]. Rabin introduces automata on infinite trees. Effectively, generalizing Büchi s work on ω-automata to trees [1969]. Büchi and Landweber define two-player games of infinite duration [1969]. We now know that the two are effectively the same. These are still the techniques we use to solve the problem.
14 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Modern Times Pnueli introduces linear temporal logic [1977]. Emerson and Clarke and Quielle and Sifakis invent model checking [1981]. Emerson and Clarke and Manna and Wolper ignore adversarial nature and propose reduction to satisfiability [1984]. Pnueli and Rosner establish LTL realizability to be 2EXPTIMEcomplete. This result established realizability and synthesis as highly intractable.
15 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background In these Lectures Synthesis as a game. Simple games (safety, reachability, Büchi). LTL Synthesis reduced to solution of parity games. Bypassing determinization: Safraless approach. Restricting the specification langauge. Practical issues with synthesis: Implication problems. Unrealizability. Building hybrid controllers. Distributed synthesis.
16 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Lectures Outline Introduction Automata and Linear Temporal Logic Games and Synthesis General LTL Synthesis Bypassing Determinization Practical Issues with Synthesis
17 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background A More Formal Context A specification in linear temporal logic over input and output propositions. A system will be an automaton with output. Input and output are combined to create a sequences of assignments to propositions. All possible infinite paths over the automaton should satisfy the specification.
18 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Linear Temporal Logic A set of propositions (Prop) denoting the basic facts about the world. Set Prop is partitioned to inputs I and outputs O. Linear Temporal Logic formulae are constructed as follows: Other temporal formulae are derived: Eventually. Always. Weak Until. Previously. Historically. BackTo.
19 Lecture 1: Introduction and Background LTL Semantics A model for an LTL formula is an infinite sequence σ = σ 0, σ 1, with a designated location j 0. Each letter σ i is a set of propositions true at time i. Formula φ holds over sequence σ in location j 0, denoted, if: If is a proposition σ, j φ φ σ j or ` and and and Derived: Games and Synthesis, EATCS Young Researchers School, Telč, Summer
20 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background LTL Exercises
21 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Automata Systems with discrete states. Formally, A = Σ, Q, δ, q 0, where Σ a finite input alphabet. Q a finite set of states. δ: Q Σ 2 Q a transition function. Associates with state and an input letter a set of successor states. q 0 an initial state. An input word w = σ 0, σ 1, is a sequence of letters from Σ. A run r = q 0, q 1, over w is a sequence of states starting from q 0 such that for every i 0 we have q i+1 δ q i, σ i. An automaton is deterministic if for every q Q and σ Σ we have δ q, σ 1.
22 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Mealy Machines Systems with discrete states. Formally, M = Σ, Δ, Q, δ, q 0, L, where Σ a finite input alphabet. Δ a finite output alphabet. Q a finite set of states. δ: Q Σ 2 Q a transition function. Associates with every state and an input letter a set of successor states. q 0 an initial state. L: Q Σ Δ an output function. Associates with every transition an output letter. A run r = q 0, q 1, over w is a sequence of states starting from q 0 such that for every i 0 we have q i+1 δ q i, σ i. The computation correspoinding to r = q 0, q 1, over w is c = σ 0, L q 0, σ 0, σ 1, L q 1, σ 1,.
23 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Mealy Machines and LTL The set of computations of a machine M = Σ, Δ, Q, δ, q 0, L is denoted L M. Assume Σ = 2 I and Δ = 2 O. So input letters are assignments to input propositions and outputs are assignments to output propositions. A machine M satisfies a formula φ, denoted M φ, if every computation in L(M) satisfies φ. Given an LTL formula φ over propositions Prop = I O we say that φ is realizable if there is a Mealy machine that satisfies it. Our task is going to be to find such a Mealy machine or say that it does not exist. We will mostly be interested in deterministic machines.
24 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 1: Introduction and Background Bibliography 1. Principles of Model Checking (C. Baier and J.-P. Katoen), MIT Press, Model Checking (E. Clarke, O. Grumberg, and D. Peled), MIT Press, Handbook of Model Checking (Eds., E. Clarke, T.A. Henzinger, H. Veith), Springer-Verlag, To appear.
25 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Lectures Outline Introduction Automata and Linear Temporal Logic Games and Synthesis General LTL Synthesis Bypassing Determinization Practical Issues with Synthesis
26 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Realizability So, given a property φ and a partition Prop = I O find a system Msuch that M φ. For every possible input, decide on an output All paths through the machine should satisfy the property.
27 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Arbiter r 1 r 2 g 1 g 2 Arbiter r n g n Client r i g i
28 Lecture 2: Games and Synthesis Games and Synthesis, EATCS Young Researchers School, Telč, Summer Arbiter 2 Propositions Prop = r 1, r 2, g 1, g 2, where I = r 1, r 2 and O = g 1, g 2. Requirements: A 1 : leave requests: r 1! g 1 r 1 (r 2! g 2 r 2 ) G 1 : leave grants: r 1 g 1 g 1 (r 2 g 2 g 2 ) G 2 : mutual exclusion:! g 1! g 2 G 3 : deliver and remove grants: g 1 r 1 g 2 r 2 Or together: A 1 G 1 G 2 G 3
29 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis What s the idea? Think about control: Some things are under our control. Some things are not. We want to exercise our control so that to achieve certain goals. In some cases the environment is hostile. What we want: Find a strategy that will guide our actions based on our view of the world. This leads to viewing the world as an opponent: Exercise control so that uncontrollable events do not lead to damage. We model this as two-player games.
30 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Example: Nim Some rows of matches. Every player removes in turn at least one match from one row. The one to remove last match wins. Can you win?
31 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Whose in Control? We still use graphs with edges for transitions. Ownership is by using two types of nodes.
32 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Environment System A Play
33 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Arbiter r 1 r 2 g 1 g 2 Arbiter r n g n Client r i g i
34 Lecture 2: Games and Synthesis Games and Synthesis, EATCS Young Researchers School, Telč, Summer
35 Lecture 2: Games and Synthesis Games Formally, a game is G = V, V 0, V 1, E, α, where V is a set of nodes. V 0 and V 1 form a partition of V. E V V is a set of edges. A play is π = v 0, v 1, α is a set of winning plays. A strategy for player i is a function f i : V V i V such that v, f i w v E. A play π = v 0, v 1, is compatible with f i if for every j 0 such that v j V i we have v j+1 = f i (v 0 v j ). A strategy for player 0 is winning if every play compatible with it is in α. A strategy for player 1 is winning if every play compatible with it is not in α. A node v is won by player i if she has a winning strategy for all plays starting from v. Games and Synthesis, EATCS Young Researchers School, Telč, Summer
36 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Control Predecessor In control it is easier to walk backwards.
37 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Environment System Game Analysis 6 th 5 th 5 th 5 th 3 rd 4 th 2 nd 3 rd 2 nd 1 st 1 st 1 st 6 th 5 th 4 th 3 rd 2 nd 1 st
38 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Control Predecessor (for P0) Start from an set of nodes W V. We want to say: The system can force the environment to W in one move. That is: Nodes v V 0 for which some successor is in W. Nodes v V 1 for which all successors are in W. Formally: cpre W = v V 0 v W. v, v E {v V 1 v. v, v E v W}
39 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Control Predecessor (for P1) Start from an set of nodes W V. We want to say: The environment can force the system to W in one move. That is: Nodes v V 1 for which some successor is in W. Nodes v V 0 for which all successors are in W. Formally: cpre 1 W = v V 1 v W. v, v E {v V 0 v. v, v E v W}
40 Lecture 2: Games and Synthesis Games and Synthesis, EATCS Young Researchers School, Telč, Summer Let s solve some games!
41 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis ap.. 3 rd 2 nd 1 st!p
42 Lecture 2: Games and Synthesis p r r r r!p!p Games and Synthesis, EATCS Young Researchers School, Telč, Summer
43 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Reachability Games Check that P1 can enforce p. 1. fix (new := p) 2. new := new cpre 1 (new) 3. end // fix Lemma. The algorithm computes the set of states winning for P1 with objective p. Proof. Later. Attr i (W) the set of nodes from which player i can force reaching W.
44 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Safety Games Check that P0 can enforce p. 1. fix (new := p) 2. new := new cpre(new) 3. end // fix Lemma. The algorithm computes the set of states winning for P0 with objective p. Proof. Later.
45 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Safety vs Reachability Games Goals p for P0 and p for P1 are complementary. 1. fix (new := p) 2. new := new cpre(new) 3. end // fix 1. fix (new := p) 2. new := new cpre 1 (new) 3. end // fix
46 Lecture 2: Games and Synthesis r r r r r r Games and Synthesis, EATCS Young Researchers School, Telč, Summer
47 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Büchi Games Check that P0 can enforce p. 1. fix (greatest := V) 2. fix (least := p cpre(greatest) 3. least := least cpre(least); 4. end // fix least 5. greatest := least; 6. end // fix greatest Lemma. The algorithm computes the set of nodes winning for P0 with objective p.
48 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Strategy A strategy is the way of enforcing the goal. Let D be some memory domain and let d 0 be an initial memory value. Elements in the memory domain recall facts about the history of play so far. A strategy for player i is a function f i : V V 0 V such that v, f i w v E. We look to replace V by some (finite) domain D. Then, instead of considering V we could consider D V. The strategy is replaced by two functions: Move function: f i m : D V i V s.t. v, f d, v E. Update function: f i u : D V D.
49 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Safety Games Check that P0 can enforce p. 1. fix (new := p) 2. new := new cpre(new) 3. end // fix
50 Lecture 2: Games and Synthesis Proof Suppose that new is not empty. Consider v new. Clearly, v p. But also v cpre(new). If v V 0, then v has a successor w such that w new. If v V 1, then for every successor w of v we know w new. If there is a strategy s.t. every play compliant with it wins 1. fix (new := p) 2. new := new cpre(new) 3. end // fix p. Let new 0, new 1, new 2, be the series of approximations of new. We prove by induction that for every v winning for P0, v new i for every i. Clearly, v p implies v new 0. Assume every v winning for P0 is in new i for some i. Consider v V 0 winning for P0. Then, there is w such that v, w E and w winning for P0. Then, w in new i and v in new i+1. Consider v V 1 winning for P0. Then, for every w such that v, w E we have w winning for P0. Then, every w such that v, w E is in new i. So v in new i+1. Games and Synthesis, EATCS Young Researchers School, Telč, Summer
51 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Büchi Games Check that P0 can enforce p. 1. fix (greatest := V) 2. fix (least := p cpre(greatest) 3. least := least cpre(least) 4. end // fix least 5. end // fix greatest
52 Lecture 2: Games and Synthesis Proof (Control of Büchi Soundness) Suppose that greatest is not empty. For the fixpoint to terminate, the inner fixpoint starting from this value recomputes it. Let least 0, least 1, least 2, be the sequence of values that least has through the computation of this last iteration. Consider v greatest. Let i 0 be the index such that v least i0. By definition of cpre( ), P0 can force a successor w of v. But then, w least i1 for some i 1 < i 0. This shows that P0 can ensure to reach least 0 = p cpre(greatest). So it ensures a visit p. But now least 0 = p cpre(greatest). So in the next step P0 forces least j for some j and repeat this process. By induction, P0 can enforce p. 1. fix (greatest := V) 2. fix (least := p cpre(greatest) 3. least := least cpre(least); 4. end // fix least 5. greatest := least; 6. end // fix greatest Games and Synthesis, EATCS Young Researchers School, Telč, Summer
53 Lecture 2: Games and Synthesis Proof (Control of Büchi - completeness) If there is a strategy f s.t. every play compliant with it wins p. Every node v from which f is winning remains in every approximation of the fixpoint greatest: From v there is a maximum on the length of paths to reach p (König s lemma). Prove by induction on the number of iterations in the first fixpoint that win greatest. For greatest 0 = V this is clear. Assume win greatest i. Then for every node v win it must be that v least j for the distance to reach p win. 1. fix (greatest := V) 2. fix (least := p cpre(greatest) 3. least := least cpre(least); 4. end // fix least 5. greatest := least; 6. end // fix greatest Games and Synthesis, EATCS Young Researchers School, Telč, Summer
54 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Symbolic vs Enumerative Algorithms so far have treated sets of states. But the proof established a ranking for the winning states the number of steps until reaching the goal. r: V N Can we compute the rank iteratively? A path that visits more than p nodes must be a losing loop. Restrict rank to r: V 0,, p. min rank(w) v V 0 v,w E best v = max rank(w) v V 1 v,w E Rank is stable if: v p and r best v <. v p and r best v < r(v).
55 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Compute Rank Directly 1. r:= λv while ( v. v not stable) 3. if (v p) 4. r(v) := ; 5. else 6. r(v) := best(v)+1; 7. end // while Each v can be increased at most p times. By evaluating loop condition (and best) efficiently, all work can be restricted to O( V E ).
56 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis What about Synthesis? Our goal is to construct a Mealy machine that realizes the specification. A Mealy machine from every state reads input and answers with output. A node in the game corresponding to choice of input will be followed by node corresponding to choice of output. We can define a specialized game with nodes in 2 I O. We can define the winning condition with an LTL formula over I O. A play naturally corresponds to a possible model. For a set of nodes W, define cpre W = {v x 2 I. y 2 O. (x y) W} When computing the set of winning states, check that for every x 2 I there is y 2 O such that x y is winning.
57 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Further Specialize Strategy Let D be some memory domain and let d 0 be an initial memory value. Elements in the memory domain recall facts about the history of play so far. A strategy for player i is a function f V i : 2 I O V 0 2V I such 2 O that. We v, f look i w to v replace E. 2 I O We look to replace V by some (finite) domain D. Then, by some (finite) domain D. Then, instead instead of considering of considering V we could 2 I O consider we could D consider V. D 2 I O. The strategy becomes is replaced f i : by D two 2 I functions: D 2 O Move function: f m i : D V i V s.t. v, f d, v E. Update function: f u i : D V D.
58 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis From Strategy to System Consider a strategy f 0 : D 2 I D 2 O and let d 0 D be the initial memory value. Construct the machine M = Σ, Δ, D, δ, d 0, L with: Σ = 2 I Δ = 2 O δ d, i = f 0 d, i 1 L d, i = f 0 d, i 2 What s the memory domain in the cases we ve seen?
59 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Winning Realizability Consider a run r = q 0, q 1, over w = σ 0, σ 1, and the corresponding computation c = σ 0, L q 0, σ 0, σ 1, L q 1, σ 1, of M. i. For every i 2 I there is o 2 O s.t. (i, o) is winning. ii. By f winning c satisfies the formula. Realizability Winning Take a machine M and use it to construct the winning strategy. A play in the game is a computation of the machine.
60 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Memorize Intermediate Values 1. fix (greatest := V) 2. fix (least := p cpre(greatest) 3. least := least cpre(least) 4. end // fix least 5. end // fix greatest 1. fix (greatest := V) 2. cy 0; 3. fix (least := p cpre(greatest) 4. y[cy]:= least; 5. least := least cpre(least) 6. cy cy + 1; 7. end // fix least 8. end // fix greatest
61 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Construct the Realizing Machine Given G = 2 I O 2 I O 2 I, 2 I O 2 I, 2 I O, E, p. E = i, o, i, o, i, i, o, i, i, o Construct a M = 2 I, 2 O, 2 I O, δ, s 0, L : δ i, o, i = {(i, o ) i, o is winning} i, o p { i, o i, o y[ j]} i, o y[j + 1]
62 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Summary Starting from an LTL formula φ, construct the game G = 2 I O 2 I O 2 I, 2 I O 2 I, 2 I O, E, φ. Compute the set win. If for every i 2 I there is o 2 O such that i, o win then declare φ realizable. Extract from the winning strategy a realizing Machine. But we only know to solve reachability and Büchi games. What about general LTL?
63 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 2: Games and Synthesis Bibliography 1. Infinite Games (R. Mazala), in Automata, Logic, and Infinite- Games (Eds., E. Grädel, W. Thomas, and T. Wilke), Springer- Verlag, Supervisory control of a class of discrete event processes (P. J. Ramadge and W. M. Wonham), SIAM J. Control and Optimization, Vol. 25, No. 1, pp , On the Synthesis of Discrete Controllers for Timed Systems (O. Maler, A. Pnueli, and J. Sifakis), STACS 1995: An O n 2 time algorithm for alternating Büchi games (K. Chatterjee and M. Henzinger), SODA 2012:
64 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Lectures Outline Introduction Automata and Linear Temporal Logic Games and Synthesis General LTL Synthesis Bypassing Determinization Practical Issues with Synthesis
65 Lecture 3: General LTL Synthesis Games and Synthesis, EATCS Young Researchers School, Telč, Summer From Logic to Graphs? How to embed the logical winning condition into the graph notation?
66 Lecture 3: General LTL Synthesis Nondeterministic Büchi Automata Systems with discrete states. Formally, A = Σ, Q, δ, q 0, α, where Σ a finite input alphabet. Q a finite set of states. δ: Q Σ 2 Q a transition function. Associates with state and an input letter a set of successor states. q 0 an initial state. α Q a set of accepting states. An input word w = σ 0, σ 1, is a sequence of letters from Σ. A run r = q 0, q 1, over w is a sequence of states starting from q 0 such that for every i 0 we have q i+1 δ q i, σ i. A run is accepting if for infinitely many i N we have q i α. A word is accepted if some run over it is accepting. The language of A, denoted L A, is the set of words accepted by A. Games and Synthesis, EATCS Young Researchers School, Telč, Summer
67 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis From LTL to Büchi Automata Theorem. Given an LTL formula φ we can construct a nondeterministic Büchi automaton N φ such that L M φ = L φ. The size of N φ is exponential in the length of φ. Intuitively, if sub(φ) is the set of subformulas of φ, a state of N φ corresponds to a set of subformulas that are true (in an accepting run).
68 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Control with Automaton Observer Visit finitely many not-p s p Environment System p!p p
69 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis NBW for p NBW for φ = p: p p, p p
70 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Nondeterminism is bad Environment System p!p p p p, p p
71 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis What went wrong? The automaton is nondeterministic. It makes predictions regarding the future and aborts runs that do not match these predictions. In the context of games nondeterminism is added as choice of one side: If the system resolves nondeterminism, it has to find a solution that matches all possible futures. If the environment resolves nondeterminism, the system must force all runs to be accepting.
72 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Solution: Determinism If the automaton were deterministic, there would be no added choice! We create a synchronous parallel composition of the automaton with the game. Solve the resulting game. Extract system from winning strategy.
73 Lecture 3: General LTL Synthesis Nondeterministic parity Automata Systems with discrete states. Formally, A = Σ, Q, δ, q 0, α, where Σ a finite input alphabet. Q a finite set of states. δ: Q Σ 2 Q a transition function. Associates with state and an input letter a set of successor states. q 0 an initial state. α: Q N a ranking of states. An input word w = σ 0, σ 1, is a sequence of letters from Σ. A run r = q 0, q 1, over w is a sequence of states starting from q 0 such that for every i 0 we have q i+1 δ q i, σ i. A run is accepting if for the minimum rank to occur infinitely often is even. The language of A, denoted L M, is the set of words accepted by A. Games and Synthesis, EATCS Young Researchers School, Telč, Summer
74 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Synchronous Composition of Games Consider a game G = V, V 0, V 1, E, φ and a deterministic (with respect to entire alphabet Σ) automaton A φ = Σ, D, δ, d 0, β. Their synchronous parallel composition (G A φ ) is the game, G = V, V 0, V 1, E, γ where: V = D V a new node holds a game node and an automaton state.. E = d, v, d, v v, v E and d = δ(d, L v ) the transitions of the automaton are updated. γ d, v = β(d) acceptance only considers the acceptance of the automaton. The results is a parity game.
75 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Deterministic Automata Work! Theorem. P0 wins G with winning condition φ iff P0 wins G A φ, where A φ is a deterministic automaton for φ. If P0 wins G all she has to do in G A φ is to use the same strategy. Every play in G A φ corresponds to a play in G and the unique run of A φ that reads this play. But the play satisfies φ, so the run must be accepting. So the play in G A φ is winning for P0 as well. If P0 wins G A φ she can use the states of A φ as (part of) the memory in G. She will then be able to use the winning strategy from G A φ. Now, a play in G corresponds to an accepting run of A φ. But then the play satisfies φ, which means that P0 wins.
76 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Two tiny issues How do we get a deterministic parity automata for LTL? How do we solve a parity games?
77 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Deterministic Automata Well, the answer is simple: construct a nondeterministic automaton and determinize it! Starting from an automaton with n states: Create an automaton with O((n!) 2 ) states and 2n rank. Wolfgang showed one such construction.
78 Lecture 3: General LTL Synthesis Solving parity Games Func main() 1. Return even_parity(0, ); End // Func main Func odd_parity(i, win) 1. fix (least := ) 2. least:= win v α v i} cpre(greatest) 3. if (i!=max) 4. least := even_parity(i+1, least) 5. end // fix least 6. Return least; End // Func odd_parity Func even_parity(i, win) 1. fix (greatest := V) 2. greateast := win v α v = i} cpre(greatest) 3. if (i!=max) 4. greatest := odd_parity(i+1, greatest) 5. end // fix greatest 6. Return greatest; End // Func even_parity Games and Synthesis, EATCS Young Researchers School, Telč, Summer
79 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Proof (Soundness) Suppose that win is not empty. Have the intermediate least fixpoint approximations: least p 0, least p 1, least p 2, for an odd parity p. Consider v win. Let i 1, i 3,, i m be the indices such that v j least ij. By definition of cpre( ), P0 can force a successor w of v. But then, either (a) for some even j we have v α j and w has i 1, i 3,, i m such that for j < j we have i j i j or (b) there is some j such that w has i 1, i 3,, i m, for j < j we have i j = i j, and for j we have i j < i j. Consider an infinite path and what happens to these numbers. There must be an even priority that is reset infinitely often, showing that P0 wins.
80 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Enumerative Again The proof established a ranking for the winning states the odd nodes until an even node. r: V N odd Can we compute the rank iteratively? For odd j a path that visits more than α 1 (j) nodes must be a losing loop. Restrict rank to r: V α 1 1 α 1 m. min rank(w) v V 0 v,w E best v = max rank(w) v V 1 v,w E Rank is stable if: α(v) is even and r best v α v r v. α(v) is odd and r best v < α v r(v).
81 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Compute Rank Directly 1. r:= λv. (0,0,, 0) 2. while ( v. v not stable) 3. r(v) := inc α v (best(v)); 4. end // while Each v can be increased at most V odd times. By evaluating loop condition (and best) efficiently, all work can be restricted to V odd E. By counting better the exponent can be halved.
82 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis To Summarize φ = n Start with a game structure G with winning condition φ. Construct a deterministic automaton A φ for φ. Construct the product G A φ. A φ Solve the game G A φ. Construct a winning strategy for G A φ. α = 2 n Construct from the winning strategy a Mealy machine realizing φ. 2 2O(n2 log n) The problem is 2EXPTIME-complete. Determinization does not scale. More practice required for solution of parity games (Martin?). 2O(n log n) = 2
83 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 3: General LTL Synthesis Bibliography 1. Reasoning About Infinite Computations (M.Y. Vardi and P. Wolper), Information and Computation, Vol. 115, No. 1, pp. 1-37, Simple On-The-Fly Automatic Verification of Linear Temporal Logic (R. Gerth, D. Peled, M.Y. Vardi, and P. Wolper), Protocol Specification, Testing, and Verification 1995: On the Synthesis of a Reactive Module (A. Pnueli and R. Rosner), POPL 1989: Determinization of Büchi-Automata (M. Roggenbach), in Automata, Logic, and Infinite-Games (Eds., E. Grädel, W. Thomas, and T. Wilke), Springer-Verlag, On the Complexity of ω-automata (S. Safra), FOCS 1998, From Nondeterminstic Büchi and Streett Automata to Deterministic Parity Automata (), Logical Methods in Computer Science, Vol. 3, No. 3, pp. e5, Algorithms for Parity Games (H. Klauck), in Automata, Logic, and Infinite-Games (Eds., E. Grädel, W. Thomas, and T. Wilke), Springer-Verlag, 2002.
84 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Lectures Outline Introduction Automata and Linear Temporal Logic Games and Synthesis General LTL Synthesis Bypassing Determinization Practical Issues with Synthesis
85 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Two Ways to Avoid Determinization Replace by counting: Search for bounded strategy. Express winning through universal co-büchi auotmata. Limited determinization through counting. Concentrate on simpler specifications: Both system and environment are Büchi automata. Enforce deterministic specification. State-space exponential. Exponent linear.
86 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization A New Look on Winning Conditions Formally, a game is G = V, V 0, V 1, E, α, where V is a set of nodes. V 0 and V 1 form a partition of V. E V V is a set of edges. A play is π = v 0, v 1, α is a set of winning plays: Safety: α = W ω for some W V. Büchi: α = (V W) ω for some W V. LTL: α = {π V ω π φ}. NBW: α = V, Q, δ, q 0, β, where δ: Q V 2 V and β Q. DPW: α = V, Q, δ, q 0, c, where δ: Q V V and c: Q N. UCW: α = V, Q, δ, q 0, β, where δ: Q V V and β Q.
87 Lecture 4: Bypassing Determinization Universal co-büchi Automata Systems with discrete states. Formally, A = Σ, Q, δ, q 0, α, where Σ a finite input alphabet. Q a finite set of states. δ: Q Σ 2 Q a transition function. Associates with state and an input letter a set of successor states. q 0 an initial state. α Q a set of accepting rejecting states. An input word w = σ 0, σ 1, is a sequence of letters from Σ. A run r = q 0, q 1, over w is a sequence of states starting from q 0 such that for every i 0 we have q i+1 δ q i, σ i. A run is accepting if for infinitely many i N we have q 0 α. A word is accepted if some all runs over it is accepting. The language of A, denoted L A, is the set of words accepted by A. Games and Synthesis, EATCS Young Researchers School, Telč, Summer
88 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization UCW for p UCW for φ = p: p p, p p
89 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization UCW for p UCW for φ = p: p p p p
90 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Runs of UCW on (W.P.B.) Mealy Machines Consider a UCW U φ = 2 I O, Q, δ, q 0, α, where Q = n. Suppose we get a machine M = 2 I, 2 O, S, ρ, s 0, L such that L M L φ, where S = m. We run U on words produced by M. What is the maximum number of visits to α? A word produced by M corresponds to a run r = s 0, s 1, on w = σ 0, σ 1, by taking c = σ 0, L s 0, σ 0, σ 1, L s 1, σ 1,. Let the run of U φ on c be π = q 0, q 1,. Here, q i+1 δ(q i, (σ i, L s i, σ i ). If the number of visits to α is more than n m, there must exists i and j such that q i = q j, s i = s j, and q i α. But then q 0,, (q i,, q j 1 ) ω is a rejecting run of U φ on ω σ 0, L s 0, σ 0,, σ i, L s i, σ i,, σ j 1, L s j 1, σ j 1.
91 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Bounded Runs of UCW A UCW U accepts all computations of M iff for every computation of M every run of U visits at most U M rejecting states. Can t be any other way (as we ve seen). Well The number of visits to rejecting states is finite
92 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Specialized (Bounded) Determinization Follow all runs simultaneously. For each state count the number of visits to rejecting states it has seen so far. If number of visits exceeds maximum abort.
93 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Bounded Determinization Consider a UCW U = Σ, Q, δ, q 0, α. Determinize U for bound m by taking D = Σ, F, ρ, f 0, β, where: F = f: Q 0,, m {, } f 0 q = 0 q = q 0 Otherwise ρ f, σ q = max q q δ q, σ f q q α max q q δ q, σ 1 + f q q α here v. v, m + 1 = and + 1 = β is a safety condition: f F q Q. f q <
94 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Synchronous Composition Consider a game G = V, V 0, V 1, E, φ. Let D φ = Σ, D, δ, d 0, β be the safety automaton constructed from U φ for size m. Their synchronous parallel composition (G D φ ) is the safety game, G = V, V 0, V 1, E, γ where: V = D V a new node holds a game node and an automaton state.. E = d, v, d, v v, v E and d = δ(d, L v ) the transitions of the automaton are updated. γ d, v = β(d) acceptance only considers the acceptance of the automaton.
95 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Deterministic Automata Work (again)! Theorem. If there is a machine of size m realizing φ then P0 wins G D φ, where D φ is the deterministic automaton obtained by bounded determinization for size m. If there is a machine of size m realizing φ then this machine can be used as memory for winning G (with aim φ). All plays in the resulting game satisfy φ. The runs of U φ on them cannot visit more than m rejecting states. Adding the states of D φ alongside does not change their behavior. This is a winning strategy in G D φ.
96 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Deterministic Automata Work (again)! Theorem. If P0 wins G D φ, where D φ is the deterministic automaton obtained by bounded determinization for size m then If there is a machine of size m realizing φ then this machine can be used as memory for winning G (with aim φ). All plays in the resulting game satisfy φ. The runs of U φ on them cannot visit more than m rejecting states. Adding the states of D φ alongside does not change their behavior. This is a winning strategy in G D φ.
97 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Deterministic Automata Work (again)! Theorem. If P0 wins G D φ, where D φ is the deterministic automaton obtained by bounded determinization for size m, then φ is realizable. Use the states of D φ as memory for G with winning condition φ. Every path is accepted by D φ, which implies that it satisfies φ.
98 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Summarize Start from an LTL formula φ. Obtain a UCW U φ for φ. Construct D φ for increasing sizes. If one of the games G D φ is winning for P0 the formula is realizable. Where do I get a UCW U φ for φ? When do I stop?
99 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization From LTL to co-büchi Automata Theorem. Given an LTL formula φ we can construct a universal co-büchi automaton U φ such that L U φ = L φ. The size of U φ is exponential in the length of φ. Construct the nondeterministic Büchi automaton N φ. Think about N φ as a universal co-büchi automaton U φ.
100 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization How far should I go? We had a different solution with deterministic automaton: Theorem. P0 wins G with winning condition φ iff P0 wins G A φ, where A φ is a deterministic automaton for φ. In case that φ is realizable there is a machine realizing it with at most G A φ states. We can use G A φ as the bound (but start searching with smaller bounds ).
101 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Advantages Simple structure of states. Replace the tree structure over sets of states by a function from states to ranks. Determinization is a challenge for implementation. Safety games compared with parity games. Solution of safety games is much simpler. Exact complexity and practical solving of parity games are interesting open problems. Search for small machines first. By increasing the bound gradually we can ensure to find small implementations first (and compute less). Information from failed search for small sizes can be reused for searching for larger sizes. Worst case complexity is as the general technique.
102 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Two Ways to Avoid Determinization Replace by counting: Search for bounded strategy. Express winning through universal co-büchi auotmata. Limited determinization through counting. Concentrate on simpler specifications: Both system and environment are Büchi automata. Enforce deterministic specification. State-space exponential. Exponent linear.
103 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Take Another Look at Machines A machine M = Σ, Δ, Q, δ, q 0, L, where Σ = 2 I a finite input alphabet. Δ = 2 O a finite output alphabet. Q = 2 X a finite set of states. Express as an LTL formula over I O X: q 0 : θ = x 2 I x, L q 0, x δ(q 0, x) δ: Q Σ 2 Q : ρ = q Q,x 2 I q x L(q, x) q δ q,σ q We may want to add some good things happen often enough: i q Gi q Overall: θ ρ i q Gi q
104 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Arbiter r 1 r 2 g 1 g 2 Arbiter r n g n Client r i g i
105 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Variables: I = r 1, r 2 O = {g 1, g 2 } Initially: r 1 r 2 g 1 g 2 Transition: r 1 g 1 r 1 r 2 r 2 r 1 g 1 r 1 r 2 r 2 r 2 g 2 r 2 r 1 r 1 r 2 g 2 r 2 r 1 r 1 g 1 g 2 g 1 r 1 g 2 g 2 g 2 r 2 g 1 g 1 Good things: g 1 = r 1 (g 2 = r 2 ) Translate to LTL
106 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Separate to Assumptions and Guarantees Environment: Initially: r 1 r 2 Transition: r 1 g 1 r 1 r 2 r 2 r 1 g 1 r 1 r 2 r 2 r 2 g 2 r 2 r 1 r 1 r 2 g 2 r 2 r 1 r 1 r 1 r 1 r 2 r 2 System: Initially: g 1 g 2 Transition: g 1 g 2 g 1 r 1 g 2 g 2 g 2 r 2 g 1 g 1 g 1 g 1 g 2 g 2 Good things: g 1 = r 1 (g 2 = r 2 )
107 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization The Goal for Synthesis θ e ρ e θ s ρ s ( i G i ) This still does not look very simple Can we do anything with the bits θ e, θ s, ρ e, and ρ s? θ s can be used to restrict the initial moves of P0: For every initial input there is initial output satisfying θ s ρ s can be used to restrict the transitions of P0. What if we use θ e and ρ e to restrict the moves of P1?
108 Lecture 4: Bypassing Determinization Games and Synthesis, EATCS Young Researchers School, Telč, Summer
109 Lecture 4: Bypassing Determinization Games and Synthesis, EATCS Young Researchers School, Telč, Summer
110 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization What s left? θ e ρ e θ s ρ s ( i G i ) This is slightly more complicated than response. We call it generalized Büchi. Büchi: 1. fix (greatest := V) 2. fix (least := G cpre(greatest) 3. least := least cpre(least); 4. end // fix least 5. greatest := least; 6. end // fix greatest Generalized Büchi: 1. fix (greatest := V) 2. foreach (G i ) 3. fix (least := G i cpre(greatest) 4. least := least cpre(least); 5. end // fix least 6. greatest := least; 7. end // foreach 8. end // fix greatest
111 Lecture 4: Bypassing Determinization Proof (Generalized Büchi Soundness) Suppose that greatest is not empty. For the fixpoint to terminate, for each G i the inner fixpoint fixpoint starting from this value recomputes it. Let least i 0, least i 1, least i 2, be the sequence of values that least has through the computation of this last iteration for G i. Consider v greatest. Let j 0 be the index such that v least i j0. By definition of cpre( ), P0 can force a successor w of v. But then, w least i j1 for some j 1 < j 0. This shows that P0 can ensure to reach least i 0 = G 0 cpre(greatest). So it ensures a visit G i. i But now least 0 = G i cpre(greatest). So next P0 forces least i+1 k, for some k and repeat this process. By induction, P0 can enforce i G i. Generalized Büchi: 1. fix (greatest := V) 2. foreach (G i ) 3. fix (least := G i cpre(greatest) 4. least := least cpre(least); 5. end // fix least 6. greatest := least; 7. end // foreach 8. end // fix greatest Games and Synthesis, EATCS Young Researchers School, Telč, Summer
112 Lecture 4: Bypassing Determinization Proof (Control of Büchi - completeness) If there is a strategy f s.t. every play compliant with it wins i G i. Every node v from which f is winning remains in every approximation of the fixpoint greatest: Consider some G i. From v there is a maximum on the length of paths to reach G i cpre(greatest) (König s lemma). Prove by induction on the number of iterations in the first fixpoint that win greatest. For greatest 0 = V this is clear. Assume win greatest i. Then for every node v win it must be that v least j for the distance to reach G i cpre(win). Generalized Büchi: 1. fix (greatest := V) 2. foreach (G i ) 3. fix (least := G i cpre(greatest) 4. least := least cpre(least); 5. end // fix least 6. greatest := least; 7. end // foreach 8. end // fix greatest Games and Synthesis, EATCS Young Researchers School, Telč, Summer
113 Lecture 4: Bypassing Determinization Games and Synthesis, EATCS Young Researchers School, Telč, Summer
114 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Oops The clients do not release the bus! It s not only the system that has to do good things. The environment has to do good things as well! We need: j A j i G i We call this Generalized Reactivity (1) or GR(1).
115 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Solving GR(1) Games Generalized Reactivity (1): 1. fix (greatestz := V) 2. foreach (G i ) 3. fix (leasty := G i cpre(greatestz)) 4. leasty := leasty cpre(leasty); 5. foreach (A j ) 6. fix (greatestx := V) 7. greatestx := least ( A j cpre(greatestx)) 8. end // fix greatestx 9. leasty := leasty greatestx; 10. end // foreach A 11. end // fix leasty 12. greatestz :=leasty; 13. end // foreach G 14. end // fix greatestz
116 Lecture 4: Bypassing Determinization Proof (Control of GR(1) Soundness) Suppose that greatestz is not empty. For each G i the inner fixpoint starting from greatestz recomputes greatestz. Let leasty 0 i, leasty 1 i, leasty 2 i, be the sequence of values that leasty has during the last iteration. Each leasty k i is equal to the union of greatestx k i,1, greatestx k i,2,, greatestx k i,m. Consider v greatestz. Let k 0 be the minimal index such that i v leasty k0 and let j 0 be the minimal such that v greatestx k0 By definition of cpre, P0 can control to reach in one move i,j greatestx 1 k1 such that either (A) k 1 < k 0 or (B) k 1 = k 0 and j 1 = j 0. In case (B), we know that v A j0. So by playing this strategy, P0 can ensure that either some A is visited finitely often, or reach leasty i 0 cpre(greatestz). By repeating the same for all G i P0 can enforce j A j i G i Games and Synthesis, EATCS Young Researchers School, Telč, Summer end // fix greatestz 123 i,j fix (greatestz := V) 2. foreach (G i ) 3. fix (leasty := G i cpre(greatestz)) 4. leasty :=leasty cpre(leasty); 5. foreach (A j ) 6. fix (greatestx := V) 7. greatestx := least ( A j cpre(greate 8. end // fix greatestx 9. leasty :=leasty greatestx; 10. end // foreach A 11. end // fix leasty 12. greatestz :=leasty; 13. end // foreach G
117 Lecture 4: Bypassing Determinization Proof (Control of GR(1) completeness sketch) If there is a strategy f s.t. every play compliant with it wins j A j i G i Every v from which f is winning remains in every approximation of the fixpoint greatestz: As before, consider some G i. From v there is a maximum on the number of visits to A j before arriving to G i cpre(win) (König s lemma). Prove by induction on the number of iterations in the first fixpoint that win greatestz. For greatestz 0 = V this is clear. Assume win greatestz l. Then for every v win it must be that v leasty k i for some k. 1. fix (greatestz := V) 2. foreach (G i ) 3. fix (leasty := G i cpre(greatestz)) 4. leasty :=leasty cpre(leasty); 5. foreach (A j ) 6. fix (greatestx := V) 7. greatestx := least ( A j cpre(greate 8. end // fix greatestx 9. leasty :=leasty greatestx; 10. end // foreach A 11. end // fix leasty 12. greatestz :=leasty; 13. end // foreach G Games and Synthesis, EATCS Young Researchers School, Telč, Summer end // fix greatestz 124
118 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Ranking (again) The proof established a set of rankings for the winning states the number of assumptions met until reaching the a goal. r i : V (N A j ) Can we compute the rank iteratively? A path that visits more than A j nodes must be a losing loop. Restrict rank to r i : V ( 0,, max A j A j ). min r i (w) v V 0 v,w E best i v = max r i (w) v V 1 v,w E Rank is stable if: v G i and i. r i best i v <. v G i, v A j, r i v = (l, j), and r i best i v v G i, v A j, r i v = (l, j), and r i best i v < r i (v). r i (v).
119 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Compute Rank Directly 1. r i := λv while ( v, i. r i (v) not stable) 3. r i (v) := inc i (best(v)); 4. end // while Each v in each rank can be increased at most V A i times. By evaluating loop condition (and best) efficiently, all work can be restricted to O A i G i V E.
120 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Memorizing Intermediate Values Generalized Reactivity (1): 1. fix (greatestz := V) 2. foreach (G i ) 3. cy:= 0; 4. fix (leasty := G i cpre(greatestz)) 5. leasty := leasty cpre(leasty); 6. foreach (A j ) 7. fix (greatestx := V) 8. greatestx := least ( A j cpre(greatestx)) 9. end // fix greatestx 10. x[g i ][cy][a j ] := greatestx; 11. leasty := leasty greatestx; 12. end // foreach A 13. y[g i ][cy] := leasty; 14. cy:= cy + 1; 15. end // fix leasty 16. greatestz :=leasty; 17. end // foreach G 18. end // fix greatestz
121 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Construct the Realizing Machine θ e ρ e ( j A j ) θ s ρ s ( i G i ) Embed θ e, ρ e, θ s, and ρ s into G = V, V 0, V 1, E, φ, where φ = j A j i G i Set let m = G i and n = A i. Construct a machine M realizing φ: M = 2 I, 2 O, 2 I O 1.. m s 0, ρ, s 0, L : ρ s 0, i = θ s i θ e T i θ e ρ i, o, l, i = (i, o, l 1) i, o G l i, o win (i, o, l) i, o y[g l ][cy] i, o y[g l ][ < cy] (i, o, l) i, o A j i, o x[g l ][cy][a j ] i, o y[g l ][ cy][ A j ]
122 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Optimizing Symbolic Runtime Generalized Reactivity (1): 1. fix (greatestz := V) 2. foreach (G i ) 3. cy:= 0; 4. fix (leasty := G i cpre(greatestz)) 5. leasty := leasty cpre(leasty); 6. foreach (A j ) 7. fix (greatestx :=y[g i ][maxprev]) 8. greatestx := least ( A j cpre(greatestx)) 9. end // fix greatestx 10. x[g i ][cy][a j ] := greatestx; 11. leasty := leasty greatestx; 12. end // foreach A 13. y[g i ][cy] := leasty; 14. cy:= cy + 1; 15. end // fix leasty 16. greatestz :=leasty; 17. end // foreach G 18. end // fix greatestz
123 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Back to the Arbiter Environment: Initially: r 1 r 2 Transition: r 1 g 1 r 1 r 2 r 2 r 1 g 1 r 1 r 2 r 2 r 2 g 2 r 2 r 1 r 1 r 2 g 2 r 2 r 1 r 1 r 1 r 1 r 2 r 2 Good things: r 1 g 1 ( r 2 g 2 ) System: Initially: g 1 g 2 Transition: g 1 g 2 g 1 r 1 g 2 g 2 g 2 r 2 g 1 g 1 g 1 g 1 g 2 g 2 Good things: g 1 = r 1 (g 2 = r 2 )
124 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Result of Synthesis r 1 :0,r 2 :0,g 1 :0,g 2 :0 r 1 :0,r 2 :0,g 1 :0,g 2 :0 r 1 :0,r 2 :1,g 1 :0,g 2 :0 r 1 :0,r 2 :1,g 1 :0,g 2 :1 r 1 :0,r 2 :0,g 1 :0,g 2 :1 r 1 :1,r 2 :0,g 1 :0,g 2 :0 r 1 :1,r 2 :1,g 1 :0,g 2 :0 r 1 :1,r 2 :1,g 1 :0,g 2 :0 r 1 :1,r 2 :1,g 1 :0,g 2 :1 r 1 :1,r 2 :0,g 1 :0,g 2 :1 r 1 :1,r 2 :0,g 1 :1,g 2 :0 r 1 :1,r 2 :1,g 1 :1,g 2 :0 r 1 :0,r 2 :0,g 1 :1,g 2 :0 r 1 :0,r 2 :1,g 1 :1,g 2 :0
125 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization But why do you embed safety? We started from: θ e ρ e ( j A j ) θ s ρ s ( i G i ) And ended up with: j A j i G i with some modifications to permitted moves in 2 I O. Are the two the same? No! What s the difference? Realizability in our game implies realizability of the general formula. Other direction is not true.
126 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization What we actually do θ e θ s θ e ρ e ρ s θ e ρ e j A j i G i Lemma. If the above is realizable then the implication is realizable. Consider a computation c satisfying the above. Then, c satisfies the implication as well. 1. If c θ e then clearly c satisfies the implication. 2. If c ρ e then clearly c satisfies the implication. 3. If c j A j then clearly c satisfies the implication. 4. If c θ e, c ρ e, and c j A j then from the first conjunct c θ s, from the second conjunct c ρ s, and from the third conjunct c j G i.
127 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization What about the other direction? Well, the other direction does not hold. Example. Let x and y be Boolean input and output variables. Consider the specification: x x y x y y It is clearly realizable (just set y to false ). But x x y
128 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Are such systems interesting? The only way to realize such a system is by violating the system s safety requirement. The implication creates a dependency between the system s safety and the environment s liveness. Intuitively, the specification should not be realizable. But it is! Actually, the second one is more natural. They are different only if the environment can be forced to violate its specification. There is a way to handle the implication. It effectively reduces safety to liveness. Does not benefit from the embedding of the safety as transitions. Not going to cover.
129 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization What about saying more? The specification is composed of many parts. Conjunction on the left and conjunction on the right. What if some of these conjuncts are deterministic Buchi automata? Everything should work the same! Liveness added to the interested party.
130 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Easy way to get Deterministic Buchi Automata The past is naturally deterministic. Automata for past formulas are deterministic and acceptance free. Given a past formula,, and are easily converted to deterministic Buchi automata. Examples:
131 Lecture 4: Bypassing Determinization Games and Synthesis, EATCS Young Researchers School, Telč, Summer Some applications
132 Lecture 4: Bypassing Determinization AMBA Bus Industrial standard ARM s AMBA AHB bus High performance on-chip bus Data, address, and control signals Up to 16 masters and 16 clients Arbiter part of bus (determines control signals) Master 0 Master 1... Master 15 Client 0 Client 1... Client 15 Arbiter AMBA AHB From BGJPPW07 Games and Synthesis, EATCS Young Researchers School, Telč, Summer
133 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Generalized Buffer Tutorial model checking design from IBM. Parameterized buffer. Transfer data from n senders to 2 receivers. Senders arbitrary order. Receivers round robin.
134 Lecture 4: Bypassing Determinization Games and Synthesis, EATCS Young Researchers School, Telč, Summer
135 Lecture 4: Bypassing Determinization Games and Synthesis, EATCS Young Researchers School, Telč, Summer
136 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 4: Bypassing Determinization Bibliography 1. Safraless Decision Procedures (O. Kupferman and M.Y. Vardi), FOCS 2005, Bounded Synthesis (B. Finkbeiner and S. Schewe), STTT, Vol. 15, No. 5-6, pp , Unbeast: Symbolic Bounded Synthesis (R. Ehlers), TACAS 2011, Synthesis of Reactive(1) Designs (R. Bloem, B. Jobstmann, N. Piterman, A. Pnueli, and Y. Sa'ar), Journal of Computer and System Sciences, Vol. 78, No. 3, , Valet Parking Without a Valet (D.C. Conner, H. Kress-Gazit, H. Choset, A. Rizzi, and G.J. Pappas), Conference on Intelligent Robots and Systems 2007,
137 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 5: Practical Issues Lectures Outline Introduction Automata and Linear Temporal Logic Games and Synthesis General LTL Synthesis Bypassing Determinization Practical Issues with Synthesis
138 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 5: Practical Issues Is Implication the Right Thing? We ve seen that θ e ρ e ( j A j ) θ s ρ s ( i G i ) is handled by restricting permitted moves and solving j A j i G i Example. Let x and y be Boolean input and output variables. Consider the specification: x x y x y y It is clearly realizable (just set y to false ). But x x y
139 Lecture 5: Practical Issues Compatible Environment An environment is compatible if it does not need help to fulfil the assumptions. Stated in games form: Remove all obligations of the system. Make sure it can win only by forcing environment to lose. θ e ρ e ( j A j ) T T ( i F) Or the embedded version: θ e T θ e ρ e T θ e ρ e j A j i F Both equivalent to: θ e ρ e ( j A j ) F So we can use the same game settings. But: The environment is compatible if from every state of the modified game the system loses. For compatible environments the two are the same. Games and Synthesis, EATCS Young Researchers School, Telč, Summer
140 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 5: Practical Issues Compatibility Same θ e θ s θ e ρ e ρ s θ e ρ e j A j i G i Suppose that you win for the game with implication but lose the embedded. The winning strategy in implication uses an unsafe transition. Once the unsafe transition is crossed, the environment has a strategy that shows compatibility. Using that strategy, the environment realizes θ e ρ s i A i But then the play satisfies: θ e ρ s i A i ( ρ e θ e )
141 Lecture 5: Practical Issues Games and Synthesis, EATCS Young Researchers School, Telč, Summer
142 Lecture 5: Practical Issues Good Features Games and Synthesis, EATCS Young Researchers School, Telč, Summer Best Effort Controller: Will avoid assumptions if this is the only way to guarantee goals. Assumption Preserving: Will only avoid assumptions if it is impossible to fulfill them. In compatible environments all possible controllers are both.
143 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 5: Practical Issues Abstracting Real Time Discrete controllers are augmented with continuous controllers. The discrete model does not capture time it takes to cross a transition. How to combine?
144 Lecture 5: Practical Issues Direct Mapping Games and Synthesis, EATCS Young Researchers School, Telč, Summer States correspond to world status. A change in state corresponds to activation of continuous controller. Sense for environment actions. Upon change, activate slow controllers. Upon completion of slow controllers activate fast controllers. If something happens during execution of controller change your mind.
145 Lecture 5: Practical Issues Games and Synthesis, EATCS Young Researchers School, Telč, Summer Robot starts in region r1 with the camera off Activate the camera if and only if you see a person Visit r2
146 Lecture 5: Practical Issues Games and Synthesis, EATCS Young Researchers School, Telč, Summer
147 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 5: Practical Issues Problems with Direct Mapping Delayed response to environment changes. Fast actions wait until completion of slow actions. Unsafe continuous execution even though discrete controller is provably correct. Fast actions first: Change synthesis algorithm to ensure safety: Intermediate states in transitions. OK to complete fast before slow? Committed to a transition once part of it complete. Unable to change your mind. Even longer response time.
148 Lecture 5: Practical Issues Games and Synthesis, EATCS Young Researchers School, Telč, Summer Do not activate the camera in r1
149 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 5: Practical Issues Embedding Actions Transitions are instantaneous and states allow for time pass (timed automata ). Robot starts all continuous controllers. Environment terminates them! Every action needs a sensor for termination. All controllers start immediately. Controller active but not completed captured in the state. Discrete model captures the passage of time!
150 Lecture 5: Practical Issues Games and Synthesis, EATCS Young Researchers School, Telč, Summer camera and motion to r 2 not activated camera and motion activated, neither completed camera completed (on), motion activated camera and motion both complete
151 Games and Synthesis, EATCS Young Researchers School, Telč, Summer Lecture 5: Practical Issues Problems How to ensure continuous controllers terminate? Fairness limiting environment. Can be captured by extra state variables or... Allow transition fairness! Increased state space. Mitigated by handling transition fairness in addition to state fairness.
Synthesis of Designs from Property Specifications
Synthesis of Designs from Property Specifications Amir Pnueli New York University and Weizmann Institute of Sciences FMCAD 06 San Jose, November, 2006 Joint work with Nir Piterman, Yaniv Sa ar, Research
More informationReactive Synthesis. Swen Jacobs VTSA 2013 Nancy, France u
Reactive Synthesis Nancy, France 24.09.2013 u www.iaik.tugraz.at 2 Property Synthesis (You Will Never Code Again) 3 Construct Correct Systems Automatically Don t do the same
More informationLecture 9 Synthesis of Reactive Control Protocols
Lecture 9 Synthesis of Reactive Control Protocols Nok Wongpiromsarn Singapore-MIT Alliance for Research and Technology Richard M. Murray and Ufuk Topcu California Institute of Technology EECI, 16 May 2012
More informationLecture 7 Synthesis of Reactive Control Protocols
Lecture 7 Synthesis of Reactive Control Protocols Richard M. Murray Nok Wongpiromsarn Ufuk Topcu California Institute of Technology AFRL, 25 April 2012 Outline Review: networked control systems and cooperative
More informationBounded Synthesis. Sven Schewe and Bernd Finkbeiner. Universität des Saarlandes, Saarbrücken, Germany
Bounded Synthesis Sven Schewe and Bernd Finkbeiner Universität des Saarlandes, 66123 Saarbrücken, Germany Abstract. The bounded synthesis problem is to construct an implementation that satisfies a given
More informationGeneralized Parity Games
Generalized Parity Games Krishnendu Chatterjee 1, Thomas A. Henzinger 1,2, and Nir Piterman 2 1 University of California, Berkeley, USA 2 EPFL, Switzerland c krish@eecs.berkeley.edu, {tah,nir.piterman}@epfl.ch
More informationAutomata, Logic and Games: Theory and Application
Automata, Logic and Games: Theory and Application 1. Büchi Automata and S1S Luke Ong University of Oxford TACL Summer School University of Salerno, 14-19 June 2015 Luke Ong Büchi Automata & S1S 14-19 June
More informationFrom Nondeterministic Büchi and Streett Automata to Deterministic Parity Automata
From Nondeterministic Büchi and Streett Automata to Deterministic Parity Automata Nir Piterman Ecole Polytechnique Fédéral de Lausanne (EPFL) Abstract Determinization and complementation are fundamental
More informationA Symbolic Approach to Safety LTL Synthesis
A Symbolic Approach to Safety LTL Synthesis Shufang Zhu 1 Lucas M. Tabajara 2 Jianwen Li Geguang Pu 1 Moshe Y. Vardi 2 1 East China Normal University 2 Rice Lucas M. Tabajara (Rice University) 2 University
More informationCDS 270 (Fall 09) - Lecture Notes for Assignment 8.
CDS 270 (Fall 09) - Lecture Notes for Assignment 8. ecause this part of the course has no slides or textbook, we will provide lecture supplements that include, hopefully, enough discussion to complete
More informationSafraless Compositional Synthesis
Safraless Compositional Synthesis Orna Kupferman 1, Nir Piterman 2, and Moshe Y. Vardi 3 1 Hebrew University 2 Ecole Polytechnique Fédéral de Lausanne (EPFL) 3 Rice University and Microsoft Research Abstract.
More informationFrom Liveness to Promptness
From Liveness to Promptness Orna Kupferman Hebrew University Nir Piterman EPFL Moshe Y. Vardi Rice University Abstract Liveness temporal properties state that something good eventually happens, e.g., every
More informationLecture Notes on Emptiness Checking, LTL Büchi Automata
15-414: Bug Catching: Automated Program Verification Lecture Notes on Emptiness Checking, LTL Büchi Automata Matt Fredrikson André Platzer Carnegie Mellon University Lecture 18 1 Introduction We ve seen
More informationComputer-Aided Program Design
Computer-Aided Program Design Spring 2015, Rice University Unit 3 Swarat Chaudhuri February 5, 2015 Temporal logic Propositional logic is a good language for describing properties of program states. However,
More informationStrategy Logic. 1 Introduction. Krishnendu Chatterjee 1, Thomas A. Henzinger 1,2, and Nir Piterman 2
Strategy Logic Krishnendu Chatterjee 1, Thomas A. Henzinger 1,2, and Nir Piterman 2 1 University of California, Berkeley, USA 2 EPFL, Switzerland c krish@eecs.berkeley.edu, {tah,nir.piterman}@epfl.ch Abstract.
More informationSynthesis from Probabilistic Components
Synthesis from Probabilistic Components Yoad Lustig, Sumit Nain, and Moshe Y. Vardi Department of Computer Science Rice University, Houston, TX 77005, USA yoad.lustig@gmail.com, nain@cs.rice.edu, vardi@cs.rice.edu
More informationSafraless Compositional Synthesis
Safraless Compositional Synthesis Orna Kupferman 1, Nir Piterman 2, and Moshe Y. Vardi 3 1 Hebrew University 2 Ecole Polytechnique Fédéral de Lausanne (EPFL) 3 Rice University and Microsoft Research Abstract.
More informationRevisiting Synthesis of GR(1) Specifications
Revisiting Synthesis of GR(1) Specifications Uri Klein & Amir Pnueli Courant Institute of Mathematical Sciences, NYU Haifa Verification Conference, October 2010 What Is Synthesis? Rather than implement
More informationSemi-Automatic Distributed Synthesis
Semi-Automatic Distributed Synthesis Bernd Finkbeiner and Sven Schewe Universität des Saarlandes, 66123 Saarbrücken, Germany {finkbeiner schewe}@cs.uni-sb.de Abstract. We propose a sound and complete compositional
More informationCHURCH SYNTHESIS PROBLEM and GAMES
p. 1/? CHURCH SYNTHESIS PROBLEM and GAMES Alexander Rabinovich Tel-Aviv University, Israel http://www.tau.ac.il/ rabinoa p. 2/? Plan of the Course 1. The Church problem - logic and automata. 2. Games -
More informationTemporal Logic. Stavros Tripakis University of California, Berkeley. We have designed a system. We want to check that it is correct.
EE 244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Fall 2016 Temporal logic Stavros Tripakis University of California, Berkeley Stavros Tripakis (UC Berkeley) EE 244, Fall 2016
More informationAutomata, Logic and Games: Theory and Application
Automata, Logic and Games: Theory and Application 2 Parity Games, Tree Automata, and S2S Luke Ong University of Oxford TACL Summer School University of Salerno, 14-19 June 2015 Luke Ong S2S 14-19 June
More informationInfinite Games. Sumit Nain. 28 January Slides Credit: Barbara Jobstmann (CNRS/Verimag) Department of Computer Science Rice University
Infinite Games Sumit Nain Department of Computer Science Rice University 28 January 2013 Slides Credit: Barbara Jobstmann (CNRS/Verimag) Motivation Abstract games are of fundamental importance in mathematics
More informationGeneralized Parity Games
Generalized Parity Games Krishnendu Chatterjee Thomas A. Henzinger Nir Piterman Electrical Engineering and Computer Sciences University of California at Berkeley Technical Report No. UCB/EECS-2006-144
More informationFinitary Winning in ω-regular Games
Finitary Winning in ω-regular Games Krishnendu Chatterjee 1 and Thomas A. Henzinger 1,2 1 University of California, Berkeley, USA 2 EPFL, Switzerland {c krish,tah}@eecs.berkeley.edu Abstract. Games on
More informationIntroduction. Büchi Automata and Model Checking. Outline. Büchi Automata. The simplest computation model for infinite behaviors is the
Introduction Büchi Automata and Model Checking Yih-Kuen Tsay Department of Information Management National Taiwan University FLOLAC 2009 The simplest computation model for finite behaviors is the finite
More informationTemporal logics and explicit-state model checking. Pierre Wolper Université de Liège
Temporal logics and explicit-state model checking Pierre Wolper Université de Liège 1 Topics to be covered Introducing explicit-state model checking Finite automata on infinite words Temporal Logics and
More informationLinear Temporal Logic and Büchi Automata
Linear Temporal Logic and Büchi Automata Yih-Kuen Tsay Department of Information Management National Taiwan University FLOLAC 2009 Yih-Kuen Tsay (SVVRL @ IM.NTU) Linear Temporal Logic and Büchi Automata
More informationω-automata Automata that accept (or reject) words of infinite length. Languages of infinite words appear:
ω-automata ω-automata Automata that accept (or reject) words of infinite length. Languages of infinite words appear: in verification, as encodings of non-terminating executions of a program. in arithmetic,
More informationFrom Liveness to Promptness
From Liveness to Promptness Orna Kupferman 1, Nir Piterman 2, and Moshe Y. Vardi 3 1 Hebrew University 2 Ecole Polytechnique Fédéral de Lausanne (EPFL) 3 Rice University Abstract. Liveness temporal properties
More informationBridging the Gap between Reactive Synthesis and Supervisory Control
Bridging the Gap between Reactive Synthesis and Supervisory Control Stavros Tripakis University of California, Berkeley Joint work with Ruediger Ehlers (Berkeley, Cornell), Stéphane Lafortune (Michigan)
More informationSynthesis of Asynchronous Systems
Synthesis of Asynchronous Systems Sven Schewe and Bernd Finkbeiner Universität des Saarlandes, 66123 Saarbrücken, Germany {schewe finkbeiner}@cs.uni-sb.de Abstract. This paper addresses the problem of
More informationController Synthesis with UPPAAL-TIGA. Alexandre David Kim G. Larsen, Didier Lime, Franck Cassez, Jean-François Raskin
Controller Synthesis with UPPAAL-TIGA Alexandre David Kim G. Larsen, Didier Lime, Franck Cassez, Jean-François Raskin Overview Timed Games. Algorithm (CONCUR 05). Strategies. Code generation. Architecture
More informationMultiagent Systems and Games
Multiagent Systems and Games Rodica Condurache Lecture 5 Lecture 5 Multiagent Systems and Games 1 / 31 Multiagent Systems Definition A Multiagent System is a tuple M = AP, Ag, (Act i ) i Ag, V, v 0, τ,
More informationThe State Explosion Problem
The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis
More informationChapter 3: Linear temporal logic
INFOF412 Formal verification of computer systems Chapter 3: Linear temporal logic Mickael Randour Formal Methods and Verification group Computer Science Department, ULB March 2017 1 LTL: a specification
More informationSolving Partial-Information Stochastic Parity Games
Solving Partial-Information Stochastic Parity ames Sumit Nain and Moshe Y. Vardi Department of Computer Science, Rice University, Houston, Texas, 77005 Email: {nain,vardi}@cs.rice.edu Abstract We study
More informationRobust Controller Synthesis in Timed Automata
Robust Controller Synthesis in Timed Automata Ocan Sankur LSV, ENS Cachan & CNRS Joint with Patricia Bouyer, Nicolas Markey, Pierre-Alain Reynier. Ocan Sankur (ENS Cachan) Robust Control in Timed Automata
More informationNondeterministic finite automata
Lecture 3 Nondeterministic finite automata This lecture is focused on the nondeterministic finite automata (NFA) model and its relationship to the DFA model. Nondeterminism is an important concept in the
More informationAdvanced topic: Space complexity
Advanced topic: Space complexity CSCI 3130 Formal Languages and Automata Theory Siu On CHAN Chinese University of Hong Kong Fall 2016 1/28 Review: time complexity We have looked at how long it takes to
More informationTimo Latvala. March 7, 2004
Reactive Systems: Safety, Liveness, and Fairness Timo Latvala March 7, 2004 Reactive Systems: Safety, Liveness, and Fairness 14-1 Safety Safety properties are a very useful subclass of specifications.
More informationAbstractions and Decision Procedures for Effective Software Model Checking
Abstractions and Decision Procedures for Effective Software Model Checking Prof. Natasha Sharygina The University of Lugano, Carnegie Mellon University Microsoft Summer School, Moscow, July 2011 Lecture
More informationCISC 4090: Theory of Computation Chapter 1 Regular Languages. Section 1.1: Finite Automata. What is a computer? Finite automata
CISC 4090: Theory of Computation Chapter Regular Languages Xiaolan Zhang, adapted from slides by Prof. Werschulz Section.: Finite Automata Fordham University Department of Computer and Information Sciences
More informationAutomata, Logic and Games. C.-H. L. Ong
Automata, Logic and Games C.-H. L. Ong June 12, 2015 2 Contents 0 Automata, Logic and Games 1 0.1 Aims and Prerequisites............................... 1 0.2 Motivation.....................................
More informationDecision Procedures for CTL
Decision Procedures for CTL Oliver Friedmann and Markus Latte Dept. of Computer Science, University of Munich, Germany Abstract. We give an overview over three serious attempts to devise an effective decision
More informationSynthesis weakness of standard approach. Rational Synthesis
1 Synthesis weakness of standard approach Rational Synthesis 3 Overview Introduction to formal verification Reactive systems Verification Synthesis Introduction to Formal Verification of Reactive Systems
More informationCS256/Spring 2008 Lecture #11 Zohar Manna. Beyond Temporal Logics
CS256/Spring 2008 Lecture #11 Zohar Manna Beyond Temporal Logics Temporal logic expresses properties of infinite sequences of states, but there are interesting properties that cannot be expressed, e.g.,
More informationAutomata-Theoretic LTL Model-Checking
Automata-Theoretic LTL Model-Checking Arie Gurfinkel arie@cmu.edu SEI/CMU Automata-Theoretic LTL Model-Checking p.1 LTL - Linear Time Logic (Pn 77) Determines Patterns on Infinite Traces Atomic Propositions
More informationAutomata on Infinite words and LTL Model Checking
Automata on Infinite words and LTL Model Checking Rodica Condurache Lecture 4 Lecture 4 Automata on Infinite words and LTL Model Checking 1 / 35 Labeled Transition Systems Let AP be the (finite) set of
More informationHelsinki University of Technology Laboratory for Theoretical Computer Science Research Reports 66
Helsinki University of Technology Laboratory for Theoretical Computer Science Research Reports 66 Teknillisen korkeakoulun tietojenkäsittelyteorian laboratorion tutkimusraportti 66 Espoo 2000 HUT-TCS-A66
More informationIntegrating Induction and Deduction for Verification and Synthesis
Integrating Induction and Deduction for Verification and Synthesis Sanjit A. Seshia Associate Professor EECS Department UC Berkeley DATE 2013 Tutorial March 18, 2013 Bob s Vision: Exploit Synergies between
More informationFrom Löwenheim to Pnueli, from Pnueli to PSL and SVA
From Löwenheim to Pnueli, from Pnueli to PSL and SVA Moshe Y. Vardi Rice University Thread I: Monadic Logic Monadic Class: First-order logic with = and monadic predicates captures syllogisms. ( x)p(x),
More informationNote on winning positions on pushdown games with omega-regular winning conditions
Note on winning positions on pushdown games with omega-regular winning conditions Olivier Serre To cite this version: Olivier Serre. Note on winning positions on pushdown games with omega-regular winning
More informationFROM NONDETERMINISTIC BÜCHI AND STREETT AUTOMATA TO DETERMINISTIC PARITY AUTOMATA
Logical Methods in Computer Science Vol. 3 (3:5) 2007, pp. 1 21 www.lmcs-online.org Submitted Nov. 9, 2006 Published Aug. 14, 2007 FROM NONDETERMINISTIC BÜCHI AND STREETT AUTOMATA TO DETERMINISTIC PARITY
More informationFurther discussion of Turing machines
Further discussion of Turing machines In this lecture we will discuss various aspects of decidable and Turing-recognizable languages that were not mentioned in previous lectures. In particular, we will
More informationIC3 and Beyond: Incremental, Inductive Verification
IC3 and Beyond: Incremental, Inductive Verification Aaron R. Bradley ECEE, CU Boulder & Summit Middle School IC3 and Beyond: Incremental, Inductive Verification 1/62 Induction Foundation of verification
More informationAlternating Time Temporal Logics*
Alternating Time Temporal Logics* Sophie Pinchinat Visiting Research Fellow at RSISE Marie Curie Outgoing International Fellowship * @article{alur2002, title={alternating-time Temporal Logic}, author={alur,
More informationLanguages, logics and automata
Languages, logics and automata Anca Muscholl LaBRI, Bordeaux, France EWM summer school, Leiden 2011 1 / 89 Before all that.. Sonia Kowalewskaya Emmy Noether Julia Robinson All this attention has been gratifying
More informationTemporal Logic Model Checking
18 Feb, 2009 Thomas Wahl, Oxford University Temporal Logic Model Checking 1 Temporal Logic Model Checking Thomas Wahl Computing Laboratory, Oxford University 18 Feb, 2009 Thomas Wahl, Oxford University
More informationSOLUTION: SOLUTION: SOLUTION:
Convert R and S into nondeterministic finite automata N1 and N2. Given a string s, if we know the states N1 and N2 may reach when s[1...i] has been read, we are able to derive the states N1 and N2 may
More informationFinitary Winning in \omega-regular Games
Finitary Winning in \omega-regular Games Krishnendu Chatterjee Thomas A. Henzinger Florian Horn Electrical Engineering and Computer Sciences University of California at Berkeley Technical Report No. UCB/EECS-2007-120
More informationAdvanced Automata Theory 7 Automatic Functions
Advanced Automata Theory 7 Automatic Functions Frank Stephan Department of Computer Science Department of Mathematics National University of Singapore fstephan@comp.nus.edu.sg Advanced Automata Theory
More informationENES 489p. Verification and Validation: Logic and Control Synthesis
11/18/14 1 ENES 489p Verification and Validation: Logic and Control Synthesis Mumu Xu mumu@umd.edu November 18, 2014 Institute for Systems Research Aerospace Engineering University of Maryland, College
More informationCS 154, Lecture 2: Finite Automata, Closure Properties Nondeterminism,
CS 54, Lecture 2: Finite Automata, Closure Properties Nondeterminism, Why so Many Models? Streaming Algorithms 0 42 Deterministic Finite Automata Anatomy of Deterministic Finite Automata transition: for
More informationWeak Alternating Automata Are Not That Weak
Weak Alternating Automata Are Not That Weak Orna Kupferman Hebrew University Moshe Y. Vardi Rice University Abstract Automata on infinite words are used for specification and verification of nonterminating
More information2. Elements of the Theory of Computation, Lewis and Papadimitrou,
Introduction Finite Automata DFA, regular languages Nondeterminism, NFA, subset construction Regular Epressions Synta, Semantics Relationship to regular languages Properties of regular languages Pumping
More informationFrom MTL to Deterministic Timed Automata
From MTL to Deterministic Timed Automata Dejan Ničković 1 and Nir Piterman 1 IST, Klosterneuburg, Austria Imperial College London, London, UK Abstract. In this paper we propose a novel technique for constructing
More informationWeak Alternating Automata and Tree Automata Emptiness
Weak Alternating Automata and Tree Automata Emptiness Orna Kupferman UC Berkeley Moshe Y. Vardi Rice University Abstract Automata on infinite words and trees are used for specification and verification
More informationSynthesis of Reactive(1) Designs
Synthesis of Reactive(1) Designs Roderick Bloem a, Barbara Jobstmann b, Nir Piterman c, Amir Pnueli, Yaniv Sa ar d a Graz University of Technology, Austria b CNRS/Verimag, France c Imperial College London,
More informationGames with Costs and Delays
Games with Costs and Delays Martin Zimmermann Saarland University June 20th, 2017 LICS 2017, Reykjavik, Iceland Martin Zimmermann Saarland University Games with Costs and Delays 1/14 Gale-Stewart Games
More informationState-Space Exploration. Stavros Tripakis University of California, Berkeley
EE 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Fall 2014 State-Space Exploration Stavros Tripakis University of California, Berkeley Stavros Tripakis (UC Berkeley) EE
More informationGames with Costs and Delays
Games with Costs and Delays Martin Zimmermann Reactive Systems Group, Saarland University, 66123 Saarbrücken, Germany Email: zimmermann@react.uni-saarland.de Abstract We demonstrate the usefulness of adding
More informationPSPACE-completeness of LTL/CTL model checking
PSPACE-completeness of LTL/CTL model checking Peter Lohmann April 10, 2007 Abstract This paper will give a proof for the PSPACE-completeness of LTLsatisfiability and for the PSPACE-completeness of the
More informationRandomness for Free. 1 Introduction. Krishnendu Chatterjee 1, Laurent Doyen 2, Hugo Gimbert 3, and Thomas A. Henzinger 1
Randomness for Free Krishnendu Chatterjee 1, Laurent Doyen 2, Hugo Gimbert 3, and Thomas A. Henzinger 1 1 IST Austria (Institute of Science and Technology Austria) 2 LSV, ENS Cachan & CNRS, France 3 LaBri
More informationLTL Generalized Model Checking Revisited
LTL Generalized Model Checking Revisited Patrice Godefroid 1 and Nir Piterman 2 1 Microsoft Research 2 Imperial College London Abstract. Given a 3-valued abstraction of a program (possibly generated using
More informationLogic and Games SS 2009
Logic and Games SS 2009 Prof. Dr. Erich Grädel Łukasz Kaiser, Tobias Ganzow Mathematische Grundlagen der Informatik RWTH Aachen Contents 1 Finite Games and First-Order Logic 1 1.1 Model Checking Games
More informationAutomata, Logic and Games. C.-H. L. Ong
Automata, Logic and Games C.-H. L. Ong March 6, 2013 2 Contents 0 Automata, Logic and Games 1 0.1 Aims and Prerequisites............................... 1 0.2 Motivation.....................................
More informationLogic and Automata I. Wolfgang Thomas. EATCS School, Telc, July 2014
Logic and Automata I EATCS School, Telc, July 2014 The Plan We present automata theory as a tool to make logic effective. Four parts: 1. Some history 2. Automata on infinite words First step: MSO-logic
More informationChapter 5: Linear Temporal Logic
Chapter 5: Linear Temporal Logic Prof. Ali Movaghar Verification of Reactive Systems Spring 94 Outline We introduce linear temporal logic (LTL), a logical formalism that is suited for specifying LT properties.
More informationLTL is Closed Under Topological Closure
LTL is Closed Under Topological Closure Grgur Petric Maretić, Mohammad Torabi Dashti, David Basin Department of Computer Science, ETH Universitätstrasse 6 Zürich, Switzerland Abstract We constructively
More informationOn Synthesizing Controllers from Bounded-Response Properties
On Synthesizing Controllers from Bounded-Response Properties Oded Maler 1, Dejan Nickovic 1 and Amir Pnueli 2,3 1 Verimag, 2 Av. de Vignate, 38610 Gières, France [Dejan.Nickovic Oded.Maler]@imag.fr 2 Weizmann
More informationThe Stevens-Stirling-Algorithm For Solving Parity Games Locally Requires Exponential Time
The Stevens-Stirling-Algorithm For Solving Parity Games Locally Requires Exponential Time Oliver Friedmann Institut für Informatik, LMU München Oliver.Friedmann@googlemail.com Abstract. This paper presents
More informationState of Büchi Complementation (Full Version)
State of Büchi Complementation (Full Version) Ming-Hsien Tsai 1, Seth Fogarty 2, Moshe Y. Vardi 2, and Yih-Kuen Tsay 1 1 National Taiwan University 2 Rice University Abstract. Büchi complementation has
More informationRealizability of Real-Time Logics
Realizability of Real-Time Logics L. Doyen 1, G. Geeraerts 1, J.-F. Raskin 1, and J. Reichert 2 1 Département d Informatique, Université Libre de Bruxelles (U.L.B.) 2 École Normale Supérieure de Cachan
More informationTopics in Verification AZADEH FARZAN FALL 2017
Topics in Verification AZADEH FARZAN FALL 2017 Last time LTL Syntax ϕ ::= true a ϕ 1 ϕ 2 ϕ ϕ ϕ 1 U ϕ 2 a AP. ϕ def = trueu ϕ ϕ def = ϕ g intuitive meaning of and is obt Limitations of LTL pay pay τ τ soda
More informationThe theory of regular cost functions.
The theory of regular cost functions. Denis Kuperberg PhD under supervision of Thomas Colcombet Hebrew University of Jerusalem ERC Workshop on Quantitative Formal Methods Jerusalem, 10-05-2013 1 / 30 Introduction
More informationAutomata Theory and Model Checking
Automata Theory and Model Checking Orna Kupferman Abstract We study automata on infinite words and their applications in system specification and verification. We first introduce Büchi automata and survey
More informationAutomata and Reactive Systems
Automata and Reactive Systems Lecture WS 2002/2003 Prof. Dr. W. Thomas RWTH Aachen Preliminary version (Last change March 20, 2003) Translated and revised by S. N. Cho and S. Wöhrle German version by M.
More informationOptimal Bounds in Parametric LTL Games
Optimal Bounds in Parametric LTL Games Martin Zimmermann 1 Institute of Informatics University of Warsaw Warsaw, Poland Abstract Parameterized linear temporal logics are extensions of Linear Temporal Logic
More informationSanjit A. Seshia EECS, UC Berkeley
EECS 219C: Computer-Aided Verification Explicit-State Model Checking: Additional Material Sanjit A. Seshia EECS, UC Berkeley Acknowledgments: G. Holzmann Checking if M satisfies : Steps 1. Compute Buchi
More informationPSL Model Checking and Run-time Verification via Testers
PSL Model Checking and Run-time Verification via Testers Formal Methods 2006 Aleksandr Zaks and Amir Pnueli New York University Introduction Motivation (Why PSL?) A new property specification language,
More informationProperty Checking of Safety- Critical Systems Mathematical Foundations and Concrete Algorithms
Property Checking of Safety- Critical Systems Mathematical Foundations and Concrete Algorithms Wen-ling Huang and Jan Peleska University of Bremen {huang,jp}@cs.uni-bremen.de MBT-Paradigm Model Is a partial
More informationEECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization
EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Discrete Systems Lecture: Automata, State machines, Circuits Stavros Tripakis University of California, Berkeley Stavros
More informationSynthesis of Reactive(1) Designs
Synthesis of Reactive(1) Designs Nir Piterman 1, Amir Pnueli 2, and Yaniv Sa ar 3 1 EPFL - I&C - MTC, 1015, Lausanne, Switzerland. firstname.lastname@epfl.ch 2 Department of Computer Science, Weizmann
More informationLecture 23 : Nondeterministic Finite Automata DRAFT Connection between Regular Expressions and Finite Automata
CS/Math 24: Introduction to Discrete Mathematics 4/2/2 Lecture 23 : Nondeterministic Finite Automata Instructor: Dieter van Melkebeek Scribe: Dalibor Zelený DRAFT Last time we designed finite state automata
More informationA Survey of Partial-Observation Stochastic Parity Games
Noname manuscript No. (will be inserted by the editor) A Survey of Partial-Observation Stochastic Parity Games Krishnendu Chatterjee Laurent Doyen Thomas A. Henzinger the date of receipt and acceptance
More informationOn Model Checking Techniques for Randomized Distributed Systems. Christel Baier Technische Universität Dresden
On Model Checking Techniques for Randomized Distributed Systems Christel Baier Technische Universität Dresden joint work with Nathalie Bertrand Frank Ciesinski Marcus Größer / 6 biological systems, resilient
More informationFinite-Delay Strategies In Infinite Games
Finite-Delay Strategies In Infinite Games von Wenyun Quan Matrikelnummer: 25389 Diplomarbeit im Studiengang Informatik Betreuer: Prof. Dr. Dr.h.c. Wolfgang Thomas Lehrstuhl für Informatik 7 Logik und Theorie
More informationUnderstanding IC3. Aaron R. Bradley. ECEE, CU Boulder & Summit Middle School. Understanding IC3 1/55
Understanding IC3 Aaron R. Bradley ECEE, CU Boulder & Summit Middle School Understanding IC3 1/55 Further Reading This presentation is based on Bradley, A. R. Understanding IC3. In SAT, June 2012. http://theory.stanford.edu/~arbrad
More informationTheoretical Foundations of the UML
Theoretical Foundations of the UML Lecture 17+18: A Logic for MSCs Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group moves.rwth-aachen.de/teaching/ws-1718/fuml/ 5.
More information