Skip to main content

The Design of Core 2: A Library for Exact Numeric Computation in Geometry and Algebra

  • Conference paper
Mathematical Software – ICMS 2010 (ICMS 2010)

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

Included in the following conference series:

Abstract

There is a growing interest in numeric-algebraic techniques in the computer algebra community as such techniques can speed up many applications. This paper is concerned with one such approach called Exact Numeric Computation (ENC). The ENC approach to algebraic number computation is based on iterative verified approximations, combined with constructive zero bounds. This paper describes Core 2, the latest version of the Core Library, a package designed for applications such as non-linear computational geometry. The adaptive complexity of ENC combined with filters makes such libraries practical.

Core 2 smoothly integrates our algebraic ENC subsystem with transcendental functions with ε-accurate comparisons. This paper describes how the design of Core 2 addresses key software issues such as modularity, extensibility, efficiency in a setting that combines algebraic and transcendental elements. Our redesign preserves the original goals of the Core Library, namely, to provide a simple and natural interface for ENC computation to support rapid prototyping and exploration. We present examples, experimental results, and timings for our new system, released as Core Library 2.0.

Yap, Du and Yu are supported by NSF Grants CCF-043836, CCF-0728977 and CCF-0917093, and with partial support from Korea Institute of Advance Studies (KIAS). Brönnimann is supported by NSF Career Grant 0133599. Brönnimann, Pion, and Yap are supported by an Collaborative Action GENEPI grant at INRIA and an NSF International Collaboration Grant NSF-04-036, providing travel support for Du and Yu to INRIA.

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. Aho, V., Hopcroft, J.E., Ullman, J.D.: The Design and Analysis of Computer Algorithms. Addison-Wesley, Reading (1974)

    MATH  Google Scholar 

  2. Berberich, E., Kerber, M., Sagraloff, M.: Exact geometric-topological analysis of algebraic surfaces. In: 24th ACM Symp. on Comp. Geometry, pp. 164–173 (2008)

    Google Scholar 

  3. Brattka, V., Hertling, P.: Feasible real random access machines. J. of Complexity 14(4), 490–526 (1998)

    Article  MATH  MathSciNet  Google Scholar 

  4. Brent, R.P.: Fast multiple-precision evaluation of elementary functions. J. ACM 23, 242–251 (1976)

    Article  MATH  MathSciNet  Google Scholar 

  5. Brönnimann, H., Burnikel, C., Pion, S.: Interval arithmetic yields efficient dynamic filters for computational geometry. Discrete Applied Mathematics 109(1-2), 25–47 (2001)

    Article  MATH  MathSciNet  Google Scholar 

  6. Burnikel, C., Funke, S., Mehlhorn, K., Schirra, S., Schmitt, S.: A separation bound for real algebraic expressions. Algorithmica 55(1), 14–28 (2009)

    Article  MATH  MathSciNet  Google Scholar 

  7. Burnikel, C., Funke, S., Seel, M.: Exact geometric computation using cascading. Int’l. J. Comput. Geometry and Appl. 11(3), 245–266 (2001)

    Article  MATH  MathSciNet  Google Scholar 

  8. Chang, E.-C., Choi, S.W., Kwon, D., Park, H., Yap, C.: Shortest paths for disc obstacles is computable. Int’l. J. Comput. Geometry and Appl. 16(5-6), 567–590 (2006); Gao, X.S., Michelucci, D.: Special Issue of IJCGA on Geometric Constraints

    Google Scholar 

  9. Cohen, H.: A Course in Computational Algebraic Number Theory. Springer, Heidelberg (1993)

    MATH  Google Scholar 

  10. Core Library homepage, since, Software download, source, documentation and links (1999), http://cs.nyu.edu/exact/core/

  11. de Berg, M., van Kreveld, M., Overmars, M., Schwarzkopf, O.: Computational Geometry: Algorithms and Applications. Springer, Berlin (1997)

    MATH  Google Scholar 

  12. Defour, D., Hanrot, G., Lefévre, 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 

  13. Du, Z.: Guaranteed Precision for Transcendental and Algebraic Computation made Easy. Ph.D. thesis, New York University, Department of Computer Science, Courant Institute (May 2006) http://cs.nyu.edu/exact/doc/

  14. Du, Z., Eleftheriou, M., Moreira, J., Yap, C.: Hypergeometric functions in exact geometric computation. In: Brattka, V., Schoeder, M., Weihrauch, K. (eds.) Proc. 5th Workshop on Computability and Complexity in Analysis, Malaga, Spain, July 12-13. ENTCS, vol. 66(1), pp. 55–66 (2002), http://www.elsevier.nl/locate/entcs/volume66.html

  15. Du, Z., Yap, C.: Absolute approximation of the general hypergeometric functions. In: il Pae, S., Park, H. (eds.) Proc. 7th Asian Symposium on Computer Mathematics (ASCM 2005), December 8-10, pp. 246–249. Korea Institute for Advanced Study, Seoul (2005)

    Google Scholar 

  16. Fabri, A., Giezeman, G.-J., Kettner, L., Schirra, S., Schoenherr, S.: The CGAL kernel: a basis for geometric computation. In: Lin, M.C., Manocha, D. (eds.) FCRC-WS 1996 and WACG 1996. LNCS, vol. 1148, pp. 191–202. Springer, Heidelberg (1996)

    Chapter  Google Scholar 

  17. Fortune, S.J., van Wyk, C.J.: Static analysis yields efficient exact integer arithmetic for computational geometry. ACM Transactions on Graphics 15(3), 223–248 (1996)

    Article  Google Scholar 

  18. Fousse, L., Hanrot, G., Lefèvre, V., Pélissier, P., Zimmermann, P.: Mpfr: A multiple-precision binary floating-point library with correct rounding. ACM Trans. Math. Softw. 33(2), 13 (2007)

    Article  Google Scholar 

  19. Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley Professional Computing Series. Addison-Wesley Publishing Company, New York (1995)

    Google Scholar 

  20. Goodman, J.E., O’Rourke, J. (eds.): Handbook of Discrete and Computational Geometry. CRC Press LLC, Boca Raton (1997)

    MATH  Google Scholar 

  21. Gowland, P., Lester, D.: A survey of exact arithmetic implementations. In: Blank, J., Brattka, V., Hertling, P. (eds.) CCA 2000. LNCS, vol. 2064, pp. 30–47. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  22. Karamcheti, V., Li, C., Pechtchanski, I., Yap, C.: A Core library for robust numerical and geometric computation. In: 15th ACM Symp. Computational Geometry, pp. 351–359 (1999)

    Google Scholar 

  23. Li, C.: Exact Geometric Computation: Theory and Applications. Ph.D. thesis, New York University, Department of Computer Science, Courant Institute (January 2001), http://cs.nyu.edu/exact/doc/

  24. Li, C., Pion, S., Yap, C.: Recent progress in Exact Geometric Computation. J. of Logic and Algebraic Programming 64(1), 85–111 (2004); Special issue on Practical Development of Exact Real Number Computation

    Google Scholar 

  25. Lin, L., Yap, C.: Adaptive isotopic approximation of nonsingular curves: the parametrizability and non-local isotopy approach. In: Proc. 25th ACM Symp. on Comp. Geometry, Aarhus, Denmark, June 8-10, pp. 351–360 (2009); Accepted for Special Issue of SoCG 2009 in DCG (2009)

    Google Scholar 

  26. Many digits friendly competition, The details of the competition, including final results (October 3-4, 2005), http://www.cs.ru.nl/~milad/manydigits/

  27. Mehlhorn, K., Näher, S.: LEDA: a platform for combinatorial and geometric computing. Comm. of the ACM 38, 96–102 (1995)

    Article  Google Scholar 

  28. Mehlhorn, K., Schirra, S.: Exact computation with leda real – theory and geometric applications. In: Alefeld, G., Rohn, J., Rump, S., Yamamoto, T. (eds.) Symbolic Algebraic Methods and Verification Methods, Vienna, pp. 163–172. Springer, Heidelberg (2001)

    Google Scholar 

  29. Mignotte, M.: Identification of algebraic numbers. J. Algorithms 3, 197–204 (1982)

    Article  MATH  MathSciNet  Google Scholar 

  30. Muller, J.-M.: Elementary Functions: Algorithms and Implementation. Birkhäuser, Boston (1997)

    MATH  Google Scholar 

  31. Müller, N.T.: The iRRAM: Exact arithmetic in C++. In: Blank, J., Brattka, V., Hertling, P. (eds.) CCA 2000. LNCS, vol. 2064, pp. 222–252. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  32. Müller, N.T., Escardo, M., Zimmermann, P.: Guest editor’s introduction: Practical development of exact real number computation. J. of Logic and Algebraic Programming 64(1), Special Issue (2004)

    Google Scholar 

  33. Neumaier, A.: Interval Methods for Systems of Equations. Cambridge University Press, Cambridge (1990)

    MATH  Google Scholar 

  34. Ouchi, K.: Real/Expr: Implementation of an Exact Computation Package. Master’s thesis, New York University, Department of Computer Science, Courant Institute (January 1997), http://cs.nyu.edu/exact/doc/

  35. Pion, S., Yap, C.: Constructive root bound method for k-ary rational input numbers. Theor. Computer Science 369(1-3), 361–376 (2006a)

    Article  MATH  MathSciNet  Google Scholar 

  36. Plantinga, S., Vegter, G.: Isotopic approximation of implicit curves and surfaces. In: Proc. Eurographics Symposium on Geometry Processing, pp. 245–254. ACM Press, New York (2004)

    Chapter  Google Scholar 

  37. Preparata, F.P., Shamos, M.I.: Computational Geometry. Springer, Heidelberg (1985)

    Google Scholar 

  38. Richardson, D.: How to recognize zero. J. Symbolic Computation 24, 627–645 (1997)

    Article  MATH  Google Scholar 

  39. Richardson, D.: Zero tests for constants in simple scientific computation. Mathematics in Computer Science 1(1), 21–38 (2007); Inaugural issue on Complexity of Continuous Computation

    Article  MATH  MathSciNet  Google Scholar 

  40. Schirra, S.: Robustness and precision issues in geometric computation. In: Sack, J., Urrutia, J. (eds.) Handbook of Computational Geometry. Elsevier Science Publishers, B.V., North-Holland, Amsterdam (1999)

    Google Scholar 

  41. Schmitt, S.: The diamond operator – implementation of exact real algebraic numbers. In: Ganzha, V.G., Mayr, E.W., Vorozhtsov, E.V. (eds.) CASC 2005. LNCS, vol. 3718, pp. 355–366. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  42. Stroustrup, B.: The Design and Evolution of C++. Addison-Wesley, Reading (April 1994)

    Google Scholar 

  43. van der Hoeven, J.: Effective real numbers in Mmxlib. In: Proc. ISSAC 2006, Genova, Italy, pp. 138–145 (2006)

    Google Scholar 

  44. Yap, C., Li, C., Pion, S., Du, Z., Sharma, V.: Core Library Tutorial: a library for robust geometric computation (1999–2004); Version 1.1 was released in January 1999. Version 1.6 in June 2003, Source and documents from, http://cs.nyu.edu/exact/

  45. Yap, C.K.: In praise of numerical computation. In: Albers, S., Alt, H., Näher, S. (eds.) Efficient Algorithms. LNCS, vol. 5760, pp. 380–407. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  46. Yap, C.K.: Tutorial: Exact numerical computation in algebra and geometry. In: Proc. 34th Int’l Symp. Symbolic and Algebraic Comp. (ISSAC 2009), KIAS, Seoul, Korea, July 28-31, pp. 387–388 (2009)

    Google Scholar 

  47. Yu, J.: Exact arithmetic solid modeling. Ph.D. dissertation, Department of Computer Science, Purdue University, West Lafayette, IN 47907, Technical Report No. CSD-TR-92-037 (June 1992)

    Google Scholar 

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

Yu, J., Yap, C., Du, Z., Pion, S., Brönnimann, H. (2010). The Design of Core 2: A Library for Exact Numeric Computation in Geometry and Algebra. In: Fukuda, K., Hoeven, J.v.d., Joswig, M., Takayama, N. (eds) Mathematical Software – ICMS 2010. ICMS 2010. Lecture Notes in Computer Science, vol 6327. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15582-6_24

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-15582-6_24

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-15581-9

  • Online ISBN: 978-3-642-15582-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics