Sign Determination in Residue Number Systems

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.

[1]  Sylvain Pion,et al.  Exact rounding for geometric constructions , 1997 .

[2]  Christoph M. Hoffmann,et al.  How Solid is Solid Modeling? , 1996, WACG.

[3]  Richard I. Tanaka,et al.  Residue arithmetic and its applications to computer technology , 1967 .

[4]  Michael N. Vrahatis,et al.  Solving systems of nonlinear equations using the nonzero value of the topological degree , 1988, TOMS.

[5]  Chee Yap,et al.  The exact computation paradigm , 1995 .

[6]  Chee-Keng Yap,et al.  Towards Exact Geometric Computation , 1997, Comput. Geom..

[7]  Steven Fortune,et al.  Numerical stability of algorithms for 2D Delaunay triangulations , 1992, SCG '92.

[8]  Bruno Buchberger Computer algebra: symbolic and algebraic computation, 2nd Edition , 1983 .

[9]  Mariette Yvinec,et al.  Evaluation of a new method to compute signs of determinants , 1995, SCG '95.

[10]  Bud Mishra,et al.  Algorithmic Algebra , 1993, Texts and Monographs in Computer Science.

[11]  Victor Y. Pan,et al.  Algebraic and numerical techniques for the computation of matrix determinants , 1997 .

[12]  D. Du,et al.  Computing in Euclidean Geometry , 1995 .

[13]  Ioannis Z. Emiris,et al.  A Complete Implementation for Computing General Dimensional Convex Hulls , 1998, Int. J. Comput. Geom. Appl..

[14]  John F. Canny An Improved Sign Determination Algorithm , 1991, AAECC.

[15]  Victor Y. Pan,et al.  Parallel Computation of Polynomial GCD and Some Related Parallel Computations over Abstract Fields , 1996, Theor. Comput. Sci..

[16]  Franz Winkler Computing by homomorphic images , 1996 .

[17]  G. E. Collins,et al.  Real Zeros of Polynomials , 1983 .

[18]  John E. Hopcroft,et al.  Robust set operations on polyhedral solids , 1987, IEEE Computer Graphics and Applications.

[19]  John F. Canny,et al.  A General Approach to Removing Degeneracies , 1995, SIAM J. Comput..

[20]  Kokichi Sugihara,et al.  A robust Topology-Oriented Incremental algorithm for Voronoi diagrams , 1994, Int. J. Comput. Geom. Appl..

[21]  Victor Y. Pan,et al.  Certiied Numerical Computation of the Sign of a Matrix Determinant , , 1998 .

[22]  Herbert Edelsbrunner,et al.  Simulation of simplicity: a technique to cope with degenerate cases in geometric algorithms , 1988, SCG '88.

[23]  Mariette Yvinec,et al.  Efficient Exact Evaluation of Signs of Determinants , 1997, Symposium on Computational Geometry.

[24]  Donald E. Knuth,et al.  The art of computer programming. Vol.2: Seminumerical algorithms , 1981 .

[25]  Christopher J. Van Wyk,et al.  Static analysis yields efficient exact integer arithmetic for computational geometry , 1996, TOGS.

[26]  BasuSaugata,et al.  On the combinatorial and algebraic complexity of quantifier elimination , 1996 .

[27]  Ashutosh Rege A complete and practical algorithm for geometric theorem proving (extended abstract) , 1995, SCG '95.

[28]  Kenneth L. Clarkson,et al.  Safe and effective determinant evaluation , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.

[29]  Christopher J. Van Wyk,et al.  Efficient exact arithmetic for computational geometry , 1993, SCG '93.

[30]  C. Yap Exact computational geometry and tolerancing metrology , 1994 .

[31]  Dirk Riehle,et al.  Domain-driven framework layering in large systems , 2000, CSUR.

[32]  Bruno Buchberger,et al.  Computer algebra symbolic and algebraic computation , 1982, SIGS.

[33]  Dinesh Manocha,et al.  Efficient B-rep Generation of Low-Degree Sculptured Solids Using Exact Arithmetic , 1996 .

[34]  Jonathan Richard Shewchuk,et al.  Robust adaptive floating-point geometric predicates , 1996, SCG '96.

[35]  Victor Y. Pan,et al.  Computing exact geometric predicates using modular arithmetic with single precision , 1997, SCG '97.

[36]  Victor Y. Pan,et al.  Modular Arithmetic for Linear Algebra Computations in the Real Field , 1998, J. Symb. Comput..

[37]  V. Pan,et al.  Polynomial and Matrix Computations , 1994, Progress in Theoretical Computer Science.

[38]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[39]  Jean-Michel Muller,et al.  A New Euclidean Division Algorithm for Residue Number Systems , 1998, J. VLSI Signal Process..

[40]  Donald E. Knuth The Art of Computer Programming 2 / Seminumerical Algorithms , 1971 .

[41]  Behrooz Parhami,et al.  An Approximate Sign Detection Method for Residue Numbers and its Application to RNS Division , 1994 .

[42]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[43]  Kurt Mehlhorn,et al.  Exact geometric computation in LEDA , 1995, SCG '95.

[44]  Victor J. Milenkovic,et al.  Double precision geometry: a general technique for calculating line and segment intersections using rounded arithmetic , 1989, 30th Annual Symposium on Foundations of Computer Science.