Journal of Automated Reasoning

, Volume 54, Issue 4, pp 285–326

# Formally-Verified Decision Procedures for Univariate Polynomial Computation Based on Sturm’s and Tarski’s Theorems

Article

## Abstract

Sturm’s theorem is a well-known result in real algebraic geometry that provides a function that computes the number of roots of a univariate polynomial in a semi-open interval, not counting multiplicity. A generalization of Sturm’s theorem is known as Tarski’s theorem, which provides a linear relationship between functions known as Tarski queries and cardinalities of certain sets. The linear system that results from this relationship is in fact invertible and can be used to explicitly count the number of roots of a univariate polynomial on a set defined by a system of polynomial relations. This paper presents a formalization of these results in the PVS theorem prover, including formal proofs of Sturm’s and Tarski’s theorems. These theorems are at the basis of two decision procedures, which are implemented as computable functions in PVS. The first, based on Sturm’s theorem, determines satisfiability of a single polynomial relation over an interval. The second, based on Tarski’s theorem, determines the satisfiability of a system of polynomial relations over the real line. The soundness and completeness properties of these decision procedures are formally verified in PVS. The procedures and their correctness properties enable the implementation of PVS strategies for automatically proving existential and universal statements on polynomial systems. Since the decision procedures are formally verified in PVS, the soundness of the strategies depends solely on the internal logic of PVS rather than on an external oracle.

## Keywords

Non-linear arithmetic Decision procedure Prototype Verification System (PVS) polynomial inequalities Sturm’s theorem Tarski’s theorem Automated theorem proving Interactive Theorem Proving

## References

