SLIDE 1
02291: System Integration Symbolic Model Checking Hubert Baumeister - - PowerPoint PPT Presentation
02291: System Integration Symbolic Model Checking Hubert Baumeister - - PowerPoint PPT Presentation
02291: System Integration Symbolic Model Checking Hubert Baumeister huba@dtu.dk DTU Compute Technical University of Denmark Spring 2020 Model Checking M | = Models M are Kripke structures Formulas are Computational Tree Logic
SLIDE 2
SLIDE 3
How to compute [|φ|]?
Minimal set of operators
CTL formulae can be basically reduced to
- a. p, ¬φ, φ ∨ ψ
- b. EX φ
- c. EG φ
For example ◮ AG φ can be expressed as ¬EF ¬φ
SLIDE 4
How to compute [|φ|]?
a [|p|] = {s | p ∈ λ(s)} for basic propositions p ∈ V b [|¬φ|] = S \ [|φ|] c [|EX φ|] = R−1([|φ|]) = {s | ∃t : (s, t) ∈ R and t ∈ [|φ|]} d [|EG φ|] = [|φ|] ∩ R−1([|EG φ|])
◮ EG φ ⇔ φ ∧ EX EG φ ◮ We are looking for the greatest fixpoint of this equation ◮ Kleene’s fixpoint theorem allows to compute the greatest fixpoint by
1 π0 = S 2 π1 = [|φ|] ∩ R−1(π0) . . . n πn = [|φ|] ∩ R−1(πn−1) → πm is the greatest fixpoint if πm = πm−1
SLIDE 5
Greatest fixpoint
∃S ⊆ N : S = S ∩ {3}
SLIDE 6
Example: EG y
π0 = S
SLIDE 7
Example: EG y: 1. Iteration
π1 = [|y|] ∩ R−1(π0)
SLIDE 8
Example: EG y: 1. Iteration
π1 = [|y|] ∩ R−1(π0)
SLIDE 9
Example: EG y: 1. Iteration
π1 = [|y|] ∩ R−1(π0)
SLIDE 10
Example: EG y: 1. Iteration
π1 = [|y|] ∩ R−1(π0)
SLIDE 11
Example: EG y: 2. Iteration
π2 = [|y|] ∩ R−1(π1)
SLIDE 12
Example: EG y: 2. Iteration
π2 = [|y|] ∩ R−1(π1)
SLIDE 13
Example: EG y: 2. Iteration
π2 = [|y|] ∩ R−1(π1)
SLIDE 14
Example: EG y: 2. Iteration
π2 = [|y|] ∩ R−1(π1)
SLIDE 15
Example: EG y: 3. Iteration
π3 = [|y|] ∩ R−1(π2)
SLIDE 16
Example: EG y: 3. Iteration
π3 = [|y|] ∩ R−1(π2)
SLIDE 17
Example: EG y: 3. Iteration
π3 = [|y|] ∩ R−1(π2)
SLIDE 18
Example: EG y: 3. Iteration
π3 = [|y|] ∩ R−1(π2)
SLIDE 19
Example: EG y: Conclusion
◮ π3 = π2 is the greatest fixpoint ◮ [|EG y|] = {s0, s2, s4}, i.e., EG y holds for states s0, s2, and s4 ◮ M | = EG y because I = {s0, s1} ⊆ [|EG y|]
SLIDE 20
Model checking
◮ Press button technology
◮ Spin, Upaal, . . .
◮ Problems
◮ Finite state space ◮ State explosion
◮ UML and Model checking
◮ State machines = Kripke structures
SLIDE 21
Advanced reading
◮ Kenneth L. McMillan’s thesis on ”Symbolic Model Checking” http://www.kenmcmil.com/thesis.html 1999 ◮ E. Clarke, O. Grumberg, D. Peled ”Model Checking” MIT Press1999 ◮ EM Clarke, BH Schlingloff ”Model Checking” Chapter 21 in Handbook of Automated Reasoning - Elsevier Science Publishers BV, Amsterdam, The Netherlands, 2000 http://www2.informatik.hu-berlin.de/˜hs/ Publikationen/2000_Handbook-of-Automated-Reasoning_ Clarke-Schlingloff_Model-Checking.ps ◮ St. Merz ”Model Checking: A Tutorial Overview” http://www.loria.fr/˜merz/papers/mc-tutorial.pdf 2001
SLIDE 22