Floating-point arithmetic provides a fast but inexact way of computing geometric predicates. In order for these predicates to be exact, it is important to rule out all the numerical situations where floating-point computations could lead to wrong results. Taking into account all the potential problems is a tedious work to do by hand. We study in this paper a floating-point implementation of a filter for the orientation-2 predicate, and how a formal and partially automatized verification of this algorithm avoided many pitfalls. The presented method is not limited to this particular predicate, it can easily be used to produce correct semi-static floating-point filters for other geometric predicates.
@article{ITA_2007__41_1_57_0, author = {Melquiond, Guillaume and Pion, Sylvain}, title = {Formally certified floating-point filters for homogeneous geometric predicates}, journal = {RAIRO - Theoretical Informatics and Applications - Informatique Th\'eorique et Applications}, volume = {41}, year = {2007}, pages = {57-69}, doi = {10.1051/ita:2007005}, mrnumber = {2330043}, zbl = {1133.65010}, language = {en}, url = {http://dml.mathdoc.fr/item/ITA_2007__41_1_57_0} }
Melquiond, Guillaume; Pion, Sylvain. Formally certified floating-point filters for homogeneous geometric predicates. RAIRO - Theoretical Informatics and Applications - Informatique Théorique et Applications, Tome 41 (2007) pp. 57-69. doi : 10.1051/ita:2007005. http://gdmltest.u-ga.fr/item/ITA_2007__41_1_57_0/
[1] Interval arithmetic yields efficient dynamic filters for computational geometry. Discrete Appl. Math. 109 (2001) 25-47. | Zbl 0967.68157
, and ,[2] Exact geometric computation using cascading. Internat. J. Comput. Geom. Appl. 11 (2001) 245-266. | Zbl 1074.65509
, and ,[3] The CGAL Manual, 2004. Release 3.1.
[4] Generating formally certified bounds on values and round-off errors, in 6th Conference on Real Numbers and Computers. Dagstuhl, Germany (2004).
and ,[5] Efficient exact geometric predicates for Delaunay triangulations, in Proc. 5th Workshop Algorithm Eng. Exper. (2003) 37-44.
and ,[6] Static analysis yields efficient exact integer arithmetic for computational geometry. ACM Trans. Graph. 15 (1996) 223-248.
and ,[7] LN User Manual. AT&T Bell Laboratories (1993).
and ,[8] Classroom examples of robustness problems in geometric computations, in Proc. 12th European Symposium on Algorithms, Lect. Notes Comput. Sci. 3221 (2004) 702-713. | Zbl 1111.68725
, , , and ,[9] Automatic generation of staged geometric predicates, in International Conference on Functional Programming, Florence, Italy (2001). Also Carnegie Mellon CS Tech Report CMU-CS-01-141.
, and ,[10] Interval methods for systems of equations. Cambridge University Press (1990). | MR 1100928 | Zbl 0715.65030
,[11] De la géométrie algorithmique au calcul géométrique. Thèse de doctorat en sciences, Université de Nice-Sophia Antipolis, France (1999). TU-0619.
,[12] Adaptive precision floating-point arithmetic and fast robust geometric predicates. Discrete Comput. Geom. 18 (1997) 305-363. | Zbl 0892.68098
,[13] An American national standard: IEEE standard for binary floating point arithmetic. ACM SIGPLAN Notices 22 (1987) 9-25.
et al.,[14] The exact computation paradigm, in Computing in Euclidean Geometry, edited by D.-Z. Du and F.K. Hwang, World Scientific, Singapore, 2nd edition, Lect. Notes Ser. Comput. 4 (1995) 452-492.
, ,