1. 1.
Akbarpour, B., Paulson, L.C.: MetiTarski: An automatic theorem prover for real-valued special functions. J. Autom. Reason. 44(3), 175–205 (2010)
2. 2.
Aransay, J., Divasón, J.: Formalization and execution of linear algebra: from theorems to algorithms. In: Gupta, G., Peña, R. (eds.) Proceedings, 23rd International Symposium on Logic-Based Program Synthesis and Transformation, LOPSTR 2013, Madrid, Spain. Dpto. de Systemas Informáticos y Computation, Universidad Complutense de Madrid, TR-11-13 (2013)Google Scholar
3. 3.
Basu, S., Pollack, R., Roy, M.F.: Algorithms in Real Algebraic Geometry (Algorithms and Computation in Mathematics). Springer-Verlag New York, Inc., USA (2006)Google Scholar
4. 4.
Cohen, C.: Mahboubi, A.: Formal proofs in real algebraic geometry: from ordered fields to quantifier elimination. Logical Methods Comput. Sci. 8(1:02), 1–40 (Feb 2012) https://hal.inria.fr/inria-00593738
5. 5.
Collins, G.: Quantifier elimination for real closed fields by cylindrical algebraic decomposition. In: Second GI Conference on Automata Theory and Formal Languages. Lecture Notes in Computer Science, vol. 33, pp. 134–183. Springer-Verlag, Kaiserslautern (1975)Google Scholar
6. 6.
Crespo, L.G., Muñoz, C.A., Narkawicz, A.J., Kenny, S.P., Giesy, D.P.: Uncertainty analysis via failure domain characterization: Polynomial requirement functions. In.: Proceedings of European Safety and Reliability Conference, p 2011. Troyes, FranceGoogle Scholar
7. 7.
Daumas, M., Lester, D., Muñoz, C.: Verified real number calculations: A library for interval arithmetic. IEEE Trans. Comput. 58(2), 1–12 (2009)
8. 8.
Dénès, M., Mörtberg, A., Siles, V.: A refinement-based approach to computational algebra in Coq. In: Beringer, L., Felty, A.P. (eds.) Interactive Theorem Proving - Third International Conference, ITP 2012, Princeton, NJ, USA, August 13-15, 2012. Proceedings. Lecture Notes in Computer Science, vol. 7406, pp. 83–98. Springer (2012). doi:
9. 9.
Denman, W., Muñoz, C.: Automated real proving in PVS via MetiTarski. In: Jones, C., Pihlajasaari, P., Sun, J (eds.) Proceedings of the 19th International Symposium on Formal Methods (FM 2014). Lecture Notes in Computer Science, vol. 8442, pp. 194–199. Springer, Singapore (2014)Google Scholar
10. 10.
de Dinechin, F., Lauter, C., Melquiond, G.: Certifying the floating-point implementation of an elementary function using Gappa. IEEE Trans. Comput. 60(2), 242–253 (2011)
11. 11.
Dowek, G., Geser, A., Muñoz, C.: Tactical conflict detection and resolution in a 3-D airspace. In: Proceedings of the 4th USA/Europe Air Traffic Management R&D Seminar, ATM 2001. Santa Fe, New Mexico (2001), a long version appears as report NASA/CR-2001-210853 ICASE Report No. 2001-7Google Scholar
12. 12.
Eberl, M.: A decision procedure for univariate real polynomials in Isabelle/HOL. In: Proceedings of the 2015 Conference on Certified Programs and Proofs, CPP ’15, pp. 75–83. ACM, New York (2015). doi:
13. 13.
Eisermann, M.: The fundamental theorem of algebra made effective: An elementary real-algebraic proof via Sturm chains. Am. Math. Mon. 119(9), 715–752 (2012)
14. 14.
Gao, S., Kong, S., Clarke, E.M. : dReal: An SMT solver for nonlinear theories over the reals. In: Bonacina, M.P. (ed.) Automated Deduction - CADE-24 - 24th International Conference on Automated Deduction, Lake Placid, NY, USA, June 9-14, 2013. Proceedings. Lecture Notes in Computer Science, vol. 7898, pp. 208–214. Springer (2013). doi:
15. 15.
Garloff, J.: Application of Bernstein expansion to the solution of control problems. Reliab. Comput. 6, 303–320 (2000)
16. 16.
von zur Gathen, J., Lücking, T.: Subresultants revisited. Theor. Comput. Sci. 297(1–3), 199–239 (2003). doi:
17. 17.
Gonthier, G.: Point-free, set-free concrete linear algebra. In: van Eekelen, M.C.J.D., Geuvers, H., Schmaltz, J., Wiedijk, F (eds.) Interactive Theorem Proving - ITP 2011, vol. 6898, pp. 103–118. Radboud University of Nijmegen, Springer, Berg en Dal, Netherlands (2011). https://hal.inria.fr/hal-00805966 Google Scholar
18. 18.
Granvilliers, L., Benhamou, F.: RealPaver: An interval solver using constraint satisfaction techniques. ACM Trans. Math. Softw. 32(1), 138–156 (2006)
19. 19.
Harrison, J.: Metatheory and reflection in theorem proving: A survey and critique. Technical Report CRC-053. SRI Cambridge, Millers Yard, Cambridge (1995)Google Scholar
20. 20.
Harrison, J.: Verifying the accuracy of polynomial approximations in HOL. In: Gunter, E.L., Felty, A. (eds.) Theorem Proving in Higher Order Logics: 10th International Conference, TPHOLs’97. Lecture Notes in Computer Science, vol. 1275, pp. 137–152. Springer-Verlag, Murray Hill, NJ (1997)
21. 21.
Harrison, J.: Verifying nonlinear real formulas via sums of squares. In: Theorem Proving in Higher Order Logics. Lecture Notes in Computer Science, vol. 4732, pp. 102–118. Springer (2007)Google Scholar
22. 22.
Herencia-Zapana, H., Jobredeaux, R., Owre, S., Garoche, P.L., Feron, E., Perez, G., Ascariz, P.: PVS linear algebra libraries for verification of control software algorithms in C/ACSL. In: Goodloe, A., Person, S. (eds.) NASA Formal Methods - 4th International Symposium, NFM 2012, Norfolk, VA, USA, April 3-5, 2012. Proceedings. Lecture Notes in Computer Science, vol. 7226, pp. 147–161. Springer (2012). doi:
23. 23.
Kaltofen, E.L., Li, B., Yang, Z., Zhi, L.: Exact certification in global polynomial optimization via sums-of-squares of rational functions with rational coefficients. In: Robbiano, L., Abbott, J (eds.) Approximate Commutative Algebra. Springer Vienna, Texts and Monographs in Symbolic Computation (2010)Google Scholar
24. 24.
Kuchar, J., Yang, L.: A review of conflict detection and resolution modeling methods. IEEE Trans. Intell. Transp. Syst. 1(4), 179–189 (2000)
25. 25.
Mahboubi, A.: Implementing the cylindrical algebraic decomposition within the Coq system. Math. Struct. Comput. Sci. 17(1), 99–127 (2007)
26. 26.
Mahboubi, A., Pottier, L.: Elimination des quantificateurs sur les réels en Coq. In: Journées Francophone des Langages Applicatifs (JFLA) (2002)Google Scholar
27. 27.
Mahmoud, M.Y., Aravantinos, V., Tahar, S.: Formalization of infinite dimension linear spaces with application to quantum theory. In: Brat, G., Rungta, N., Venet, A. (eds.) NASA Formal Methods, 5th International Symposium, NFM 2013, Moffett Field, CA, USA, May 14-16, 2013. Proceedings. Lecture Notes in Computer Science, vol. 7871, pp. 413–427. Springer (2013). doi:
28. 28.
McLaughlin, S., Harrison, J.: A proof-producing decision procedure for real arithmetic. In: Nieuwenhuis, R. (ed.) Proceedings of the 20th International Conference on Automated Deduction, proceedings. Lecture Notes in Computer Science, vol. 3632, pp. 295–314 (2005)Google Scholar
29. 29.
Melquiond, G.: Proving bounds on real-valued functions with computations. In: Armando, A., Baumgartner, P., Dowek, G. (eds.) Automated Reasoning, 4th International Joint Conference, IJCAR 2008, Sydney, Australia, August 12-15, 2008, Proceedings. Lecture Notes in Computer Science, vol. 5195, pp. 2–17. Springer (2008).
30. 30.
Monniaux, D., Corbineau, P.: On the generation of Positivstellensatz witnesses in degenerate cases. In: Proceedings of Interactive Theorem Proving (ITP). Lecture Notes in Computer Science (2011)Google Scholar
31. 31.
de Moura, L., Passmore, G.: Computation in real closed infinitesimal and transcendental extensions of the rationals. In: Automated Deduction - CADE-24, 24th International Conference on Automated Deduction, Lake Placid, New York, June 9-14, 2013, Proceedings (2013)Google Scholar
32. 32.
Muñoz, C.: Rapid prototyping in PVS. Contractor Report NASA/CR-2003-212418, NASA, Langley Research Center, Hampton VA 23681-2199, USA (2003)Google Scholar
33. 33.
Muñoz, C., Narkawicz, A.: Formalization of a representation of Bernstein polynomials and applications to global optimization. J. Autom. Reason. 51(2), 151–196 (2013). doi:
34. 34.
Narkawicz, A., Muñoz, C.: A formally verified generic branching algorithm for global optimization. In: Cohen, E., Rybalchenko, A. (eds.) Fifth Working Conference on Verified Software: Theories, Tools and Experiments (VSTTE 2013). Lecture Notes in Computer Science, vol. 8164, pp. 326–343. Springer (2014)Google Scholar
35. 35.
Narkawicz, A.J., Muñoz, C.A.: A formally-verified decision procedure for univariate polynomial computation based on Sturm’s theorem. Technical Memorandum NASA/TM-2014-218548, NASA, Langley Research Center, Hampton VA 23681-2199, USA (2014)Google Scholar
36. 36.
Owre, S., Rushby, J., Shankar, N.: PVS: A prototype verification system. In: Kapur, D. (ed.) Proceeding of the 11th International Conference on Automated Deduction (CADE). Lecture Notes in Artificial Intelligence, vol. 607, pp. 748–752. Springer (1992)Google Scholar
37. 37.
Passmore, G.O., Jackson, P.B.: Combined decision techniques for the existential theory of the reals. In: Dixon, L. (ed.) Proceedings of Calculemus/Mathematical Knowledge Management. pp. 122–137. No. 5625 in LNAI. Springer-Verlag (2009)Google Scholar
38. 38.
Shankar, N.: Efficiently executing PVS. Tech. rep., Project Report, ComputerScience Laboratory. SRI International, Menlo Park (1999)Google Scholar
39. 39.
Solovyev, A., Hales, T.C.: Formal verification of nonlinear inequalities with Taylor interval approximations. In: Brat, G., Rungta, N., Venet, A. (eds.) Proceedings of the 5th International Symposium NASA Formal Methods. Lecture Notes in Computer Science, vol. 7871, pp. 383–397 (2013)Google Scholar
40. 40.
Sottile, F.: Chapter 2: Real solutions to univariate polynomials. course Notes. http://www.math.tamu.edu/sottile/teaching/10.S/Ch2.pdf
41. 41.
Sturm, C.: Mémoire sur la résolution des équations numériques. In: Pont, J.C. (ed.) Collected Works of Charles François Sturm, pp. 345–390. Birkhäuser Basel (2009). doi:
42. 42.
Tarski, A.: A decision method for elementary algebra and geometry. Bull. Am. Math. Soc., 59 (1951)Google Scholar