Journal of Automated Reasoning

, Volume 54, Issue 1, pp 1–29 | Cite as

Formally Verified Certificate Checkers for Hardest-to-Round Computation

  • Érik Martin-Dorel
  • Guillaume Hanrot
  • Micaela Mayero
  • Laurent Théry
Article

Abstract

In order to derive efficient and robust floating-point implementations of a given function f, it is crucial to compute its hardest-to-round points, i.e. the floating-point numbers x such that f(x) is closest to the midpoint of two consecutive floating-point numbers. Depending on the floating-point format one is aiming at, this can be highly computationally intensive. In this paper, we show how certificates based on Hensel’s lemma can be added to an algorithm using lattice basis reduction so that the result of a computation can be formally checked in the Coq proof assistant.

Keywords

Formal proofs Certificate checkers Hensel’s lemma Modular arithmetic 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Augot, D., Pecquet, L.: A Hensel lifting to replace factorization in list-decoding of algebraic-geometric and Reed-Solomon codes. IEEE Trans. Inf. Theory 46(7), 2605–2614 (2000)CrossRefMathSciNetMATHGoogle Scholar
  2. 2.
    Bernstein, D.J.: Simplified high-speed high-distance list decoding for alternant codes. In: Yang, B.-Y. (ed.) PQCrypto, volume 7071 of LNCS, pp. 200–216. Springer (2011)Google Scholar
  3. 3.
    Bertot, Y., Castéran, P.: Interactive Theorem Proving and Program Development. Coq’Art: The Calculus of Inductive Constructions. Texts in Theoretical Computer Science. Springer-Verlag (2004)Google Scholar
  4. 4.
    Bertot, Y., Gonthier, G., Biha, S.O., Pasca, I.: Canonical big operators. In: Mohamed, O.A., Muñoz, C., Tahar, S. (eds.) Theorem Proving in Higher Order Logics, 21st International Conference, TPHOLs 2008, Montreal. Proceedings, volume 5170 of LNCS, pp. 86–101. Springer (2008)Google Scholar
  5. 5.
    Boespflug, M., Dénès, M, Grégoire, B.: Full Reduction at Full Throttle. In: Jouannaud, J.-P., Shao, Z. (eds.) CPP, volume 7086 of LNCS, pp. 362–377. Springer (2011)Google Scholar
  6. 6.
    Boneh, D.: Finding smooth integers in short intervals using CRT decoding. J. Comput. Syst. Sci. 64(4), 768–784 (2002)CrossRefMathSciNetMATHGoogle Scholar
  7. 7.
    Brisebarre, N., Joldeş, M., Martin-Dorel, É., Mayero, M., Muller, J.-M., Paşca, I., Rideau, L., Théry, L.: Rigorous polynomial approximation using Taylor models in Coq. In: Goodloe, A., Person, S. (eds.) NASA Formal Methods 2012, volume 7226 of LNCS, pp. 85–99. Springer (2012)Google Scholar
  8. 8.
    Chrza̧szcz, J.: Implementing modules in the Coq system. In: Basin D.A., Wolff, B. (eds.) TPHOLs, volume 2758 of LNCS, pp. 270–286. Springer (2003)Google Scholar
  9. 9.
    Chrza̧szcz, J.: Modules in Coq are and will be correct. In: Berardi, S., Coppo, M., Damiani, F. (eds.) TYPES, volume 3085 of LNCS, pp. 130–146. Springer (2003)Google Scholar
  10. 10.
    Cohen, C., Dénès, M., Mörtberg, A.: Refinements for free! In: Gonthier, G., Norrish, M. (eds.) CPP, volume 8307 of LNCS, pp. 147–162. Springer (2013)Google Scholar
  11. 11.
    Coppersmith, D.: Finding a small root of a bivariate integer equation; factoring with high bits known. In: Maurer, M.U.M. (ed) Advances in Cryptology - EUROCRYPT ’96, International Conference on the Theory and Application of Cryptographic Techniques, Saragossa. Proceeding, volume 1070 of LNCS, pp. 178–189. Springer (1996)Google Scholar
  12. 12.
    Coppersmith, D.: Finding a small root of a univariate modular equation. In: Maurer, M.U.M. (ed.) Advances in Cryptology - EUROCRYPT ’96, International Conference on the Theory and Application of Cryptographic Techniques, Saragossa. Proceeding, volume 1070 of LNCS, pp. 155–165. Springer (1996)Google Scholar
  13. 13.
    Coppersmith, D.: Small solutions to polynomial equations, and low exponent RSA vulnerabilities. J. Cryptol. 10(4), 233–260 (1997)CrossRefMathSciNetMATHGoogle Scholar
  14. 14.
    The Coq Development Team: The Coq Proof Assistant: Reference Manual: version 8.4pl4, 2014. Available from: http://coq.inria.fr/distrib/current/refman/
  15. 15.
    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.) ITP, volume 7406 of LNCS, pp. 83–98. Springer (2012)Google Scholar
  16. 16.
    Gonthier, G., Mahboubi, A.: A small scale reflection extension for the Coq system. Research Report RR-6455, INRIA (2008)Google Scholar
  17. 17.
    Gonthier, G., Mahboubi, A.: An introduction to small scale reflection in Coq. J. Formalized Reason. 3(2), 95–152 (2010)MathSciNetMATHGoogle Scholar
  18. 18.
    Guruswami, V., Sudan, M.: Improved decoding of Reed-Solomon and algebraic-geometry codes. IEEE Trans. Inf. Theory 45(6), 1757–1767 (1999)CrossRefMathSciNetMATHGoogle Scholar
  19. 19.
    Haftmann, F., Krauss, A., Kuncar, O., Nipkow, T.: Data refinement in Isabelle/HOL. In: Blazy, S., Paulin-Mohring, C., Pichardie, D. (eds.) Interactive Theorem Proving - 4th International Conference, ITP 2013, Rennes. Proceedings, volume 7998 of LNCS, pp. 100–115. Springer (2013)Google Scholar
  20. 20.
    Hensel, K: Neue Grundlagen der Arithmetik. J. für die reine und angewandte Mathematik (Crelle’s Journal) 1904(127), 51–84 (1904). doi:10.1515/crll.1904.127.51 Google Scholar
  21. 21.
    Karatsuba, A., Ofman, Y.: Multiplication of many-digital numbers by automatic computers. Doklady Akad. Nauk SSSR 145, 293–294 (1963). Translation in Physics-Doklady, 7,595–596Google Scholar
  22. 22.
    Kobayashi, H., Suzuki, H., Ono, Y.: Formalization of Hensel’s lemma. In: Theorem Proving in Higher Order Logics: Emerging Trends Proceedings, number PRG-RR-05-02 in Oxford University Computing Laboratory Research Reports, pp. 114–127 (2005)Google Scholar
  23. 23.
    Lammich, P.: Automatic data refinement. In: Blazy, S., Paulin-Mohring, C., Pichardie, D. (eds.) Interactive Theorem Proving - 4th International Conference, ITP 2013, Rennes. Proceedings, volume 7998 of LNCS, pp. 84–99. Springer (2013)Google Scholar
  24. 24.
    Lenstra, A.K., Lenstra, H.W. Jr., Lovász, L.: Factoring polynomials with rational coefficients. Mathematische Annalen 261, 515–534 (1982)CrossRefMathSciNetMATHGoogle Scholar
  25. 25.
    Martin-Dorel, É.: Contributions to the Formal Verification of Arithmetic Algorithms. PhD thesis, École Normale Supérieure de Lyon, Lyon, France, 2012. Available from: http://tel.archives-ouvertes.fr/tel-00745553/en/
  26. 26.
    Martin-Dorel, É., Mayero, M., Paşca, I., Rideau, L., Théry, L.: Certified, efficient and sharp univariate taylor models in COQ. In: SYNASC 2013, pp. 193–200. IEEE, Timişoara (2013)Google Scholar
  27. 27.
    Muller, J.-M., Brisebarre, N., de Dinechin, F, Jeannerod, C.-P., Lefèvre, V., Melquiond, G., Revol, N, Stehlé, D., Torres, S.: Handbook of Floating-Point Arithmetic. Birkhäuser, Boston (2010)CrossRefMATHGoogle Scholar
  28. 28.
    Saïbi, A.: Typing algorithm in type theory with inheritance. In: POPL, pp. 292–301 (1997)Google Scholar
  29. 29.
    Sozeau, M., Oury, N.: First-class type classes. In: Mohamed, O.A., Muñoz, C., Tahar, S. (eds.) Theorem Proving in Higher Order Logics, 21st International Conference, TPHOLs 2008, Montreal. Proceedings, volume 5170 of LNCS, pp. 278–293. Springer (2008)Google Scholar
  30. 30.
    Stehlé, D.: Algorithmique de la réduction des réseaux et application à la recherche de pires cas pour l’arrondi des fonctions mathématiques. PhD thesis, Université Nancy, 1, Henri Poincaré (2005)Google Scholar
  31. 31.
    Stehlé, D.: On the randomness of bits generated by sufficiently smooth functions. In: Hess, F., Pauli, S., Pohst, M.E. (eds.) Algorithmic Number Theory, 7th International Symposium, ANTS-VII, Berlin. Proceedings, volume 4076 of LNCS, pp. 257–274. Springer (2006)Google Scholar
  32. 32.
    Stehlé, D., Lefèvre, V., Zimmermann, P.: Searching worst cases of a one-variable function using lattice reduction. IEEE Trans. Comput. 54 (3), 340–346 (2005)CrossRefMATHGoogle Scholar
  33. 33.
    Steuding, J.: Diophantine Analysis. Chapman & Hall/CRC (2005)Google Scholar
  34. 34.
    Stewart, G.W.: On the adjugate matrix. Lin. Algebra Appl. 283(1–3), 151–164 (1998)CrossRefMATHGoogle Scholar
  35. 35.
    Joachim von zur, G, Gerhard, J.: Modern Computer Algebra, 2nd edn. Cambridge University Press (2003)Google Scholar

Copyright information

© Springer Science+Business Media Dordrecht 2014

Authors and Affiliations

  • Érik Martin-Dorel
    • 1
  • Guillaume Hanrot
    • 2
  • Micaela Mayero
    • 3
  • Laurent Théry
    • 4
  1. 1.LRIInria Saclay - Île-de-FranceOrsay CedexFrance
  2. 2.École Normale Supérieure de Lyon, LIP (UMR 5668 CNRS, ENSL, Inria, UCBL)Lyon Cedex 07France
  3. 3.Université Paris 13, LIPN (UMR 7030 CNRS)VilletaneuseFrance
  4. 4.Inria Sophia AntipolisSophia Antipolis CedexFrance

Personalised recommendations