The Complete Proof Theory of Hybrid Systems Andr´ e Platzer aplatzer@cs.cmu.edu Computer Science Department Carnegie Mellon University, Pittsburgh, PA 0.5 0.4 0.3 0.2 1.0 0.1 0.8 0.6 0.4 0.2 Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 1 / 29
Hybrid Systems: e.g., Car Control Challenge (Hybrid Systems) Fixed rule describing state evolution with both Continuous dynamics (differential equations) Discrete dynamics (control decisions) z v a 6 3.0 2 5 2.5 1 4 2.0 3 1.5 4 t 1 2 3 2 1.0 � 1 1 0.5 4 t 4 t � 2 1 2 3 1 2 3 Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 2 / 29
Hybrid Systems: e.g., Car Control Challenge (Hybrid Systems) Fixed rule describing state evolution with both Continuous dynamics (differential equations) Discrete dynamics (control decisions) Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 2 / 29
Successful Hybrid Systems Proofs 0 * [SB := ((amax / b + 1) * ep * v + (v ^ 2 - d ^ 2) / (2 * b) + ((amax / b + 1) * amax * ep ^ 2) / 2)] far 1 [do := d] [state := brake] [?v <= vdes] [?v >= vdes] 2 10 13 neg [mo := m] 8 [a := *] [a := *] 3 11 14 [m := *] [?a >= 0 & a <= amax] [?a <= 0 & a >= -b] 4 12 15 [d := *] cor 5 24 [vdes := *] [?m - z <= SB | state = brake] [?m - z >= SB & state != brake] * 6 17 [?d >= 0 & do ^ 2 - d ^ 2 <= 2 * b * (m - mo) & vdes >= 0] [a := -b] 19 7 18 17 28 [t := 0] rec fsa 21 [{z‘ = v, v‘ = a, t‘ = 1, v >= 0 & t <= ep}] 22 31 � � y t i x e c c c � � � e n t � r y x x y � z ¯ ϑ y 2 y � ̟ ω e x c x 2 � d x x 1 y 1 Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 3 / 29
Successful Hybrid Systems Proofs ( r x , r y ) f y ( v x , v y ) e y x b ( l x , l y ) e x f x Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 3 / 29
Proof theory: hybrid = continuous = discrete Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 4 / 29
Differential Dynamic Logic for Hybrid Systems differential dynamic logic d L = FOL R v v 2 ≤ 2 b ( M − z ) z M Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 5 / 29
Differential Dynamic Logic for Hybrid Systems differential dynamic logic d L = FOL R + DL + HP v 2 ≤ 2 b v 2 ≤ 2 b C → [ if ( z > SB ) a := − b ; z ′′ = a ] v 2 ≤ 2 b � �� � v 2 ≤ 2 b hybrid program Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 5 / 29
Differential Dynamic Logic for Hybrid Systems differential dynamic logic d L = FOL R + DL + HP v 2 ≤ 2 b v 2 ≤ 2 b C → [ if ( z > SB ) a := − b ; z ′′ = a ] v 2 ≤ 2 b � �� � v 2 ≤ 2 b hybrid program Initial System Post condition dynamics condition Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 5 / 29
Differential Dynamic Logic d L : Syntax Definition (Hybrid program α ) x := θ | ? H | x ′ = f ( x ) & H | α ∪ β | α ; β | α ∗ Definition (d L Formula φ ) θ 1 ≥ θ 2 | ¬ φ | φ ∧ ψ | ∀ x φ | ∃ x φ | [ α ] φ | � α � φ Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 6 / 29
Differential Dynamic Logic d L : Syntax Discrete Differential Seq. Nondet. Test Nondet. Assign Equation Compose Repeat Condition Choice Definition (Hybrid program α ) x := θ | ? H | x ′ = f ( x ) & H | α ∪ β | α ; β | α ∗ Definition (d L Formula φ ) θ 1 ≥ θ 2 | ¬ φ | φ ∧ ψ | ∀ x φ | ∃ x φ | [ α ] φ | � α � φ All Some All Some Reals Reals Runs Runs Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 6 / 29
Differential Dynamic Logic d L : Semantics Definition (Hybrid program α ) ρ ( x := θ ) = { ( v , w ) : w = v except [ [ x ] ] w = [ [ θ ] ] v } ρ (? H ) = { ( v , v ) : v | = H } ρ ( x ′ = f ( x )) = { ( ϕ (0) , ϕ ( r )) : ϕ | = x ′ = f ( x ) for some duration r } ρ ( α ∪ β ) = ρ ( α ) ∪ ρ ( β ) ρ ( α ; β ) = ρ ( β ) ◦ ρ ( α ) � ρ ( α n ) ρ ( α ∗ ) = n ∈ N Definition (d L Formula φ ) v | = θ 1 ≥ θ 2 iff [ [ θ 1 ] ] v ≥ [ [ θ 2 ] ] v v | = [ α ] φ iff w | = φ for all w with ( v , w ) ∈ ρ ( α ) v | = � α � φ iff w | = φ for some w with ( v , w ) ∈ ρ ( α ) v | = ∀ x φ iff w | = φ for all w that agree with v except for x v | = ∃ x φ iff w | = φ for some w that agrees with v except for x v | = φ ∧ ψ iff v | = φ and v | = ψ Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 7 / 29 v | = ¬ φ iff v | = φ does not hold
Differential Dynamic Logic d L : Axiomatization [:=] [ x := θ ] φ ( x ) ↔ φ ( θ ) [?] [? H ] φ ↔ ( H → φ ) [ x ′ = f ( x )] φ ↔ ∀ t ≥ 0 [ x := y ( t )] φ [ ′ ] ( y ′ ( t ) = f ( y )) [ ∪ ] [ α ∪ β ] φ ↔ [ α ] φ ∧ [ β ] φ [;] [ α ; β ] φ ↔ [ α ][ β ] φ [ ∗ ] [ α ∗ ] φ ↔ φ ∧ [ α ][ α ∗ ] φ K [ α ]( φ → ψ ) → ([ α ] φ → [ α ] ψ ) [ α ∗ ]( φ → [ α ] φ ) → ( φ → [ α ∗ ] φ ) I C [ α ∗ ] ∀ v > 0 ( ϕ ( v ) → � α � ϕ ( v − 1)) → ∀ v ( ϕ ( v ) → � α ∗ �∃ v ≤ 0 ϕ ( v )) Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 8 / 29
Differential Dynamic Logic d L : Axiomatization φ G [ α ] φ φ → ψ φ MP ψ φ ∀ ∀ x φ Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 8 / 29
Differential Dynamic Logic d L : Axiomatization φ G [ α ] φ φ → ψ φ MP ψ φ ∀ ∀ x φ B ∀ x [ α ] φ → [ α ] ∀ x φ ( x �∈ α ) φ → [ α ] φ ( FV ( φ ) ∩ BV ( α ) = ∅ ) V Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 8 / 29
x ′ Differential Dynamic Logic d L : Axiomatization 0 = 1 [ x ′ = f ( x ) & H ] φ [&] [ x ′ = f ( x )] � � ↔ φ x w x ) f ( ′ = x φ H t r Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 9 / 29
x ′ Differential Dynamic Logic d L : Axiomatization 0 = 1 [ x ′ = f ( x ) & H ] φ [&] [ x ′ = f ( x )] � � ↔ φ x ¬ φ w x ) f ( ′ = x H t r Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 9 / 29
x ′ Differential Dynamic Logic d L : Axiomatization 0 = 1 [ x ′ = f ( x ) & H ] φ [&] [ x ′ = f ( x )] [ x ′ = − f ( x )]( H ) → φ � � ↔ x ¬ φ w revert flow, x ) f ( ′ = x check H backwards ¬ H H t r Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 9 / 29
x ′ Differential Dynamic Logic d L : Axiomatization 0 = 1 [ x ′ = f ( x ) & H ] φ [&] [ x ′ = f ( x )] [ x ′ = − f ( x )]( H ) → φ � � ↔ x w x ) f ( ′ = x revert flow, check H backwards H x ′ = − f ( x ) ¬ H t r Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 9 / 29
x ′ Differential Dynamic Logic d L : Axiomatization 0 = 1 [ x ′ = f ( x ) & H ] φ [&] ↔ ∀ t 0 = x 0 [ x ′ = f ( x )] [ x ′ = − f ( x )]( x 0 ≥ t 0 → H ) → φ � � x w x ) f ( ′ = x revert flow, time x 0 ; check H backwards H x ′ = − f ( x ) t r t 0 = x 0 Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 9 / 29
“There and Back Again” Axiom of d L [ x ′ = f ( x ) & H ] φ [&] ↔ ∀ t 0 = x 0 [ x ′ = f ( x )] [ x ′ = − f ( x )]( x 0 ≥ t 0 → H ) → φ � � x w x ) f ( ′ = x revert flow, time x 0 ; check H backwards H x ′ = − f ( x ) t r t 0 = x 0 Lemma Evolution domain axiomatizable Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 9 / 29
Soundness Theorem (Soundness) d L calculus is sound, i.e., all provable d L formulas are valid: ⊢ φ implies � φ What about the converse? Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 10 / 29
Soundness Theorem (Soundness) d L calculus is sound, i.e., all provable d L formulas are valid: ⊢ φ implies � φ What about the converse? ( s := s + 2 n + 1; n := n + 1) ∗ s = n 2 � Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 10 / 29
Soundness Theorem (Soundness) d L calculus is sound, i.e., all provable d L formulas are valid: ⊢ φ implies � φ What about the converse? ( s := s + 2 n + 1; n := n + 1) ∗ s = n 2 � x ′ = 5 x ( t ) = 5 t + x 0 � Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 10 / 29
Soundness Theorem (Soundness) d L calculus is sound, i.e., all provable d L formulas are valid: ⊢ φ implies � φ What about the converse? ( s := s + 2 n + 1; n := n + 1) ∗ s = n 2 � x ′ = 5 x ( t ) = 5 t + x 0 � x ′ = x x ( t ) = x 0 e t � Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 10 / 29
Soundness Theorem (Soundness) d L calculus is sound, i.e., all provable d L formulas are valid: ⊢ φ implies � φ What about the converse? ( s := s + 2 n + 1; n := n + 1) ∗ s = n 2 � x ′ = 5 x ( t ) = 5 t + x 0 � x ′ = x x ( t ) = x 0 e t � x ′′ = − x x ( t ) = x 0 cos t + x ′ 0 sin t � Andr´ e Platzer (CMU) The Complete Proof Theory of Hybrid Systems LICS 10 / 29
Recommend
More recommend