on the memory consumption of probabilistic pushdown
play

On the Memory Consumption of Probabilistic Pushdown Automata Tom - PowerPoint PPT Presentation

On the Memory Consumption of Probabilistic Pushdown Automata Tom Brzdil 1 Javier Esparza 2 Stefan Kiefer 3 1 Masaryk University, Brno (Czech Republic) 2 TU Mnchen (Germany) 3 University of Oxford (UK) FSTTCS (Kanpur, India), 15 December,


  1. On the Memory Consumption of Probabilistic Pushdown Automata Tomáš Brázdil 1 Javier Esparza 2 Stefan Kiefer 3 1 Masaryk University, Brno (Czech Republic) 2 TU München (Germany) 3 University of Oxford (UK) FSTTCS (Kanpur, India), 15 December, 2009 Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  2. Probabilistic Pushdown Systems Probabilistic pushdown systems are a model for probabilistic procedural programs. 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  3. Probabilistic Pushdown Systems Probabilistic pushdown systems are a model for probabilistic procedural programs. 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε A run: X Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  4. Probabilistic Pushdown Systems Probabilistic pushdown systems are a model for probabilistic procedural programs. 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε 1 / 2 A run: X = = ≻ YX Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  5. Probabilistic Pushdown Systems Probabilistic pushdown systems are a model for probabilistic procedural programs. 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε 1 / 2 2 / 3 A run: X = = ≻ YX = = ≻ XX Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  6. Probabilistic Pushdown Systems Probabilistic pushdown systems are a model for probabilistic procedural programs. 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε 1 / 2 2 / 3 1 / 2 A run: X = = ≻ YX = = ≻ XX = = ≻ YXX Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  7. Probabilistic Pushdown Systems Probabilistic pushdown systems are a model for probabilistic procedural programs. 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε 1 / 2 2 / 3 1 / 2 1 / 3 A run: X = = ≻ YX = = ≻ XX = = ≻ YXX = = ≻ XX Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  8. Probabilistic Pushdown Systems Probabilistic pushdown systems are a model for probabilistic procedural programs. 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε 1 / 2 2 / 3 1 / 2 1 / 3 1 / 2 A run: X = = ≻ YX = = ≻ XX = = ≻ YXX = = ≻ XX = = ≻ X Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  9. Probabilistic Pushdown Systems Probabilistic pushdown systems are a model for probabilistic procedural programs. 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε 1 / 2 2 / 3 1 / 2 1 / 3 1 / 2 1 / 2 A run: X = = ≻ YX = = ≻ XX = = ≻ YXX = = ≻ XX = = ≻ X = = ≻ ε Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  10. Probabilistic Pushdown Systems Probabilistic pushdown systems are a model for probabilistic procedural programs. 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε 1 / 2 2 / 3 1 / 2 1 / 3 1 / 2 1 / 2 A run: X = = ≻ YX = = ≻ XX = = ≻ YXX = = ≻ XX = = ≻ X = = ≻ ε (no control states in this talk) Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  11. Probabilistic Pushdown Systems Probabilistic pushdown systems are a model for probabilistic procedural programs. 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε 1 / 2 2 / 3 1 / 2 1 / 3 1 / 2 1 / 2 A run: X = = ≻ YX = = ≻ XX = = ≻ YXX = = ≻ XX = = ≻ X = = ≻ ε (no control states in this talk) Quantitative Properties of a run: its probability (product of the probabilities on the arrows) its time (number of steps till ε ) its memory (longest configuration, “maximal stack height”) Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  12. Motivation Probabilistic Pushdown Systems are a model for probabilistic programs with unrestricted recursion. Well-studied: model-checking for temporal logics [Etessami, Yannakakis, Esparza, Kuˇ cera, Mayr] long-run behaviour [Brázdil, Esparza, Kuˇ cera] games [Etessami, Yannakakis] The basic quantities time and memory are random variables. This talk is about the memory. Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  13. Motivation Probabilistic Pushdown Systems are a model for probabilistic programs with unrestricted recursion. Well-studied: model-checking for temporal logics [Etessami, Yannakakis, Esparza, Kuˇ cera, Mayr] long-run behaviour [Brázdil, Esparza, Kuˇ cera] games [Etessami, Yannakakis] The basic quantities time and memory are random variables. This talk is about the memory. What is the distribution of the memory? Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  14. Computing the Distribution of the Memory What is the probability of reaching height ≥ 3? 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε Idea: Construct the Markov chain with all stacks of height ≤ 2. 1 / 2 1 / 2 2 / 3 X YX XX 1 / 3 1 / 2 1 / 2 ε ≥ 3 1 1 Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  15. Computing the Distribution of the Memory What is the probability of reaching height ≥ 3? 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε Idea: Construct the Markov chain with all stacks of height ≤ 2. Problem: There may be 2 k states with height ≤ k . 1 / 2 1 / 2 2 / 3 X YX XX 1 / 3 1 / 2 1 / 2 ε ≥ 3 1 1 Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  16. Computing the Distribution of the Memory What is the probability of reaching height ≥ 3? 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε Idea: Construct the Markov chain with all stacks of height ≤ 2. Problem: There may be 2 k states with height ≤ k . 1 / 2 1 / 2 2 / 3 Idea: X YX XX 1 / 3 The Markov chain has a regular structure. Exploit that. 1 / 2 1 / 2 ε ≥ 3 1 1 Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  17. Linear Equation Systems for the Distribution 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε Let p [ k ] X := probability of reaching height ≥ k if starting with X . Compute p [ k ] X by solving linear equations. For instance: p [ 10 ] X = 1 / 2 · ( p [ 9 ] Y + p [ 10 ] X ) + 1 / 2 · 0 p [ 10 ] Y = 2 / 3 · p [ 10 ] X + 1 / 3 · 0 Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  18. Linear Equation Systems for the Distribution 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε Let p [ k ] X := probability of reaching height ≥ k if starting with X . Compute p [ k ] X by solving linear equations. For instance: p [ 10 ] X = 1 / 2 · ( p [ 9 ] Y + t [ 9 ] Y · p [ 10 ] X ) + 1 / 2 · 0 p [ 10 ] Y = 2 / 3 · p [ 10 ] X + 1 / 3 · 0 where t [ k ] Y is the probability of terminating and having height < k . Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  19. Linear Equation Systems for the Distribution 1 / 2 2 / 3 X ֒ − − → YX Y ֒ − − → X 1 / 2 1 / 3 X ֒ − − → ε Y ֒ − − → ε Let p [ k ] X := probability of reaching height ≥ k if starting with X . Compute p [ k ] X by solving linear equations. For instance: p [ 10 ] X = 1 / 2 · ( p [ 9 ] Y + t [ 9 ] Y · p [ 10 ] X ) + 1 / 2 · 0 p [ 10 ] Y = 2 / 3 · p [ 10 ] X + 1 / 3 · 0 where t [ k ] Y is the probability of terminating and having height < k . t [ 10 ] X = 1 / 2 · t [ 9 ] Y · t [ 10 ] X + 1 / 2 · 1 t [ 10 ] Y = 2 / 3 · t [ 10 ] X + 1 / 3 · 1 Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

  20. Linear Equation Systems for the Distribution Proposition The vector p [ k ] can be computed by setting up and solving linear equation systems. It can be done in O ( k · | Γ | 3 ) arithmetic operations. Tomáš Brázdil, Javier Esparza, Stefan Kiefer Memory Consumption of Probabilistic Pushdown Automata

Recommend


More recommend