real world verification
play

Real World Verification Andr Platzer 1 Jan-David Quesel 2 Philipp - PowerPoint PPT Presentation

Real World Verification Andr Platzer 1 Jan-David Quesel 2 Philipp Rmmer 3 1 Carnegie Mellon University, Computer Science Department 2 University of Oldenburg, Department of Computing Science 3 Oxford University Computing Laboratory 22nd


  1. Real World Verification André Platzer 1 Jan-David Quesel 2 Philipp Rümmer 3 1 Carnegie Mellon University, Computer Science Department 2 University of Oldenburg, Department of Computing Science 3 Oxford University Computing Laboratory 22nd International Conference on Automated Deduction 7 August 2009 1 / 18

  2. Outline Motivation, real world applications Survey of real world methods New procedure: Gröbner bases for the Real Nullstellensatz decides quantifier-free real arithmetic Empirical evaluation: Comparison of various decision procedures for real arithmetic Conclusion 2 / 18

  3. Motivation + applications Verification in the KeYmaera system: Hybrid systems Mathematical algorithms in real or floating-point arithmetic Geometric problems ¯ ϑ y 2 ̟ ω e x 2 d x 1 y 1 3 / 18

  4. KeYmaera 4 / 18

  5. Overall verification approach 5 / 18

  6. Overall verification approach 5 / 18

  7. Short history of symbolic methods in real arithmetic 1930 First quantifier elimination procedure by Tarski (Non-elementary) 1965 Buchberger introduces Gröbner bases 1973 Real Nullstellensatz and Positivstellensatz by Stengle 1975 Cylindrical algebraic decomposition (CAD) by Collins (Doubly exponential) 1983 Cohen-Hörmander elimination procedure 2003 Parrilo introduces semidefinite programming for the Posi- tivstellensatz (Later refined by Harrison) 2005 Tiwari’s polynomial simplex method 6 / 18

  8. Short history of symbolic methods in real arithmetic 1930 First quantifier elimination procedure by Tarski (Non-elementary) 1965 Buchberger introduces Gröbner bases 1973 Real Nullstellensatz and Positivstellensatz by Stengle 1975 Cylindrical algebraic decomposition (CAD) by Collins (Doubly exponential) 1983 Cohen-Hörmander elimination procedure 2003 Parrilo introduces semidefinite programming for the Posi- tivstellensatz (Later refined by Harrison) 2005 Tiwari’s polynomial simplex method 6 / 18

  9. Gröbner bases for quantifier-free real arithmetic 7 / 18

  10. Gröbner bases for quantifier-free real arithmetic Inequalities and disequations can be eliminated: f � = g ≡ ∃ z . ( f − g ) z = 1 ∃ z . f − g = z 2 f ≥ g ≡ ∃ z . ( f − g ) z 2 = 1 f > g ≡ 7 / 18

  11. Gröbner bases for quantifier-free real arithmetic Goal: prove unsatisfiability of: � t i = 0 i 7 / 18

  12. Gröbner bases for quantifier-free real arithmetic Witnesses for unsatisfiability: � � � � s i t i = 1 = ⇒ t i = 0 unsatisfiable i i How to determine coefficients s i ? 7 / 18

  13. Gröbner bases for quantifier-free real arithmetic Witnesses for unsatisfiability: � � � � s i t i = 1 = ⇒ t i = 0 unsatisfiable i i How to determine coefficients s i ? Need some more notation: Ideal generated by { t 1 , . . . , t n } ⊆ ◗ [ X 1 , . . . , X n ] : � � � ( t 1 , . . . , t n ) = s i t i | s 1 , . . . , s n ∈ ◗ [ X 1 , . . . , X n ] i 7 / 18

  14. Gröbner bases for quantifier-free real arithmetic Gröbner bases to solve the ideal membership problem: Monomial ordering ≺ : admissible total well-founded ordering on monomials Reduction of a polynomial s w.r.t. B = { t 1 , . . . , t n } : s ≻ s + u 1 t i 1 ≻ s + u 1 t i 1 + u 2 t i 2 ≻ · · · ≻ red B s B is called Gröbner basis if red B s = 0 for all s ∈ ( B ) 7 / 18

  15. Gröbner bases for quantifier-free real arithmetic Gröbner bases to solve the ideal membership problem: Monomial ordering ≺ : admissible total well-founded ordering on monomials Reduction of a polynomial s w.r.t. B = { t 1 , . . . , t n } : s ≻ s + u 1 t i 1 ≻ s + u 1 t i 1 + u 2 t i 2 ≻ · · · ≻ red B s B is called Gröbner basis if red B s = 0 for all s ∈ ( B ) 7 / 18

  16. The Nullstellensatz Method is sound and complete over complex numbers: Theorem (Hilbert’s Nullstellensatz) � ¬∃ x ∈ ❈ n : t i ( x ) = 0 iff 1 ∈ ( t 1 , . . . , t n ) i ⇒ Method cannot be complete over reals: x 2 + 1 = 0 e.g. is unsatisfiable ( x 2 + 1 ) but does not contain a unit We present an extension that is complete over the reals 8 / 18

  17. The Real Nullstellensatz Theorem (Stengle’s Real Nullstellensatz, 1973) � ¬∃ x ∈ ❘ n : t i ( x ) = 0 iff i ∃ s 1 , . . . , s k ∈ ❘ [ X 1 , . . . , X m ] : 1 + s 2 1 + · · · + s 2 k ∈ ( t 1 , . . . , t n ) 9 / 18

  18. The Real Nullstellensatz Theorem (Stengle’s Real Nullstellensatz, 1973) � ¬∃ x ∈ ❘ n : t i ( x ) = 0 iff i ∃ s 1 , . . . , s k ∈ ❘ [ X 1 , . . . , X m ] : 1 + s 2 1 + · · · + s 2 k ∈ ( t 1 , . . . , t n ) 9 / 18

  19. The Real Nullstellensatz Theorem (Stengle’s Real Nullstellensatz, 1973) � ¬∃ x ∈ ❘ n : t i ( x ) = 0 iff i ∃ s 1 , . . . , s k ∈ ❘ [ X 1 , . . . , X m ] : 1 + s 2 1 + · · · + s 2 k ∈ ( t 1 , . . . , t n ) How to pick sum of squares s 2 1 + · · · + s 2 n ? 9 / 18

  20. The Real Nullstellensatz Observation: [Parrilo, 2003] Sums of squares can be represented as scalar products E.g. � � t � � � � x 2 − 1 x 2 x 2 − 2 xy + y 2 = x 2 + ( x − y ) 2 = y − 1 1 y 9 / 18

  21. The Real Nullstellensatz Lemma Every sum of squares can be represented as p t Xp, where p ∈ ❘ [ X 1 , . . . , X m ] k and X is positive semi-definite (and vice versa). Matrix X is called positive semi-definite if X is symmetric x t Xx ≥ 0 for all x ∈ ❘ n . 9 / 18

  22. The Real Nullstellensatz Lemma Every sum of squares can be represented as p t Xp, where p ∈ ❘ [ X 1 , . . . , X m ] k and X is positive semi-definite (and vice versa). Matrix X is called positive semi-definite if X is symmetric x t Xx ≥ 0 for all x ∈ ❘ n . 9 / 18

  23. The Real Nullstellensatz Constraint solving by semidefinite programming (convex optimisation): Has been used successfully in combination with Positivstellensatz [Parrilo, 2003; Harrison, 2007] 9 / 18

  24. Example Prove unsatisfiability of: x ≥ y , z ≥ 0 , yz > xz 10 / 18

  25. Example Prove unsatisfiability of: x ≥ y , z ≥ 0 , yz > xz Translated to system of equations: x − y = a 2 , z = b 2 , ( yz − xz ) c 2 = 1 10 / 18

  26. Example Prove unsatisfiability of: x ≥ y , z ≥ 0 , yz > xz Translated to system of equations: x − y = a 2 , z = b 2 , ( yz − xz ) c 2 = 1 Corresponding Gröbner basis: B = { a 2 − x + y , b 2 − z , xzc 2 − yzc 2 + 1 } 10 / 18

  27. Example Prove unsatisfiability of: x ≥ y , z ≥ 0 , yz > xz Translated to system of equations: x − y = a 2 , z = b 2 , ( yz − xz ) c 2 = 1 Corresponding Gröbner basis: B = { a 2 − x + y , b 2 − z , xzc 2 − yzc 2 + 1 } Pick basis monomials and symmetric matrix Q :     1 q 1 , 1 q 1 , 2 q 1 , 3  a 2    p = Q = q 1 , 2 q 2 , 2 q 2 , 3     abc q 1 , 3 q 2 , 3 q 3 , 3 p t Qp = q 1 , 1 1 2 + 2 q 1 , 2 a 2 + 2 q 1 , 3 abc + 2 q 2 , 3 a 3 bc + q 3 , 3 a 2 b 2 c 2 10 / 18

  28. Example (2) p t Qp = q 1 , 1 1 2 + 2 q 1 , 2 a 2 + 2 q 1 , 3 abc + 2 q 2 , 3 a 3 bc + q 3 , 3 a 2 b 2 c 2 11 / 18

  29. Example (2) p t Qp = q 1 , 1 1 2 + 2 q 1 , 2 a 2 + 2 q 1 , 3 abc + 2 q 2 , 3 a 3 bc + q 3 , 3 a 2 b 2 c 2 Reduce 1 + p t Qp w.r.t. B : red B ( 1 + p t Qp ) = 1 + q 1 , 1 − q 3 , 3 + 2 q 1 , 2 x − 2 q 1 , 2 y + 2 q 1 , 3 abc + 2 q 2 , 3 abcx − 2 q 2 , 3 abcy 11 / 18

  30. Example (2) p t Qp = q 1 , 1 1 2 + 2 q 1 , 2 a 2 + 2 q 1 , 3 abc + 2 q 2 , 3 a 3 bc + q 3 , 3 a 2 b 2 c 2 Reduce 1 + p t Qp w.r.t. B : red B ( 1 + p t Qp ) = 1 + q 1 , 1 − q 3 , 3 + 2 q 1 , 2 x − 2 q 1 , 2 y + 2 q 1 , 3 abc + 2 q 2 , 3 abcx − 2 q 2 , 3 abcy Set up semidefinite program red B ( 1 + p t Qp ) = 0: 1 + q 1 , 1 − q 3 , 3 = 0 − 2 q 1 , 2 = 0 2 q 2 , 3 = 0 2 q 1 , 2 = 0 2 q 1 , 3 = 0 − 2 q 2 , 3 = 0 11 / 18

  31. Example (2) p t Qp = q 1 , 1 1 2 + 2 q 1 , 2 a 2 + 2 q 1 , 3 abc + 2 q 2 , 3 a 3 bc + q 3 , 3 a 2 b 2 c 2 Reduce 1 + p t Qp w.r.t. B : red B ( 1 + p t Qp ) = 1 + q 1 , 1 − q 3 , 3 + 2 q 1 , 2 x − 2 q 1 , 2 y + 2 q 1 , 3 abc + 2 q 2 , 3 abcx − 2 q 2 , 3 abcy Set up semidefinite program red B ( 1 + p t Qp ) = 0: 1 + q 1 , 1 − q 3 , 3 = 0 − 2 q 1 , 2 = 0 2 q 2 , 3 = 0 2 q 1 , 2 = 0 2 q 1 , 3 = 0 − 2 q 2 , 3 = 0 Solve the program: q 3 , 3 = 1 and q i , j = 0 for all ( i , j ) � = ( 3 , 3 ) 1 + p t Qp = 1 + ( abc ) 2 ∈ ( B ) � �� � Witness for unsatisfiability 11 / 18

  32. Gröbner bases for the Real Nullstellensatz (GRN) Properties of the procedure Sound + complete method for quantifier-free real arithmetic Sums of squares as certificates (“proof producing”) Termination criteria can be given → decision procedure In practice: We enumerate basis monomials with ascending degree Numerical issues Existing solvers for semidefinite programming are numeric (we use CSDP) Solution: Solve program numerically, then round to exact solution [Harrison, 2007] 12 / 18

  33. Optimisations Pre-processing of Gröbner basis is a good idea: Rewriting with polynomials x + t Rewriting with polynomials x 2 − α 1 m 2 1 − · · · − α n m 2 n (with α i > 0) Elimination of polynomials xy − 1, x n + t Splitting polynomials α 1 m 2 1 + · · · + α n m 2 n ∈ B with α i > 0 13 / 18

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend