algorithms for ctl
play

Algorithms for CTL B. Srivathsan Chennai Mathematical Institute - PowerPoint PPT Presentation

Algorithms for CTL B. Srivathsan Chennai Mathematical Institute Model Checking and Systems Verification January - April 2016 1 / 22 Module 1: Adequate CTL formulae 2 / 22 Recap of CTL State formulae := true | p i | 1 2 | 1


  1. Algorithm for E ( φ 1 U φ 2 ) s … If any state is labelled with φ 2 , label it with E ( φ 1 U φ 2 ) … Repeat : Label any state with E ( φ 1 U φ 2 ) if it is labelled with φ 1 and at least one successor is labelled with E ( φ 1 U φ 2 ) until no change 11 / 16

  2. Algorithm for E ( φ 1 U φ 2 ) E ( φ 1 U φ 2 ) φ 1 s … If any state is labelled with φ 2 , label it with E ( φ 1 U φ 2 ) … Repeat : Label any state with E ( φ 1 U φ 2 ) if it is labelled with φ 1 and at least one successor is labelled with E ( φ 1 U φ 2 ) until no change 11 / 16

  3. Algorithm for E ( φ 1 U φ 2 ) E ( φ 1 U φ 2 ) E ( φ 1 U φ 2 ) φ 1 s … If any state is labelled with φ 2 , label it with E ( φ 1 U φ 2 ) … Repeat : Label any state with E ( φ 1 U φ 2 ) if it is labelled with φ 1 and at least one successor is labelled with E ( φ 1 U φ 2 ) until no change 11 / 16

  4. Part 3 : Algorithm for E G 12 / 16

  5. E G p 1 { p 1 } { p 1 } { p 1 } { } s 1 s 2 s 3 s 4 s 8 s 7 s 6 s 5 { p 1 } { p 1 } { p 1 } { } 13 / 16

  6. E G p 1 E G p 1 E G p 1 E G p 1 E G p 1 { p 1 } { p 1 } { p 1 } { } s 1 s 2 s 3 s 4 s 8 s 7 s 6 s 5 { p 1 } { p 1 } { p 1 } { } E G p 1 E G p 1 E G p 1 E G p 1 13 / 16

  7. E G p 1 E G p 1 E G p 1 E G p 1 { p 1 } { p 1 } { p 1 } { } s 1 s 2 s 3 s 4 s 8 s 7 s 6 s 5 { p 1 } { p 1 } { p 1 } { } E G p 1 E G p 1 E G p 1 13 / 16

  8. E G p 1 E G p 1 E G p 1 E G p 1 { p 1 } { p 1 } { p 1 } { } s 1 s 2 s 3 s 4 s 8 s 7 s 6 s 5 { p 1 } { p 1 } { p 1 } { } E G p 1 E G p 1 13 / 16

  9. E G p 1 E G p 1 E G p 1 { p 1 } { p 1 } { p 1 } { } s 1 s 2 s 3 s 4 s 8 s 7 s 6 s 5 { p 1 } { p 1 } { p 1 } { } E G p 1 13 / 16

  10. E G p 1 E G p 1 { p 1 } { p 1 } { p 1 } { } s 1 s 2 s 3 s 4 s 8 s 7 s 6 s 5 { p 1 } { p 1 } { p 1 } { } 13 / 16

  11. E G p 1 { p 1 } { p 1 } { p 1 } { } s 1 s 2 s 3 s 4 s 8 s 7 s 6 s 5 { p 1 } { p 1 } { p 1 } { } 13 / 16

  12. E G p 1 { p 1 } { p 1 } { p 1 } { } s 1 s 2 s 3 s 4 s 8 s 7 s 6 s 5 { p 1 } { p 1 } { p 1 } { } No state of the above transition system satisfies E G p 1 13 / 16

  13. E G p 1 { p 1 } { p 1 } { p 2 } s 6 s 1 s 2 s 5 s 4 s 3 { p 1 } { } { p 1 } 14 / 16

  14. E G p 1 E G p 1 E G p 1 E G p 1 { p 1 } { p 1 } { p 2 } s 6 s 1 s 2 s 5 s 4 s 3 { p 1 } { } { p 1 } E G p 1 E G p 1 E G p 1 14 / 16

  15. E G p 1 E G p 1 E G p 1 { p 1 } { p 1 } { p 2 } s 6 s 1 s 2 s 5 s 4 s 3 { p 1 } { } { p 1 } E G p 1 E G p 1 14 / 16

  16. E G p 1 E G p 1 E G p 1 { p 1 } { p 1 } { p 2 } s 6 s 1 s 2 s 5 s 4 s 3 { p 1 } { } { p 1 } E G p 1 14 / 16

  17. Algorithm for E G φ 15 / 16

  18. Algorithm for E G φ … Label all states with E G φ 15 / 16

  19. Algorithm for E G φ … Label all states with E G φ … If any state is not labelled with φ , delete the label E G φ 15 / 16

  20. Algorithm for E G φ … Label all states with E G φ … If any state is not labelled with φ , delete the label E G φ … Repeat : Delete the label E G φ from a state if none of its successors is labelled with E G φ until no change 15 / 16

  21. Algorithm for E G φ … Label all states with E G φ … If any state is not labelled with φ , delete the label E G φ E G φ s E G φ E G φ E G φ … Repeat : Delete the label E G φ from a state if none of its successors is labelled with E G φ until no change 15 / 16

  22. Algorithm for E G φ … Label all states with E G φ … If any state is not labelled with φ , delete the label E G φ s E G φ … Repeat : Delete the label E G φ from a state if none of its successors is labelled with E G φ until no change 15 / 16

  23. Algorithm for E G φ … Label all states with E G φ … If any state is not labelled with φ , delete the label E G φ s … Repeat : Delete the label E G φ from a state if none of its successors is labelled with E G φ until no change 15 / 16

  24. Summary Algorithms EX, EU, EG 16 / 16

  25. Module 3: Final algorithm 2 / 8

  26. CTL model-checking problem Given transition system M and a CTL formula φ , find all states of M that satisfy φ 3 / 8

  27. CTL model-checking problem Given transition system M and a CTL formula φ , find all states of M that satisfy φ … Module 1: Every CTL formula can be written using EX, EU, EG … Module 2: Labelling algorithms for EX, EU, EG 3 / 8

  28. Coming next: Generic algorithm for a CTL formula State formulae φ := true | p i | φ 1 ∧ φ 2 | ¬ φ | E X φ | E ( φ 1 U φ 2 ) | E G φ p i ∈ AP φ , φ 1 , φ 2 : State formulae 4 / 8

  29. E X E G ( p 1 ∧ p 2 ) { p 1 , p 2 } { p 1 , p 2 } s 0 { p 1 } s 3 s 6 s 2 s 1 s 5 { p 1 , p 2 } { p 1 , p 2 } { p 2 } s 4 s 7 { p 1 , p 2 } { p 1 , p 2 } 5 / 8

  30. E X E G ( p 1 ∧ p 2 ) p 1 ∧ p 2 p 1 ∧ p 2 { p 1 , p 2 } { p 1 , p 2 } s 0 { p 1 } s 3 s 6 s 2 s 1 s 5 { p 1 , p 2 } { p 1 , p 2 } { p 2 } s 4 s 7 p 1 ∧ p 2 p 1 ∧ p 2 { p 1 , p 2 } { p 1 , p 2 } p 1 ∧ p 2 p 1 ∧ p 2 5 / 8

  31. E X E G ( p 1 ∧ p 2 ) E G ( p 1 ∧ p 2 ) E G ( p 1 ∧ p 2 ) p 1 ∧ p 2 p 1 ∧ p 2 E G ( p 1 ∧ p 2 ) { p 1 , p 2 } { p 1 , p 2 } s 0 { p 1 } s 3 s 6 s 2 s 1 s 5 { p 1 , p 2 } { p 1 , p 2 } { p 2 } s 4 s 7 p 1 ∧ p 2 p 1 ∧ p 2 E G ( p 1 ∧ p 2 ) { p 1 , p 2 } { p 1 , p 2 } E G ( p 1 ∧ p 2 ) E G ( p 1 ∧ p 2 ) p 1 ∧ p 2 p 1 ∧ p 2 E G ( p 1 ∧ p 2 ) E G ( p 1 ∧ p 2 ) 5 / 8

Recommend


More recommend