skip to main content
10.1145/507635.507662acmconferencesArticle/Chapter ViewAbstractPublication PagesicfpConference Proceedingsconference-collections
Article

Automatic generation of staged geometric predicates

Published:01 October 2001Publication History

ABSTRACT

Algorithms in Computational Geometry and Computer Aided Design are often developed for the Real RAM model of computation, which assumes exactness of all the input arguments and operations. In practice, however, the exactness imposes tremendous limitations on the algorithms --- even the basic operations become uncomputable, or prohibitively slow. When the computations of interest are limited to determining the sign of polynomial expressions over floating point numbers, faster approaches are available. One can evaluate the polynomial in floating-point first, together with some estimate of the rounding error, and fall back to exact arithmetic only if this error is too big to determine the sign reliably. A particularly efficient variation on this approach has been used by Shewchuk in his robust implementations of Orient and InSphere geometric predicates. We extend Shewchuk's method to arbitrary polynomial expressions. The expressions are given as programs in a suitable source language featuring basic arithmetic operations of addition, subtraction, multiplication and squaring, which are to be perceived by the programmer as exact. The source language also allows for anonymous functions, and thus enables the common functional programming technique of staging. The method is presented formally through several judgments that govern the compilation of the source expression into target code, which is then easily transformed into SML or, in case of single-stage expressions, into C.

References

  1. M. 0. Benouamer, P. Jailon, D. Michelucci, and J. M. Moreau. A lazy exact arithmetic. In E. E. Swartzlander, NI. J. Irwin, and J. Jullien, editors, Proceedings of the 11th IEEE Symposium on Computer Arithmetic, pages 242-249, Windsor, Canada, June 1993. IEEE Computer Society Press, Los Alamitos, CA.Google ScholarGoogle ScholarCross RefCross Ref
  2. S. Fortune and C. J. V. Wyk. Efficient exact arithmetic for computational geometry. In Ninth Annual Symposium on Computational Geometry, pages 163-172. Association for Computing Machinery, May 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. S. Funke and K. Mehlhorn. LOOK - a lazy object-oriented kernel for geometric computation. In Proceedings of the 16th Symposium on Computational Geometry, pages 156-165. ACM. June 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. IEEE. IEEE standard for binary floating-point arithmetic. ACM SIGPLAN Notices, 22(2):925, Feb. 1985.Google ScholarGoogle Scholar
  5. K. Mehlhorn and S. Nher. LEDA: A Platform for Combznatonal and Geometric Computing. Cambridge University Press, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. D. Michelucci and J. M. Moreau, Lazy arithmetic. IEEE Transactions on Computers, 46(9), September 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. A. Nanevski, G. Blelloch, and R. Harper. Automatic generation of staged geometric predicates. Technical Report CMU-CS-01-141, School of Computer Science, Carnegie Mellon University, June 2001.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. D. M. Priest, On Properties of Floating Point Arithmetics: Numerical Stability and the Cost of Accurate Computations. PhD thesis, University of California at Berkeley, Berkeley, California, November 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. S. A. Seshia, C. E. Blelloch, and R. W. Harper. A performance comparison of interval arithmetic and error analysis in geometric predicates. Technical Report CMU-CS-00-172, School of Computer Science, Carnegie Mellon University, December 2000.Google ScholarGoogle Scholar
  10. J. R. Shewchuk. http://www. cs.cmu.edu/quake/triangle.btml.Google ScholarGoogle Scholar
  11. J. R. Shewchuk. Delaunay Refinement Mesh Generation. PhD thesis, Carnegie Mellon University, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Automatic generation of staged geometric predicates

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Conferences
          ICFP '01: Proceedings of the sixth ACM SIGPLAN international conference on Functional programming
          October 2001
          277 pages
          ISBN:1581134150
          DOI:10.1145/507635
          • cover image ACM SIGPLAN Notices
            ACM SIGPLAN Notices  Volume 36, Issue 10
            October 2001
            276 pages
            ISSN:0362-1340
            EISSN:1558-1160
            DOI:10.1145/507669
            Issue’s Table of Contents

          Copyright © 2001 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 1 October 2001

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • Article

          Acceptance Rates

          ICFP '01 Paper Acceptance Rate23of66submissions,35%Overall Acceptance Rate333of1,064submissions,31%

          Upcoming Conference

          ICFP '24

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader