Approximation Methods for Algebraic Curves and ... - Semantic Scholar

Report 3 Downloads 157 Views
Purdue University

Purdue e-Pubs Computer Science Technical Reports

Department of Computer Science

1988

Approximation Methods for Algebraic Curves and Surfaces Chandrajit L. Bajaj Report Number: 88-822

Bajaj, Chandrajit L., "Approximation Methods for Algebraic Curves and Surfaces" (1988). Computer Science Technical Reports. Paper 701. http://docs.lib.purdue.edu/cstech/701

This document has been made available through Purdue e-Pubs, a service of the Purdue University Libraries. Please contact [email protected] for additional information.

APPROXll\1ATION METHODS FOR ALGEBRAIC CURVES AND SURFACES Ch:llldl'ujit L. Bujaj

CSD TR-822 Noycmher 1988

Local Parameterization, Implicitization and Inversion of Real Algebraic Curves (Extended Abstract) Chanderjit L. Bajaj'"

Computer Science Department, Purdue University

1

Introduction

Preliminaries An algebraic plane curve of degree n is implicitly defined by a single polynomial equation f(x,y) = 0 of degree n. A rational algebraic curve of degree n can additionally be defined by rational parametric equations which are given as (x = G1 (u),y = Gz(u)), where G l and Gz are rational functions in

1.1.

of degree n, i.e., each is a quotient of polynomials in

1.1.

of maximum degree

