the quest for average response time
play

The Quest for Average Response Time Tom Henzinger IST Austria - PowerPoint PPT Presentation

The Quest for Average Response Time Tom Henzinger IST Austria Joint work with Krishnendu Chatterjee and Jan Otop Observations r request g grant t tick x neither = {r,g,t,x} Behaviors = Observation Sequences x t t x x r x x t x x x r


  1. The Quest for Average Response Time Tom Henzinger IST Austria Joint work with Krishnendu Chatterjee and Jan Otop

  2. Observations r request g grant t tick x neither § = {r,g,t,x}

  3. Behaviors = Observation Sequences x t t x x r x x t x x x r x t x t x x t g r t t g g x t x t x … r t t t t …

  4. Behaviors = Observation Sequences x t t x x r x x t x x x r x t x t x x t g r t t g g x t x t x … 4,3,2 r t t t t … 1

  5. Response Property g r,t,x g,t,x r

  6. Response Monitor S r r,t,x g,t,x S g

  7. Bounded Response C · 3 r,x g g,t,x r t C := 0 C := C+1

  8. Bounded Response C · 3 r,x g g g,t,x C > 3 r t C := 0 C := C+1 (Discrete) clocks exponentially succinct, but not more expressive than finite state.

  9. Bounded Response Monitor S C := 0 r t r,x g,t,x C := C+1 S g C · 3

  10. Maximal Response V := 0 V := max(V,C) r,x g g,t,x r t C := C+1 C := 0

  11. Maximal Response Monitor S V := 0 V := 0 r,x r t g,t,x V := V+1 V := max(V, ) S g

  12. Average Response V := 0 N := 0 V := avg(V,C,N) r,x g g,t,x r t C := C+1 C := 0 N := N+1 avg(V,C,N) = (V¢(N-1)+C)/N

  13. Average Response V := 0 N := 0 V := avg(V,C,N) r,x g g,t,x r t C := C+1 C := 0 N := N+1 Technically, limavg is liminf of avg. avg(V,C,N) = (V¢(N-1)+C)/N

  14. Average Response Monitor S V := 0 N := 0 V := 0 r,x r t g,t,x V := V+1 V := avg(V, ,N) S N := N+1 g

  15. Deterministic qualitative automaton A: § ! ! B Deterministic quantitative automaton A: § ! ! R ! = x t t x x r x x t x x x r x t x t x x t g r t t g g x t x t x … Response(!) = 1 BoundedResponse(!) = 0 MaximalResponse(!) = 4 AverageResponse(!) = 3

  16. Nondeterministic qualitative automaton A: § ! ! B A(!) = max{ value( ½ ) | ½ run of A and obs( ½ ) = ! } Nondeterministic quantitative automaton A: § ! ! R A(!) = inf{ value( ½ ) | ½ run of A and obs( ½ ) = ! } Functional automaton: obs( ½ 1 ) = obs( ½ 2 ) ) value( ½ 1 ) = value( ½ 2 ) Deterministic automata are functional.

  17. Nonfunctional Automaton r,g,t,x t t

  18. Nondeterministic qualitative automaton A: § ! ! B A(!) = max{ value( ½ ) | ½ run of A and obs( ½ ) = ! } Emptiness: 9w. A(w) = 1 Universality: 8w. A(w) = 1 Nondeterministic quantitative automaton A: § ! ! R A(!) = inf{ value( ½ ) | ½ run of A and obs( ½ ) = ! } Emptiness: 9 w. A(w) · ¸ Universality: 8 w. A(w) · ¸ Functional automaton: obs( ½ 1 ) = obs( ½ 2 ) ) value( ½ 1 ) = value( ½ 2 ) Deterministic automata are functional.

  19. System = Labeled Graph r x r g t t t x g x x t t x t g t defines set of behaviors

  20. Qualitative Analysis Given a system A and a qualitative property B, Q1. does some run of A correspond to a run of B ? [emptiness of A £ B ] Q2. does every run of A correspond to a run of B ? [as hard as universality of B ]

  21. Qualitative Analysis Given a system A and a qualitative property B, Q1. does some run of A correspond to a run of B ? [emptiness of A £ B ] Q2. does every run of A correspond to a run of B ? Equivalently: does some run of A correspond to a run of :B ? [emptiness of A £ :B ] For deterministic B (e.g. monitors), :B is easy to compute.

  22. Quantitative Analysis Given a system A and a quantitative property B, Q1. does some run of A correspond to a run of B with value V · ¸ ? [emptiness of A £ B ] Q2. does every run of A correspond to a run of B with V · ¸ ? [as hard as universality of B ]

  23. Quantitative Analysis Given a system A and a quantitative property B, Q1. does some run of A correspond to a run of B with value V · ¸ ? [emptiness of A £ B ] Q2. does every run of A correspond to a run of B with V · ¸ ? For functional B (e.g. monitors), equivalently: does some run of A correspond to a run of B with V > ¸ ? [emptiness of A £ -B ]

  24. Probabilistic System = Markov Chain r 0.2 r x 0.3 g 0.5 t t x t 0.5 x g x 0.5 t t x t g defines probability for every finite observation sequence t

  25. Probabilistic System = Markov Chain r 0.2 r x 0.3 g 0.5 t t x t 0.5 x g x 0.5 t t x t g Every functional quantitative defines probability for every automaton defines a random finite observation sequence t variable V over this space.

  26. Probabilistic Analysis Given a probabilistic system A and a functional quantitative property B, Q1. compute the expected value of V on the runs of A £ B [moment analysis] Q2. compute the probability of V · ¸ on the runs of A £ B [distribution analysis]

  27. Example r r t t t g r t t g t t g t

  28. Example r r Best maximal response time: 2 Worst maximal response time: 3 t t Emptiness of (max,inc) automata t g r t t g t t g t

  29. Example r r Best maximal response time: 2 Worst maximal response time: 3 t t Emptiness of (max,inc) automata t g r t t Best average response time: 1.5 g Worst average response time: 3 t Emptiness of (avg,inc) automata t g t

  30. Probabilistic Example 0.5 0.5 r r t t t g r t t g t t g t

  31. Probabilistic Example 0.5 0.5 r r Expected maximal response time: 2.5 t t Prob of maximal response time at most 2: 0.5 t g Probabilistic analysis of (max,inc) automata r t t g t t g t

  32. Probabilistic Example 0.5 0.5 r r Expected maximal response time: 2.5 t t Prob of maximal response time at most 2: 0.5 t g Probabilistic analysis of (max,inc) automata r t t g Expected average response time: 2.25 Prob of average response time at most 2: 0.5 t Probabilistic analysis of (avg,inc) automata t g t

  33. (max,inc) automata: Master automaton maintains the sup of values returned by slaves (1 max register). Each slave automaton counts occurrences of t (1 inc register). (avg,inc) automata: Master automaton maintains the limavg of values returned by slaves. Slaves as above. Both are special cases of nested weighted automata.

  34. Results on (max,inc) Automata Functional (max,inc) (max,inc) Emptiness PSPACE PSPACE Universality · EXPSPACE PSPACE ¸ PSPACE Expectation · EXPSPACE ¸ PSPACE Probability · EXPSPACE ¸ PSPACE

  35. Results on (avg,inc) Automata Functional Bounded width Constant width (avg,inc) (avg,inc) (avg,inc) (avg,inc) Emptiness · EXPSPACE · EXPSPACE PSPACE PTIME ¸ PSPACE ¸ PSPACE Universality undecidable · EXPSPACE PSPACE PTIME ¸ PSPACE Expectation PTIME Probability PTIME

  36. Matching Requests and Grants 5,5,5 r t r t r t t t g t g t g

  37. Matching Requests and Grants 5,5,5 r t r t r t t t g t g t g 7,5,3

  38. Counter Machine S V := 0 V := 0 C := 0 x r C := C+1 r g,t,x V := max(V, ) S t V := V+1 g g C > 0 C = 0 C := C-1

  39. Counter Monitor S V := 0 V := 0 x r V := V+1 t r,g,x V := max(V, ) S g V := V-1 t

  40. Counter Monitor S V := 0 V := 0 x r V := V+1 t r,g,x V := max(V, ) S g V := V-1 t width = 1

  41. Register Automaton V := 0 C := 0 x r C := C+1 g t C := C-1 V := max(V,C) C := 0 [Alur et al.]

  42. Results on (max,inc+dec) Automata Functional (max,inc+dec) (max,inc+dec) Emptiness PSPACE PSPACE Universality undecidable undecidable Expectation undecidable Probability undecidable

  43. Results on (avg,inc+dec) Automata Functional Bounded width Constant width (avg,inc+dec) (avg,inc+dec) (avg,inc) (avg,inc) Emptiness open open PSPACE PTIME Universality undecidable open PSPACE PTIME Expectation PTIME Probability PTIME

  44. Quantitative Monitors = Nested Weighted Automata Unbounded width allows for natural decomposition of specifications (incl. average response time) More expressive than unnested weighted automata: (avg,inc) more expressive than avg More succinct than unnested weighted automata: flattening, when possible, can cause exponential Emptiness decidable and sufficient for verification of functional monitors, model measuring, and model repair (universality often undecidable, even for constant width) Probabilistic analysis polynomial for functional (avg,inc+dec)

  45. Model Measuring: How much can system A be perturbed without violating qualitative property B ? Model Repair: How much must system A be changed to satisfy qualitative property B ?

  46. Model Measuring: How much can system A be perturbed without violating qualitative property B ? Model Repair: How much must system A be changed to satisfy qualitative property B ? For an observation sequence ! we can define a distance d(A,!) by constructing from A a quantitative automaton F A such that F A (!) = d(A,!). Then d(A,A’) = sup{ d(A,!) | ! 2 L(A’) }. Robustness of A with respect to B: exp(A,B) = sup{ e | d(A,A’) · e ) L(A’) µ L(B) }.

  47. References Nested Weighted Automata: LICS 2015 Quantitative Automata under Probabilistic Semantics: LICS 2016 Nested Weighted Automata of Bounded Width: submitted From Model Checking to Model Measuring: CONCUR 2013

Recommend


More recommend