Formal Verification using Parity Games Mathias N. Justesen DTU - PowerPoint PPT Presentation
Formal Verification using Parity Games Mathias N. Justesen DTU Compute, Technical University of Denmark (DTU) Overview Background Many problems within formal verification can be reduced to solving parity games Model checking (Stirling,
Formal Verification using Parity Games Mathias N. Justesen DTU Compute, Technical University of Denmark (DTU)
Overview Background • Many problems within formal verification can be reduced to solving parity games • Model checking (Stirling, 1995) • Controller synthesis (Arnold et al. , 2003) • Satisfiability (Friedmann & Lange, 2009b) 2 DTU Compute Formal Verification using Parity Games, NWPT 2015
Overview Background • Many problems within formal verification can be reduced to solving parity games • Model checking (Stirling, 1995) • Controller synthesis (Arnold et al. , 2003) • Satisfiability (Friedmann & Lange, 2009b) • Practical work restricted to model checking • mCRL2 and LTSmin • PBES to parity game 2 DTU Compute Formal Verification using Parity Games, NWPT 2015
Overview Background • Many problems within formal verification can be reduced to solving parity games • Model checking (Stirling, 1995) • Controller synthesis (Arnold et al. , 2003) • Satisfiability (Friedmann & Lange, 2009b) • Practical work restricted to model checking • mCRL2 and LTSmin • PBES to parity game • Verification framework based on parity game solving 2 DTU Compute Formal Verification using Parity Games, NWPT 2015
Overview Framework Controller synthesis Controller 3. Backend Satisfiability Parity game Truth assignment Solution Constructive proof Model checking Counter-example 1. 2. 3 DTU Compute Formal Verification using Parity Games, NWPT 2015
Overview Framework Controller synthesis Controller 3. Backend Satisfiability Parity game Truth assignment Solution Constructive proof Model checking Counter-example 1. 2. 1 Model-checking for the modal µ -calculus • Semantics based on evaluation games • Conversion from evaluation game to parity game 3 DTU Compute Formal Verification using Parity Games, NWPT 2015
Overview Framework Controller synthesis Controller 3. Backend Satisfiability Parity game Truth assignment Solution Constructive proof Model checking Counter-example 1. 2. 1 Model-checking for the modal µ -calculus • Semantics based on evaluation games • Conversion from evaluation game to parity game 2 Use solution to construct proof or counter-example 3 DTU Compute Formal Verification using Parity Games, NWPT 2015
Overview Framework Controller synthesis Controller 3. Backend Satisfiability Parity game Truth assignment Solution Constructive proof Model checking Counter-example 1. 2. 1 Model-checking for the modal µ -calculus • Semantics based on evaluation games • Conversion from evaluation game to parity game 2 Use solution to construct proof or counter-example 3 Backend based on PGSolver • Solve parity games in normal form 3 DTU Compute Formal Verification using Parity Games, NWPT 2015
Parity Game 6 2 3 7 4 5 8 1 Player 0 Player 1 4 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Model Checking • M | = ϕ ? 5 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Model Checking • M | = ϕ ? • M is a Labelled Transition System a b s 0 s 1 p p , q a 5 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Model Checking • M | = ϕ ? • M is a Labelled Transition System a b s 0 s 1 p p , q a • Formulas of modal µ -calculus given proposition variables P and actions A : ϕ ::= ⊤ | ⊥ | p | ¬ p | ϕ ∧ ϕ | ϕ ∨ ϕ | � a � ϕ | [ a ] ϕ | µ x .ϕ | ν x .ϕ where p , x ∈ P and a ∈ A 5 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 Player 0: Prove x , s 0 x , s 1 Player 1: Disprove p ∨ [ a ] x , s 1 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 6 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 Player 0: Prove x , s 0 x , s 1 Player 1: Disprove p ∨ [ a ] x , s 1 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 6 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 Player 0: Prove x , s 0 x , s 1 Player 1: Disprove p ∨ [ a ] x , s 1 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 6 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 Player 0: Prove x , s 0 x , s 1 Player 1: Disprove p ∨ [ a ] x , s 1 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 6 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 Player 0: Prove x , s 0 x , s 1 Player 1: Disprove p ∨ [ a ] x , s 1 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 6 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 Player 0: Prove x , s 0 x , s 1 Player 1: Disprove p ∨ [ a ] x , s 1 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 6 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 Player 0: Prove x , s 0 x , s 1 Player 1: Disprove p ∨ [ a ] x , s 1 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 6 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 Player 0: Prove x , s 0 x , s 1 Player 1: Disprove p ∨ [ a ] x , s 1 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 6 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 Player 0: Prove x , s 0 x , s 1 Player 1: Disprove p ∨ [ a ] x , s 1 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 6 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 Player 0: Prove x , s 0 x , s 1 Player 1: Disprove p ∨ [ a ] x , s 1 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 6 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 Player 0: Prove x , s 0 x , s 1 Player 1: Disprove p ∨ [ a ] x , s 1 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 6 DTU Compute Formal Verification using Parity Games, NWPT 2015
Modal µ -calculus Evaluation Game a a µ x . p ∨ [ a ] x , s 0 M , s 0 | = ϕ iff ( ϕ, s 0 ) ∈ W 0 0 a s 0 s 1 p Constructive proof or counter-example p ∨ [ a ] x , s 0 by the strategy of the winning player 0 µ x . p ∨ [ a ] x p , s 0 [ a ] x , s 0 1 0 Player 0: Prove x , s 0 x , s 1 1 1 Player 1: Disprove p ∨ [ a ] x , s 1 0 Construction cf. (Venema, 2008) p , s 1 [ a ] x , s 1 2 0 7 DTU Compute Formal Verification using Parity Games, NWPT 2015
Recommend
More recommend
Explore More Topics
Stay informed with curated content and fresh updates.