n. An algebraic space curve, defined by the intersection of two algebraic surfaces l can be given either as a pair of polynomial equations (!I(x,y,z) = 0 and h(x,v,z) = 0) or as two sets of parametric equations (x = G1,1(Ut, vd, y = G2,l(Ul,vd,z = G3 ,l(Ul' vt}) and (x = G 1,Z(U2, 112), Y = G 2,2(U2,V2),Z = G3,2(U2,V2)), where the GiJ , i = 1,2,3, j = 1,2, are rational. functions. Rational. algebraic space curves are additionally representable as (x = Gt(u),y = G 2 (u),z = G3 (u)), where Gt, G2 and G 3 are rational. functions in u. Rational curves are only a subset of implicit algebraic curves of the same degree. While all degree two curves (conics) are rational, only a subset of degree three (cubics) and higher degree curves are rational. In general, a necessary and sufficient condition for the global rationality of an algebraic curve of arbitrary degree is given by the Cayley-Riemann criterion: a curve is rational if and only if 9 = 0, where g, the genus of the curve is a measure of the deficiency of the curve's singularities from its maximum allowable limit [18].

The Problem Here we wish to consider all algebraic curves, and specifically of genus higher than zero. For

all these curves we wish to compute rational parameterizations in the local neighborhood of a ·Supported in pa.:r~ by ARO Contrac~ DAAG29·85-C0018 and ONR contrac~ N00014-88-K-0402 lIn modeling the boundary of physical objecls it suffices to consider only space curves defined by the intersection of two surfaces. Space curves in general can be defined by several surfaces, however this representation is difficult to handle equationally. General space curves is a topic with various unresolved issues of mathematical and computational interest and an area of future research.

1

point on the curve. This is always possible. At simple points of the curve a straighforward Taylor series expansion, followed by a truncation or a rational Pade approximation, proves sufficient. At a curve's singular point the problem is slighlty more complex, as the Taylor series is not defined. Nevertheless, the curve can be factored into a finite number of power series at the singular point, and rational approximations can be constructed from those. In particular then our problems are: • For an implicilty defined algebraic plane curve, compute a rational parametric representation

(x = Hl(t), Y :;. Hz(t)), for each real branch incident at a point p:;. (ao, be) on the curve, where H 1 (t), Hz(t) are rational functions over the Reals. • For a parameterically defined algebraic plane curve, compute an implicit representation

f(x,y) = 0, and an inverse relation t = F(x,y) valid about a point p = (ao,bo) on the curve, where f(x, y) is a polynomial and F(x, y) s a rational function over the Reals. • For an implicitly defined algebraic space curve, compute a rational parametric representation (x = H1(t), Y = Hz(t), z = H3 (t)), for each real branch incident at a point p = (ao,bo,Co) on the curve, where H1(t), Hz(t), H3 (t) are rational functions over the Reals. • For a parameterically defined algebraic plane curve, compute an implicit representation

(!I(x,y,z) = O,!2(x,y,z) = 0), and an inverse relation t = F(x,y,z) valid about a point p = (ao,bo,eo) on the curve, where (!I(x,y,z) = O,fz(x,y,z) = 0) is a polynomial and F(x, y, z) s a rational function over the Reals. Applications:

Rationality of the algebraic curve or surface is a restriction where advantages are obtained from having both the implicit and rational parametric representations {3, 15]. While the rational parametric form of representing a curve or surface allows greater ease for transformation and shape control, the implicit form is preferred for testing whether a point is on the given curve or surface and is further conducive to the direct application of algebraic techniques. Simpler algorithms are possible when both representations are available. For example, a straightforward method exists for computing curve - curve and surface - surface intersections when one of the curves, respectively surfaces, is in its implicit form and the other in its parametric form. Global parameterization algorithms for plane curves of genus zero, are presented in [1]. There are also numerous applications where explicit local parameterizations and implicitizations, which we present here, prove useful in an essential way: 1. Adaptive stepping for curve tracing with initial approximation and Newton correction. 2. Local Intersection Representation 3. Piecewise rational approximation [or non-rational algebraic curves, i.e., curves of positive genus. 2

Prior Work

In [4, 13], power series are constructed to locally approximate plane algebraic curves and surface intersections. The method of [13] technically relies on the Implicit Function Theorem, seeking to represent a curve branch explicitly in one coordinate as function of the other coordinate(s), while [4] uses a Taylor series expansion. Both these methods however do not seem to have a natural extension that handles singular points. Further, [16, 17] also present techniques for curve approximation which work only for special cases. Methods for computing local branch parameterizations at singular points have been presented in [8,9], both ba.sed on the Newton polygon [see for e.g., 18]. We instead use the iterative lifting technique of Hensel together with the fast univariate Pade algorithm of [5]. Local implicitization is considered in [7] extending the technique of [13] of reducing it to solving a linear system of equations. Our techniques are much more direct, requiring only the efficient power series composition and reversion of [6, 11] and straightforward rational function simplification. Results:

In this paper we present a combination of both algebraic and numerical techniques to achieve local. parameterizations about singular points of algebraic curves. We show how to obtain real Weierstrass and Newton power series factorizations using the technique of Hensel lifting. These, together with rational Pade approximations, are used to efficiently construct locally approximate, rational parametric representations for all real branches of an algebraic plane curve about its singularities. Next we use power series composition and reversion techniques together with rational Pade approximations to efficiently construct locally approximate implicit and inverse representations for parametric algebraic plane curves. Extensions are then given to construct locally approximate, ra.tional parameterizations, implicitizations and inversions for branches of surface intersection space curves. Implementations of these methods and our experiences with them are also discussed.

2 2.1

Power Series Computations Hensel Lifting

Consider f(z,y) of degree n. Assume it is monic in y . Otherwise, factor out the largest common power of x amongst the terms of f.

f(x, y) ~ fo(Y)

+ h(y)x + ... + f,(Y)x' + ...

We wish to compute real power series factors g(x,y) and h(x,y) where f(x,y) The technique of Hensel lifting allows one to reconstruct the power series factors

g(x,y) h(x,y) from initial factors f(O,y)

~

go(Y) ~

ho(Y)

fo(Y)

~

+ gl(Y)X + + h , (y)x +

go(Y)ho(y). 3

+ g,(y)x' + . + hj(y)x j + .

g(x,y)h(x,y).

(1)

Consider the factorization of I(O,y) = 10(Y) as the base case of k = 0. Assume 10(Y) is of degree n. Choose real coprime factors go(Y) of degree p and hn(y) of degree q satisfying: p + q = n. Real coprimeness is achieved by ensuring that go and he contain distinct real roots of 10 and that complex conjugate pairs are not split up. For the case n = 2 however, it may arise that the only coprime factors of 10 are complex, i.e., the distinct roots are complex conjugates. In that ca.se there only exist complex power series solutions. Since GCD(go(Y), hn(y)) = 1 using the fa.st GCD algorithm we can al,o compute a(y) and (3(y) 'uch that a(y)go(Y) + (3(y)ho(y) ~ 1 In the iterative Ca.se of k 2: 1, we compute gk(Y) and hk(y) of the desired factorization (1), with degree of gk(Y) < P and degree of hk(Y) < q, as follows. We note from (1) that

I:

j,(y) ~ i

+j

g,(y)hj(Y)

= k

and additionally

j,(y)

g,(y)hj(Y)

~

go(y)hHy)

+ ho(y)g'(y)

(2)

i. = min(2 ~ and Cli = ordxCtn_i(X). Then !(O,y) = lo(Y) has at least two distinct roots.

Step 9: Now use Hensel lifting to lift the factorization MfJ) = go (fJ)ho(fJ) to f(x, fJ) Repeat Steps 1-3 until all factors are linear or all real factors are obtained.

5

i

~

n)

T

g(x, fJ)h(x, fJ).

3

Local Parameterization

Consider an implicit plane algebraic curve f(x, y) = 0, with a singularity at the origin. (A singularity can be translated to the origin by a straightforward linear transformation). To compute a local parametric approximation of each of the curve's branches incident at the origin, we execute the following steps: 1. Compute a Weierstrass power series factorization of f(x,y) into

J = gh, where g«x,y)) is a

unit power series and h«:r:»(y) is a polynomial in y with coefficients non-unit power series in

:1:.

The equation h = 0 corresponds to the curve's branches at the origin while the power

eries equation 9 = 0 corresponds to the portion of the plane curve away from the origin. 2. Recursively apply the Newton factorization to h«x))(y) till all factors are linear in y or

