×

Sign determination in residue number systems. (English) Zbl 0912.68083

Summary: Sign determination is a fundamental problem in algebraic as well as geometric computing. It is the critical operation when using real algebraic numbers and exact geometric predicates. We propose an exact and efficient method that determines the sign of a multivariate polynomial expression with rational coefficients. Exactness is achieved by using modular computation. Although this usually requires some multiprecision computation, our novel techniques of recursive relaxation of the moduli and their variants enable us to carry out sign determination and comparisons by using only single precision. Moreover, to exploit modern day hardware, we exclusively rely on floating point arithmetic, which leads us to a hybrid symbolic-numeric approach to exact arithmetic. We show how our method can be used to generate robust and efficient implementations of real algebraic and geometric algorithms including Sturm sequences, algebraic representation of points and curves, convex hull and Voronoi diagram computations and solid modeling. This method is highly parallelizable, easy to implement, and compares favorably with known multiprecision methods from a practical complexity point of view. We substantiate these claims by experimental results and comparisons to other existing approaches.

MSC:

68W30 Symbolic computation and algebraic computation

Software:

LEDA; Hull; Voronoi
Full Text: DOI

References:

[1] Aho, A. V.; Hopcroft, J. E.; Ullman, J. D., The Design and Analysis of Computer Algorithms (1974), Addison-Wesley: Addison-Wesley Reading, MA · Zbl 0207.01701
[2] Akman, V.; Franklin, R., On the question “Is ∑\(_1^n\) √\(a_i\)⩽\(L\)”?, Bull. EATCS, 28, 16-20 (1986) · Zbl 1030.68916
[3] Avnaim, F.; Boissonnat, J.-D.; Devillers, O.; Preparata, F.; Yvinec, M., Evaluation of a new method to compute signs of determinants, (Proc. 11th Annu. ACM Symp. Comput. Geom. (1995)), C16-C17
[4] Basu, S.; Pollack, R.; Roy, M.-F., On the combinatorial and algebraic complexity of quantifier elimination, (Proc. IEEE Symp. Foundations of Comput. Sci. (1994)) · Zbl 0885.68070
[5] Bini, D.; Pan, V. Y., Polynomial and Matrix Computations, (Fundamental Algorithms, vol. 1 (1994), Birkhäuser: Birkhäuser Boston) · Zbl 0809.65012
[6] Bini, D.; Pan, V. Y.; Yu, Y., Certified numerical computation of the sign of matrix determinant, Preliminary Report (1997)
[7] Bajard, J.-C.; Didier, L. S.; Muller, J.-M., A new Euclidean division algorithm for residue number systems, (Proc. ASAP (1996)), 45-54
[8] Brönnimann, H.; Emiris, I. Z.; Pan, V.; Pion, S., Computing exact geometric predicates using modular arithmetic with single precision, (Proc. ACM Symp. on Computational Geometry (1997)), 174-182
[9] Brönnimann, H.; Pion, S., Exact rounding for geometric constructions, (Proc. of GAMM/IMACS Int. Symp. on Scientific Computing. Proc. of GAMM/IMACS Int. Symp. on Scientific Computing, Comput. Arithm. and Validated Numerics (1997)), XIII-1-XIII-3
[10] Brönnimann, H.; Yvinec, M., Efficient exact evaluation of signs of determinants, (Research Report 3140 (1997), INRIA: INRIA Sophia-Antipolis) · Zbl 0947.65053
[11] Burnikel, C.; Könnemann, J.; Mehlhorn, K.; Näher, S.; Schirra, S.; Uhrig, C., Exact geometric computation in LEDA, (Proc. 11th Annu. ACM Symp. Comput. Geom. (1995)), C18-C19, Package available at
[12] J.F. Canny, An improved sign determination algorithm, H.F. Mattson, T. Mora, T.R.N. Rao (Eds.), Proc. Int. Symp. Applied Algebra, Algebraic Algorithms and Error-Correcting Codes, Lecture Notes in Computer Science, vol. 539, Springer, Berlin, pp. 108-117.; J.F. Canny, An improved sign determination algorithm, H.F. Mattson, T. Mora, T.R.N. Rao (Eds.), Proc. Int. Symp. Applied Algebra, Algebraic Algorithms and Error-Correcting Codes, Lecture Notes in Computer Science, vol. 539, Springer, Berlin, pp. 108-117. · Zbl 0768.68066
[13] Clarkson, K. L., Safe and effective determinant evaluation, (Proc. 33rd Annu. IEEE Symp. Found. Comput. Sci. (1992)), 387-395 · Zbl 0927.68040
[14] Collins, G. E.; Loos, R., Real zeros of polynomials, (Buchberger, B.; Collins, G. E.; Loos, R., Computer Algebra: Symbolic and Algebraic Computation (1982), Springer: Springer Wien), 83-94 · Zbl 0533.68038
[15] Edelsbrunner, H.; Mücke, E. P., Simulation of simplicity: a technique to cope with degenerate cases in geometric algorithms, ACM Trans. Graphics, 9, 1, 67-104 (1990) · Zbl 0732.68099
[16] Emiris, I. Z., (Preliminary version as Research Report 2551 (1995), INRIA: INRIA Sophia-Antipolis, France), to appear. · Zbl 0882.68143
[17] Emiris, I. Z.; Canny, J. F., A general approach to removing degeneracies, SIAM J. Comput., 24, 3, 650-664 (1995) · Zbl 0831.68043
[18] Emiris, I. Z.; Pan, V. Y.; Yu, Y., Modular arithmetic for linear algebra computations in the real field, J. Symbol. Comput. (1998), to appear. · Zbl 0911.65035
[19] Fortune, S., Numerical stability of algorithms for 2-d Delaunay triangulation, and Voronoi diagrams, (Proc. 8th Annu. ACM Symp. Comput. Geom. (1992)), 83-92
[20] Fortune, S.; Van Wyk, C. J., Efficient exact arithmetic for computational geometry, (Proc. 9th Annu. ACM Symp. Comput. Geom. (1993)), 163-172
[21] Fortune, S.; Van Wyk, C. J., Static analysis yields efficient exact integer arithmetic for computational geometry, (ACM Trans. Graphics (1996))
[22] Goldberg, D., What every computer scientist should know about floating-point arithmetic, ACM Comput. Surv., 32, 1, 5-48 (1991)
[23] Golub, G. H.; van Loan, C. F., Matrix Computations (1996), Johns Hopkins University Press: Johns Hopkins University Press Baltimore, MD · Zbl 0865.65009
[24] Hoffmann, C. M., How solid is solid modeling?, (Applied Computational Geometry. Applied Computational Geometry, Lecture Notes in Computer Science, vol. 1148 (1996), Springer: Springer Berlin), 1-8 · Zbl 1541.68396
[25] Hoffmann, C. M.; Hopcroft, J. E.; Karasick, M. T., Robust set operations on polyhedral solids, IEEE Comput. Graph. Appl., 9, 6, 50-59 (1989)
[26] Hung, C. Y.; Parhami, B., An approximate sign detection method for residue numbers and its application to RNS division, Comput. Math. Appl., 27, 4, 23-35 (1994) · Zbl 0805.68059
[27] Keyser, J.; Krishnan, S.; Manocha, D., Efficient B-rep generation of low degree sculptured solids using exact arithmetic, (Technical Report 40 (1996), Dept. Computer Science, Univ. N. Carolina: Dept. Computer Science, Univ. N. Carolina Chapel Hill) · Zbl 0997.65040
[28] Knuth, D. E., (The Art of Computer Programming: Seminumerical Algorithms, vol. 2 (1997), Addison-Wesley: Addison-Wesley Reading, MA) · Zbl 0895.68055
[29] Lauer, M., Computing by homomorphic images, (Buchberger, B.; Collins, G. E.; Loos, R., Computer Algebra: Symbolic and Algebraic Computation (1982), Springer: Springer Wien), 139-168 · Zbl 0513.68035
[30] Milenkovic, V., Double precision geometry: a general technique for calculating line and segment intersections using rounded arithmetic, (Proc. 30th Annu. IEEE Symp. Found. Comput. Sci. (1989)), 500-505
[31] Mishra, B., Algorithmic Algebra (1993), Springer: Springer New York · Zbl 0804.13009
[32] Pan, V. Y., Parallel computation of polynomial GCD and some related parallel computations over abstract fields, Theoret. Comput. Sci., 162, 2, 173-223 (1996) · Zbl 0874.12010
[33] Pan, V. Y.; Yu, Y.; Stewart, C., Algebraic and numerical techniques for the computation of matrix determinants, Comput. Math., 34, 1, 43-70 (1997), (with applications) · Zbl 0885.65052
[34] Rege, A., A complete and practical algorithm for geometric theorem proving, (Proc. ACM Symp. on Computational Geometry (1995)), 277-286
[35] Szabo, N. S.; Tanaka, R. I., Residue Arithmetic and its Applications to Computer Technology (1967), McGraw-Hill: McGraw-Hill New York · Zbl 0168.15303
[36] Shewchuk, J. R., Robust adaptive floating-point geometric predicates, (Proc. 12th Annu. ACM Symp. Computational Geometry (1996)), 141-150
[37] Sugihara, K.; Iri, M., A robust topology-oriented incremental algorithm for Voronoi diagrams, Int. J. Comput. Geom. Appl., 4, 179-228 (1994) · Zbl 0820.68126
[38] Vrahatis, M. N., Solving systems of nonlinear equations using the nonzero value of the topological degree, ACM Trans. on Math. Software, 14, 4, 312-329 (1998) · Zbl 0665.65052
[39] Yap, C., Towards exact geometric computation, Comput. Geom. Theory Appl., 7, 3-23 (1997) · Zbl 0869.68104
[40] Yap, C. K., Exact computational geometry and tolerancing metrology, (Avis, D.; Bose, J., Snapshots of Computational and Discrete Geometry. Snapshots of Computational and Discrete Geometry, Tech. Rep. SOCS-94.50, vol. 3 (1995), McGill School of Comput. Sci)
[41] Yap, C. K.; Dubhe, T., The exact computation paradigm, (Du, D.; Hwang, F., Computing in Euclidean Geometry (1995), World Scientific Press: World Scientific Press Singapore)
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.