Real World Verification

  • André Platzer
  • Jan-David Quesel
  • Philipp Rümmer
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5663)


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, Gröbner 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 Gröbner Bases and semidefinite programming for the real Nullstellensatz that outperforms the individual approaches on an interesting set of problems.


Real-closed fields decision procedures hybrid systems software verification 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Tarski, A.: A Decision Method for Elementary Algebra and Geometry, 2nd edn. University of California Press, Berkeley (1951)zbMATHGoogle Scholar
  2. 2.
    Ratschan, S.: Efficient solving of quantified inequality constraints over the real numbers. ACM Trans. Comput. Log. 7, 723–748 (2006)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Collins, G.E., Hong, H.: Partial cylindrical algebraic decomposition for quantifier elimination. J. Symb. Comput. 12, 299–328 (1991)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Weispfenning, V.: Quantifier elimination for real algebra - the quadratic case and beyond. Appl. Algebra Eng. Commun. Comput. 8, 85–101 (1997)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Buchberger, B.: An Algorithm for Finding the Basis Elements of the Residue Class Ring of a Zero Dimensional Polynomial Ideal. PhD thesis, University of Innsbruck (1965)Google Scholar
  6. 6.
    Parrilo, P.A.: Semidefinite programming relaxations for semialgebraic problems. Math. Program. 96, 293–320 (2003)MathSciNetCrossRefzbMATHGoogle Scholar
  7. 7.
    Stengle, G.: A Nullstellensatz and a Positivstellensatz in semialgebraic geometry. Math. Ann. 207, 87–97 (1973)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Platzer, A., Quesel, J.D.: KeYmaera: A hybrid theorem prover for hybrid systems. In: Armando, A., Baumgartner, P., Dowek, G. (eds.) IJCAR 2008. LNCS, vol. 5195, pp. 171–178. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  9. 9.
    Brown, C.W.: QEPCAD B: A program for computing with semi-algebraic sets using CADs. SIGSAM Bull. 37, 97–108 (2003)CrossRefzbMATHGoogle Scholar
  10. 10.
    Dolzmann, A., Sturm, T.: Redlog: Computer algebra meets computer logic. ACM SIGSAM Bull. 31, 2–9 (1997)CrossRefGoogle Scholar
  11. 11.
    McLaughlin, S., Harrison, J.: A proof-producing decision procedure for real arithmetic. In: Nieuwenhuis, R. (ed.) CADE 2005. LNCS, vol. 3632, pp. 295–314. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  12. 12.
    Borchers, B.: CSDP, a C library for semidefinite programming. Optimization Methods and Software 11, 613–623 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Harrison, J.: Verifying nonlinear real formulas via sums of squares. In: Schneider, K., Brandt, J. (eds.) TPHOLs 2007. LNCS, vol. 4732, pp. 102–118. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  14. 14.
    Platzer, A.: Differential dynamic logic for hybrid systems. J. Autom. Reasoning 41, 143–189 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Beckert, B., Hähnle, R., Schmitt, P.H. (eds.): Verification of Object-Oriented Software: The KeY Approach. LNCS, vol. 4334. Springer, Heidelberg (2007)Google Scholar
  16. 16.
    Platzer, A., Quesel, J.D., Rümmer, P.: Real world verification. Reports of SFB/TR 14 AVACS 52, SFB/TR 14 AVACS (2009) ISSN: 1860-9821,
  17. 17.
    Rümmer, P.: A sequent calculus for integer arithmetic with counterexample generation. In: Beckert, B. (ed.) VERIFY 2007 at CADE, Bremen, Germany., vol. 259 (2007)Google Scholar
  18. 18.
    Schrijver, A.: Theory of Linear and Integer Programming. Wiley, Chichester (1986)zbMATHGoogle Scholar
  19. 19.
    Platzer, A.: Combining deduction and algebraic constraints for hybrid system analysis. In: Beckert, B. (ed.) VERIFY 2007 at CADE, Bremen, Germany. CEUR Workshop Proceedings, vol. 259, pp. 164–178. (2007)Google Scholar
  20. 20.
    Davenport, J.H., Heintz, J.: Real quantifier elimination is doubly exponential. J. Symb. Comput. 5, 29–35 (1988)MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Strzebonski, A.W.: Cylindrical algebraic decomposition using validated numerics. J. Symb. Comput. 41, 1021–1038 (2006)MathSciNetCrossRefzbMATHGoogle Scholar
  22. 22.
    Bochnak, J., Coste, M., Roy, M.F.: Real Algebraic Geometry. Ergebnisse der Mathematik und ihrer Grenzgebiete, vol. 36. Springer, Heidelberg (1998)CrossRefzbMATHGoogle Scholar
  23. 23.
    Boyd, S., Vandenberghe, L.: Convex Optimization. Cambridge Univ. Press, Cambridge (2004)CrossRefzbMATHGoogle Scholar
  24. 24.
    Graham, R.L., Knuth, D.E., Patashnik, O.: Concrete Mathematics: A Foundation for Computer Science. Addison-Wesley Longman, Amsterdam (1994)zbMATHGoogle Scholar
  25. 25.
    Platzer, A., Quesel, J.D.: Logical verification and systematic parametric analysis in train control. In: Egerstedt, M., Mishra, B. (eds.) HSCC 2008. LNCS, vol. 4981, pp. 646–649. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  26. 26.
    Kovács, L.: Aligator: A mathematica package for invariant generation (system description). In: Armando, A., Baumgartner, P., Dowek, G. (eds.) IJCAR 2008. LNCS, vol. 5195, pp. 275–282. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  27. 27.
    de Moura, L.M., Bjørner, N.: Z3: An efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337–340. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  28. 28.
    Dolzmann, A., Sturm, T., Weispfenning, V.: A new approach for automatic theorem proving in real geometry. J. Autom. Reason. 21, 357–380 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
  29. 29.
    Nipkow, T.: Linear quantifier elimination. In: Armando, A., Baumgartner, P., Dowek, G. (eds.) IJCAR 2008. LNCS, vol. 5195, pp. 18–33. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  30. 30.
    Tiwari, A.: An algebraic approach for the unsatisfiability of nonlinear constraints. In: Ong, C.H.L. (ed.) CSL 2005. LNCS, vol. 3634, pp. 248–262. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  31. 31.
    Akbarpour, B., Paulson, L.C.: Extending a resolution prover for inequalities on elementary functions. In: Dershowitz, N., Voronkov, A. (eds.) LPAR 2007. LNCS, vol. 4790, pp. 47–61. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  32. 32.
    Warren, A., Hunt, J., Krug, R.B., Moore, J.S.: Linear and nonlinear arithmetic in ACL2. In: Geist, D., Tronci, E. (eds.) CHARME 2003. LNCS, vol. 2860, pp. 319–333. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  33. 33.
    Platzer, A., Clarke, E.M.: Computing differential invariants of hybrid systems as fixedpoints. In: Gupta, A., Malik, S. (eds.) CAV 2008. LNCS, vol. 5123, pp. 176–189. Springer, Heidelberg (2008)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • André Platzer
    • 1
  • Jan-David Quesel
    • 2
  • Philipp Rümmer
    • 3
  1. 1.Carnegie Mellon UniversityPittsburghUSA
  2. 2.University of OldenburgGermany
  3. 3.Computing LaboratoryOxford UniversityUK

Personalised recommendations