Skip to main content

Standardization and Testing of Mathematical Functions

  • Conference paper
Perspectives of Systems Informatics (PSI 2009)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 5947))

Abstract

The article concerns problems of formulating standard requirements to implementations of mathematical functions working with floating-point numbers and conformance test development for them. Inconsistency and incompleteness of available standards in the domain is demonstrated. Correct rounding requirement is suggested to guarantee preservation of all important properties of functions and to support high level of interoperability between different mathematical libraries and software using them. Conformance test construction method is proposed based on different sources of test data: numbers satisfying specific patterns, boundaries of intervals of uniform function behavior, and points where correct rounding needs much higher precision than in average. Analysis of test results obtained on various implementations of POSIX mathematical library is also presented.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. IEEE 754-2008. IEEE Standard for Binary Floating-Point Arithmetic. NY, IEEE (2008)

    Google Scholar 

  2. Kuliamin, V.: Standardization and Testing of Implementations of Mathematical Functions in Floating Point Numbers. Programming and Computer Software 33(3), 154–173 (2007)

    Article  MATH  MathSciNet  Google Scholar 

  3. Kuliamin, V.: Test Construction for Mathematical Functions. In: Suzuki, K., Higashino, T., Ulrich, A., Hasegawa, T. (eds.) TestCom/FATES 2008. LNCS, vol. 5047, pp. 23–37. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  4. ISO/IEC 9899. Programming Languages - C. Geneve: ISO (1999)

    Google Scholar 

  5. IEEE 1003.1-2004. Information Technology - Portable Operating System Interface (POSIX). NY, IEEE (2004)

    Google Scholar 

  6. ISO/IEC 10967-2. Information Technology - Language Independent Arithmetic - Part 2: Elementary Numerical Functions. Geneve, ISO (2002)

    Google Scholar 

  7. Goldberg, D.: What Every Computer Scientist Should Know about Floating-Point Arithmetic. ACM Computing Surveys 23(1), 5–48 (1991)

    Article  Google Scholar 

  8. Defour, D., Hanrot, G., Lefevre, V., Muller, J.-M., Revol, N., Zimmermann, P.: Proposal for a standardization of mathematical function implementation in floating-point arithmetic. Numerical Algorithms 37(1-4), 367–375 (2004)

    Article  MATH  MathSciNet  Google Scholar 

  9. http://msdn.microsoft.com/library/wkbss70y.aspx

  10. Ng, K.C.: Arguments Reduction for Huge Arguments: Good to the Last Bit (1992), http://www.validlab.com/arg.pdf

  11. Kahan, W.: Minimizing q*m − n. (1983) (unpublished), http://http.cs.berkeley.edu/~wkahan/testpi/nearpi.c

  12. http://www.inria.fr/recherche/equipes/arenaire.en.html

  13. de Dinechin, F., Ershov, A., Gast, N.: Towards the post-ultimate libm. In: Proc. of 17th Symposium on Computer Arithmetic, June 2005. IEEE Computer Society Press, Los Alamitos (2005)

    Google Scholar 

  14. http://lipforge.ens-lyon.fr/www/crlibm/

  15. Lefèvre, V., Muller, J.-M., Tisserand, A.: The Table Maker’s Dilemma. INRIA Research Report 98-12 (1998)

    Google Scholar 

  16. Lefèvre, V., Muller, J.-M.: Worst Cases for Correct Rounding of the Elementary Functions in Double Precision. In: Proc. of 15th IEEE Symposium on Computer Arithmetic, Vail, Colorado, USA, June  (2001)

    Google Scholar 

  17. Edelman, A.: The Mathematics of the Pentium Division Bug. SIAM Review 39(1), 54–67 (1997)

    Article  MATH  MathSciNet  Google Scholar 

  18. Ziv, A., Aharoni, M., Asaf, S.: Solving Range Constraints for Binary Floating-Point Instructions. In: Proc. of 16th IEEE Symposium on Computer Arithmetic (ARITH-16 2003), pp. 158–163 (2003)

    Google Scholar 

  19. http://www.mpfr.org

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kuliamin, V. (2010). Standardization and Testing of Mathematical Functions. In: Pnueli, A., Virbitskaite, I., Voronkov, A. (eds) Perspectives of Systems Informatics. PSI 2009. Lecture Notes in Computer Science, vol 5947. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-11486-1_22

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-11486-1_22

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-11485-4

  • Online ISBN: 978-3-642-11486-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics