Real World Verification

Scalable handling of real arithmetic is a crucial part of the verification of hybrid systems, mathematical algorithms, and mixed analog/digital circuits. Despite substantial advances in verification technology, complexity issues with classical decision procedures are still a major obstacle for formal verification of real-world applications, e.g., in automotive and avionic industries. To identify strengths and weaknesses, we examine state of the art symbolic techniques and implementations for the universal fragment of real-closed fields: approaches based on quantifier elimination, Grobner Bases, and semidefinite programming for the Positivstellensatz. Within a uniform context of the verification tool KeYmaera, we compare these approaches qualitatively and quantitatively on verification benchmarks from hybrid systems, textbook algorithms, and on geometric problems. Finally, we introduce a new decision procedure combining Grobner Bases and semidefinite programming for the real Nullstellensatz that outperforms the individual approaches on an interesting set of problems.

[1]  Warren A. Hunt,et al.  Linear and Nonlinear Arithmetic in ACL2 , 2003, CHARME.

[2]  George E. Collins,et al.  Partial Cylindrical Algebraic Decomposition for Quantifier Elimination , 1991, J. Symb. Comput..

[3]  André Platzer,et al.  Differential Dynamic Logic for Hybrid Systems , 2008, Journal of Automated Reasoning.

[4]  Philipp Rümmer,et al.  A Sequent Calculus for Integer Arithmetic with Counterexample Generation , 2007, VERIFY.

[5]  John Harrison,et al.  Verifying Nonlinear Real Formulas Via Sums of Squares , 2007, TPHOLs.

[6]  Edmund M. Clarke,et al.  Computing differential invariants of hybrid systems as fixedpoints , 2008, Formal Methods Syst. Des..

[7]  Stefan Ratschan,et al.  Efficient solving of quantified inequality constraints over the real numbers , 2002, TOCL.

[8]  Tobias Nipkow Linear Quantifier Elimination , 2008, IJCAR.

[9]  Larry Wos,et al.  What Is Automated Reasoning? , 1987, J. Autom. Reason..

[10]  Christopher W. Brown QEPCAD B: a program for computing with semi-algebraic sets using CADs , 2003, SIGS.

[11]  A. Tarski A Decision Method for Elementary Algebra and Geometry , 2023 .

[12]  Adam W. Strzebonski,et al.  Cylindrical Algebraic Decomposition using validated numerics , 2006, J. Symb. Comput..

[13]  Ronald L. Graham,et al.  Concrete mathematics - a foundation for computer science , 1991 .

[14]  Stephen P. Boyd,et al.  Convex Optimization , 2004, Algorithms and Theory of Computation Handbook.

[15]  André Platzer,et al.  Combining Deduction and Algebraic Constraints for Hybrid System Analysis , 2007, VERIFY.

[16]  Bruno Buchberger,et al.  Bruno Buchberger's PhD thesis 1965: An algorithm for finding the basis elements of the residue class ring of a zero dimensional polynomial ideal , 2006, J. Symb. Comput..

[17]  Graham Steel,et al.  Deduction with XOR Constraints in Security API Modelling , 2005, CADE.

[18]  Thomas A. Henzinger,et al.  Hybrid Systems: Computation and Control , 1998, Lecture Notes in Computer Science.

[19]  Alexander Schrijver,et al.  Theory of linear and integer programming , 1986, Wiley-Interscience series in discrete mathematics and optimization.

[20]  André Platzer,et al.  Logical Verification and Systematic Parametric Analysis in Train Control , 2008, HSCC.

[21]  Nikolaj Bjørner,et al.  Z3: An Efficient SMT Solver , 2008, TACAS.

[22]  André Platzer,et al.  KeYmaera: A Hybrid Theorem Prover for Hybrid Systems (System Description) , 2008, IJCAR.

[23]  Thomas Sturm,et al.  A New Approach for Automatic Theorem Proving in Real Geometry , 1998, Journal of Automated Reasoning.

[24]  B. Borchers CSDP, A C library for semidefinite programming , 1999 .

[25]  John Harrison,et al.  A Proof-Producing Decision Procedure for Real Arithmetic , 2005, CADE.

[26]  Pablo A. Parrilo,et al.  Semidefinite programming relaxations for semialgebraic problems , 2003, Math. Program..

[27]  Thomas Sturm,et al.  REDLOG: computer algebra meets computer logic , 1997, SIGS.

[28]  Volker Weispfenning,et al.  Quantifier Elimination for Real Algebra — the Quadratic Case and Beyond , 1997, Applicable Algebra in Engineering, Communication and Computing.

[29]  Frank Wolter,et al.  Monodic fragments of first-order temporal logics: 2000-2001 A.D , 2001, LPAR.

[30]  Bernhard Beckert,et al.  Verification of Object-Oriented Software. The KeY Approach - Foreword by K. Rustan M. Leino , 2007, The KeY Approach.

[31]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

[32]  David Aspinall,et al.  Formalising Java's Data Race Free Guarantee , 2007, TPHOLs.

[33]  James H. Davenport,et al.  Real Quantifier Elimination is Doubly Exponential , 1988, J. Symb. Comput..

[34]  G. Stengle A nullstellensatz and a positivstellensatz in semialgebraic geometry , 1974 .

[35]  Alex K. Simpson,et al.  Computational Adequacy in an Elementary Topos , 1998, CSL.

[36]  Philipp Rümmer,et al.  Real World Verication , 2009 .

[37]  Laura Kovács,et al.  Aligator: A Mathematica Package for Invariant Generation (System Description) , 2008, IJCAR.

[38]  Lawrence C. Paulson,et al.  Extending a Resolution Prover for Inequalities on Elementary Functions , 2007, LPAR.

[39]  Marie-Françoise Roy,et al.  Real algebraic geometry , 1992 .

[40]  Ashish Tiwari,et al.  An Algebraic Approach for the Unsatisfiability of Nonlinear Constraints , 2005, CSL.

[41]  George J. Milne,et al.  Correct Hardware Design and Verification Methods , 2003, Lecture Notes in Computer Science.