Simple floating-point filters for the two-dimensional orientation problem
This paper is concerned with floating-point filters for a two dimensional orientation problem which is a basic problem in the field of computational geometry. If this problem is only approximately solved by floating-point arithmetic, then an incorrect result may be obtained due to accumulation of rounding errors. A floating-point filter can quickly guarantee the correctness of the computed result if the problem is well-conditioned. In this paper, a simple semi-static floating-point filter which handles floating-point exceptions such as overflow and underflow by only one branch is developed. In addition, an improved fully-static filter is developed.
KeywordsFloating-point arithmetic Floating-point filter Computational geometry
Mathematics Subject Classification65G50 68U05
The authors wishes to thank the anonymous referee for constructive and valuable comments. This research was partially supported by the CREST program, Japan Science and Technology Agency (JST).
- 3.Computational Geometry Algorithms Library. http://www.cgal.org/
- 5.IEEE Standard for Floating-Point Arithmetic, Std 754–2008, 2008Google Scholar
- 8.Meyer, A., Pion, S.: FPG: A code generator for fast and certified geometric predicates. In: 8th Conference on Real Numbers and Computers (RNC), pp. 47–60, Santiago de Compostela, Spain (2008)Google Scholar
- 9.Pan, V.Y., Yu, Y.: Certified computation of the sign of a matrix determinant. In: Proceedings of the 10th Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 715–724, ACM Press, New York, and SIAM Publications, Philadelphia (1999)Google Scholar
- 14.Shewchuk, J.R.: C code for the 2D and 3D orientation and incircle tests. http://www.cs.cmu.edu/~quake/robust.html