all real factors are obtained. Each of these power series factors represent a local branch parameterization of the type x = lk and y = b;(t)) where bi is a power series. The minimum of k and ordt(bi), say d, is known as the order of the branch, with d> 1 implying a singular branch or "place" of the curve. 3. For each distinct branch power series parameterization y = bi«(t)), compute a Pade rational function approximation.

4

Local Implicitization

Consider a rational parametric curve given by (x = H 1(t), y = H 2(t)) where HI and Hz are rational functions over the Reals. To compute a local implicit approximation of the curve around the origin, we execute the following steps: 1. Let Tk = H1(t) where k = ordl(t) = power of the lowest degree term of the power series expansion of the rational function. (wig assume ordtHI 2. Compute

T

(. =

ordtHz )

= (Ht}l/k = 91((t)) = power series of order 1.

3. Next invert the power series equation T =

Tk , Y

~

=

91((t)) to yield t =

91 1((T)).

This yields

H'(9,'«T))).

H2(91 1((T))) and construct a suitable Pade rational function approximant, V = H3(T) = H 3(x 1 / k ). Rationalize and simplify the equation y = H3(x 1/ k ) = 0, by computing the k th power, to yield [(x,V) = 0, the local implicit

4. Next consider the power series V =

approximation.

6

5

Local Inversion

To locally invert a parameterization (x = HI(t), y = H2(t)) about the origin we first execute steps (1), (2) and (3) of the last section. Next we compute the following:

= r k, y = H2(g1 1«T)) = H«T))) represent a branch of the curve through the origin. Compute £ = ord,.H«r)) and m = least common multiple of land k.

1. Let (x

2. Then compute ~:~~ = ~:!l = order 1. Note

Ii

= (1

+

CIT

+ .. .. )rn/l :::;: 92«T)), a power series of

T and T are both integers.

3. Compute the inverse power series T = 9;1«It)), and set t = 91 1(g;l«x;))). This followed by the rational Pade approximant computation to yield t = G(t;;) = G(ym/l{zm1k) where G is a rational function.

6

Conclusions and Future Research

I am currently working to extend the results of this paper to efficiently compute 1. Power series expansions about singular points and curves on surfaces.

2. Suitable expansion points and curves for a piecewise rational surface approximation.

7

References 1. Abhyankar, S., and Bajaj, C., (1988), "Computations with Algebraic Curves", Proc. of the

Inti. Symposium on Symbolic and Algebraic Computation, ISSAC88, to appear. 2. Arnon, D.S., and McCallum, S., (1983), A Polynomial-time Algorithm for the Topological Type of a Real Algebraic Curve, Tech. Rept. 454, Compo Science Dept., Purdue University. See also J. of Symb. Comput. 3:2, 1988. 3. Bajaj, C., (1988a), "Geometric Modeling with Algebraic Surfaces", The Mathematics of Surfaces III, Oxford University Press, to appear.

4. Bajaj, C., Hoffmann, C., Hopcroft, J. and Lynch, R., (1988), "Tracing Surface Intersections", Computer Aided Geometric Design, 5, 285 - 307. 5. Brent, R., Gustavson, F., and Yun, D., (1980), "Fast Solutions of Toeplitz Systems of Polynomial Equations and Computation of Pade Approximants", Journal of Algorithms, I, 259·

295. 7

6. Brent, R., and Kung, H., (1978), "Fast Algorithms for Manipulating Formal Power Series",

Journal of the ACM, 25, 4, 581· 595. 7. Chuang, J., and Hoffmann, C., (1989) "On Local Implicit Approximation and its Applications" A eM Transactions on Graphics, to appear. 8. Chudnovsky, and Chudnovsky, (1987), "On Expansions of Algebraic Functions in Power and Puiseux Series", Journal of Complexity, part I: 2, 271-294 and part II:3, 1-25. 9. Duval, D., (1987) "Diverses questions relatives au Calcul Formel Avec Des Nombres Algebriques", Doctoral Thesis, LUniversite Scientifique, Technologique, Et Medicale De Grenoble. 10. Gordon, W., and Riesenfeld, R., (1974) "Bernstein-Bezier Methods for Computer Aided Geometric Design of Free Form Curves and Surfaces", Journal Of ACM, 21, 2, 293 -310. 11. Kung, H., and Traub (1978), "All Algebraic Functions Can Be Computed fast" Journal of

the ACM, 25, 2, 245 - 260. 12. Lipson, J., (1976) "Newton's Method: A Great Algebraic Algorithm" Pmc. of ACM Symposium on Symbolic and Algebraic Computation, SYMSAC'76, 260 - 270. 13. Montaudouin, Y., Tiller, W., and VoId, H., (1986), "Applications of Power Series in Computational Geometry", Computer Aided Design, 18, 10, 514 ~ 524. 14. Pratt, M., and Geisow, A., (1986), "Surface/Surface Intersection Problems", The Mathematics of Surface8, ed. J. Gregory, Oxford University Press, 117 - 142. 15. Sederberg, T., (1984), "Piecewise Algebraic Curves" Computer Aided Geometn"c Design, I, 241 - 255.

16. Sederberg, T., Zhao, J., and Zundel, A., (1988), "Approximate Parameterization of Algebraic Curves" Technical Report ECGL-88104, Brigham Young University. 17. W. Waggenspack (1987), Parametric Curve Approximations for Surface Intersections, Ph.D. Dissertation, CADLAB, Purdue University, December 1987. 18. Walker, R., (1950), Algebraic Curves, Springer Verlag 1978, New York

8