Residue and implicitization problem for rational surfaces - Inria

Report 2 Downloads 33 Views
Residue and implicitization problem for rational surfaces Mohamed Elkadi & Bernard Mourrain GALAAD, INRIA & UMR CNRS 6621,UNSA BP 93, 06902 Sophia-Antipolis, France {melkadi,mourrain}@sophia.inria.fr March 3, 2003 Abstract The implicitization problem of rational surfaces is a central challenge in computational aided geometric design. We propose a new algorithm to solve it, based on the residue calculus in the general multivariate setting. The proposed approach allows us to treat surfaces with base points (without geometric hypothesis on the zero-locus of base points). The eciency of the method is illustrated by some examples computed with maple software. We also give another application of the residue calculus to the computation of osets of rational parametric surfaces.

Keywords Implicitization, Multivariable residue calculus, bezoutian matrix.

1 Introduction A rational surface (S) in a 3D-space may be represented by a parametric representation:  f (s, t)   x=    d 1 (s, t)   g (s, t) y= (S)  d2 (s, t)    h (s, t)    z= d3 (s, t) where f, g, h, d1 , d2 , d3 are polynomials in two variables s and t with coecients in a eld K or by an implicit equation (i.e. an element F¢ in K[x, y, z] of minimal degree satisfying F (a, b, c) = 0 for all (a, b, c) ∈ (S) . These two representations are important for dierent reasons. For instance, the rst one is useful for drawing (S) and the second one to intersect surfaces or to decide whether a point is in the given surface or not. 1

Here we will investigate the implicitization problem, that is the problem of converting a parametric representation of a rational surface into an implicit one. These last decades have witnessed a renewal of the implicitization problem of geometric objects motived by applications in computer aided geometric design and geometric modeling ([20], [5], [15], [16], [9], [1], [11], [2], [18], [6], [12], [10]). Classically the solution of this question is given by the elimination theory through essentially two classes of methods: Resultants and Gröbner bases. The techniques based on the resultants can produce extraneous terms along with the implicit equation. Moreover the expansion of this implicit equation (or a multiple of it) in the monomial basis is a time consuming task. The resultants vanish identically in the presence of base points. In this case, adapted objects have been developed (residual resultants, see [?], [6], [8]) but only under some restrictive geometric hypotheses on the zero-locus of base points which are dicult to verify. The methods based on Gröbner bases computations are fairly expensive in practice even if the dimension is small. Another class of methods based on moving surfaces exists (see [11], [21], [7]) but they suer on the same kind of restrictions. In [14] and [13] the theory of multivariate residues is used to implicitize surfaces of a very special type. In this paper we propose to extend this approach to solve the implicitization problem for general rational surfaces. The method is based on the bezoutian matrix computations which allow us to derive an algorithm for the computation of residues in the general multivariate setting (see propositions 2.10, 2.13). And the use of this algorithm gives the implicit equation which are looking for. The philosophy of our method is the following: The bezoutian gives a multiple of the desired equation and the use of residue simplies the unwanted factor in it. This approach works in the presence of base points and no geometric hypotheses on the zero-locus of base points are needed. We note that our method for the implicitization of rational surface in the 3D-space is valid for any hypersurface of the ane space Kn . The paper is organized as follows: In section 2 we recall the construction of bezoutian matrices and the residue associated to a polynomial map. Then we give an algorithm to compute algebraic relations between polynomials based on bezoutians. This algorithm is used for the computation of the residue in the general multivariate case. Then we show that these matrix techniques give a multiple of the implicit equation. In section 3 we describe the implicitization algorithm for rational surfaces and show that the use of the algorithm on residue calculus allows us to separate the extraneous factor (produced by bezoutian matrices) from the desired implicit equation and we give some examples of computations in maple in order to illustrate our approach. In section 4 we give an application of the algorithm on residue 2

calculus to the computation of osets. Here are some notations that will be used hereafter. K denotes a eld of characteristic 0, K its algebraic closure, K[x] = K[x1 , . . . , xn ] the ring of polynomials in the variables x1 , . . . , xn with coecients in K, K(x) its fraction eld. If α = (α1 , . . . , αn ) ∈ Nn , |α| = α1 + · · · + αn and xα = xα1 1 . . . xαnn . If n = 1 (resp. n = 2 or n = 3) we use the notation K[t] (resp. K[s, t] or K[x, y, z]) instead of K[x1 ] (resp. K[x1 , x2 ] or K[x1 , x2 , x3 ]). If L is an arbitrary eld, we denote by L its algebraic closure.

2 Residue calculus Let us rst dene the notion of bezoutian matrix that will be central in our approach for the implicitization problem.

Denition 2.1 The bezoutian Θf0 ,...,fn of f0 , . . . , fn ∈ K[x] is the polynomial in K[x, y] = K[x1 , . . . , xn , y1 , . . . , yn ] dened by ¯ ¯ f0 (x) θ1 (f0 )(x, y) · · · ¯ ¯ .. .. Θf0 ,...,fn (x1 , . . . , xn , y1 , . . . , yn )=¯ ... . . ¯ ¯ fn (x) θ1 (fn )(x, y) · · ·

¯ ¯ ¯ ¯ ¯ ¯ θn (fn )(x, y) ¯ θn (f0 )(x, y) .. .

where θi (fj )(x, y) =

fj (y1 , . . . , yi−1 , xi , . . . , xn ) − fj (y1 , . . . , yi , xi+1 , . . . , xn ) ∈ K[x, y]. xi − yi If v = (vi ), w = (wi ) are two bases of K[x], and X Θf0 ,...,fn (x, y) = µi,j vi ⊗ vj with µi,j ∈ K , i,j

the bezoutian matrix of f0 , . . . , fn in the bases v and w is (µi,j )i,j . It will be denoted by [Θf0 ,...,fn ]v,w . The bezoutian matrix of f0 , . . . , fn in the monomial bases is called the bezoutian matrix of f0 , . . . , fn and denoted [Θf0 ,...,fn ]. When f0 is the constant 1 and f is the polynomial map (f1 , . . . , fn ), the bezoutian Θ1,f1 ,...,fn will be denoted by ∆f . Let f1 , . . . , fn be polynomials in K[x] = K[x1 , . . . , xn ], I be the ideal that they generate. We assume that A = K[x]/I is a nite vector space over K n (this means that the variety Z = Z(f1 , . . . , fn ) = {a ∈ K : f1 (a) = · · · = fn (a) = 0} is nite). We will recall the denition of the residue τf associated to the map f = (f1 , . . . , fn ) and some of its important properties (for more details see [19], [17], [?], [3]).

3

d the dual of K[x] (i.e. the set of K-linear maps from Let us denote by P K[x] K[x] to K). If ∆f = α,β cα,β xα y β with cα,β ∈ K, we dene the linear map d → K[x] ∆f . : K[x] .

λ 7→ ∆f (λ) :=

XµX α

cα,β

¶ λ(y ) xα . β

β

Denition 2.2 The residue τf of f = (f1 , . . . , fn ) is the linear form on K[x]

such that

1. τf (h) = 0, ∀ h ∈ I , 2. ∆f . (τf ) − 1 ∈ I . In the univariate case, if f = fd xd + · · · + f0 (with fd 6= 0), for h ∈ K[x] let r = rd−1 xd−1 + · · · + r0 be the remainder in the Euclidean division of h by f , then rd−1 . (1) τf (h) = fd In the multivariate case, if for each i = 1 . . . n, fi depends only on xi , then

τf (xα1 1 . . . xαnn ) = τf1 (xα1 1 ) . . . τfn (xαnn ).

(2)

If the roots of f1 = · · · = fn = 0 are simple (i.e. the jacobian of f , ¢ Jac(f ), does not vanish on Z = Z(f1 , . . . , fn ) , then for h ∈ K[x] we have P h(ζ) τf (h) = ζ∈Z . Jac(f )(ζ) But in the general multivariate setting the situation is more complicated. Our goal in this section is to show how to compute eectively τf (h) for an arbitrary map f = (f1 , . . . , fn ). An important tool in the residue theory is the transformation law.

Proposition 2.3 (Transformation law) Let g = (g1 , . . . , gn ) be another polynomial map such that the variety Z(g1 , . . . , gn ) is nite and ∀ i = 1 . . . n , gi =

n X

ai,j fj with ai,j ∈ K[x].

j=1

¡ ¢ Then for h ∈ K[x], τf (h) = τg h det(ai,j ) . Another important fact in this theory is the following: ¡ ¢ ∀h ∈ K[x] , τf h Jac(f ) = Tr(h)

(3)

where Tr(h) denotes the trace of the endomorphism of multiplication by h in the vector space A = K[x]/I . If ζ is in the nite variety Z = Z(f1 , . . . , fn ), K[x]ζ denotes the localization of K[x] by the maximal ideal dened by ζ and Iζ the ideal of K[x]ζ generated by f1 , . . . , fn . 4

Denition 2.4 Let ζ ∈ Z . The local residue of f at ζ is the linear form

τf,ζ on K[x]ζ which vanishes on Iζ and which satises ∆f . (τf,ζ ) − 1 ∈ Iζ . If g is another polynomial map with a nite variety Z(g). The residual residue τf \g of f with respect to g is the total sum of local residues τf,ζ , where ζ ranges over Z \ Z(g).

Remark 2.5 The total sum of local residues τf,ζ , where ζ ∈ Z , is the (global) residue τf dened in the denition 2.2. We can now extend the action of τf to rational functions which are dened on Z : Let d ∈ K[x] such that d(ζ) 6= 0 for every ζ ∈ Z . Then there are polynomials q1 , . . . , qn , q which satisfy q1 f1 +· · ·+qn fn +qd = 1. For h ∈ K[x], we dene µ ¶ X µ ¶ X h h τf = τf,ζ = τf,ζ (qh). d d ζ∈Z ζ∈Z ¢ ¡ The multiplicity of a root ζ ∈ Z is µζ = τf,ζ Jac(f ) . As in the global case (formula (3)), for h ∈ K[x], we have ¢ τf,ζ (hJac(f) = Tr(h) = µζ h(ζ). (4)

2.1 Algebraic relations The eective construction of residue of a polynomial map is based on the computation of algebraic relations between this map and the coordinate functions. We give here a method using bezoutian matrices to get them.

Lemma 2.6 Assume that A = K[x]/I is a vector space of nite dimension D. Then there exists two bases v = (vi )i∈N and w = (wi )i∈N of K[x] such that (v1 , . . . , vD ) and (w1 , . . . , wD ) are bases of A, for i > D the elements vi and wi belong to I = (f1 , . . . , fn ), and for any f0 in K[x] the matrix [Θf0 ,...,fn ]v,w is of the form 

v1 . . . vD vD+1 . . . 

        

        

Mf0

0

0

Lf0

w1 .. . wD wD+1 .. .

(5)

where Mf0 is the matrix of multiplication by f0 in A in the basis (v1 , . . . , vD ). Proof : For g ∈ K[x], we denote Θg,f1 ,...,fn by Θg . The vector space Ab is d : λ(x) = 0 ∀x ∈ I}. Let us consider the subspaces identied to {λ ∈ K[x] b of K[x]. Since f1 , . . . , fn form a complete b and F = Θ1 / (A) E = Θ1 . (A) 5

intersection, Θ1 . and Θ1 / dene A-isomorphisms between Ab and A (see [17], [19], [3], [?]). We have K[x] = E ⊕ I = F ⊕ ¡ I , and Θ1 ∈ E ¢⊗ F ⊕ I ⊗ I . We deduce from Θf0 (x, y)−f0 (y)Θ1 (x, y) ∈ f1 (y), . . . , fn (y) K[x, y] that b = (f0 (y)Θ1 ). (A) b ⊂ E, Θf / (A) b ⊂ F , and that Θf ∈ E ⊗ F ⊕ I ⊗ I . Θf0 . (A) 0 0 If v = (vi )i∈N and w = (wi )i∈N are two bases of K[x] such that (v1 , . . . , vD ) is a basis of E , (w1 , . . . , wD ) a basis of F , vi ∈ I and wi ∈ I for i > D, [Θf0 ]v,w has a block-diagonal form. If Cf0 is the upper-left block in this decomposition and Mf0 is the matrix of multiplication by f0 in the basis (v1 , . . . , vD ) of A, we deduce from Θf0 = f0 Θ1 in A ⊗ A that Cf0 = Mf0 C1 . Notice that C1 is the (invertible) matrix of Θ1 . in the bases (v1 , . . . , vD ) of A and its dual basis in Ab. By a change of bases we may assume that C1 is the identity matrix, and so [Θf0 ]v,w is the form (5). ¤ Let f0 , . . . , fn be n + 1 elements of K[x] such that the n polynomials f1 , . . . , fn are algebraically independent over K. For algebraic dimension reasons there is a nonzero polynomial P such that P (f0 , . . . , fn ) = 0. We will show how to nd such a P using elementary algebra.

Proposition 2.7 Let u = (u0 , . . . , un ) be new parameters and assume that A = K[x]/(f1 , . . . , fn ) is a vector space of nite dimension. Then every nonzero maximal minor P (u0 , . . . , un ) of the bezoutian matrix of the elements f0 − u0 , . . . , fn − un in K[u][x] satises the identity P (f0 , . . . , fn ) = 0. Proof : For each i ∈ {1, . . . , n}, xi , f1 , . . . , fn are algebraically dependent over K. Then if u ˜ = (u1 , . . . , un ) and f = (f1 , . . . , fn ), dimK(f ) K(x) = dimK(˜u) K(˜ u)[x]/(f − u ˜) = d is nite. By lemma 2.6, there exists two bases v = (vi ) and w = (wi ) of K(˜ u)[x] such that [Θg,f −˜u ]v,w is of the form (5) for every g ∈ K[x]. By change of bases there are invertible matrices R(˜ u) and Q(˜ u) with coecients in K(˜ u) such that the bezoutian matrix    (Mf0 − u0 Id ) 0   [Θf0 −u0 ,f −˜u ] = R(˜ u)     0 Lf0 − u0 L1

    Q(˜  u)  

Id is the identity matrix. Then a nonzero maximal minor P (u0 , . . . , un ) of [Θf0 −u0 ,f −˜u ] is a multiple of the characteristic polynomial of the multiplication by f0 in K(˜ u)[x]/(f −˜ u). By Cayley-Hamilton's theorem P (f0 , . . . , fn ) = 0. ¤

Remark 2.8 As in the proposition 2.7 if f0 , d0 , . . . , fn , dn are elements of K[x], every nonzero maximal minor P (u0 , . . . , un ) of the bezoutian ma6

trix f0 − u0 d0 , . . . , fn − un dn in K[u0 , . . . , un ][x] satises µ of the polynomials ¶ fn f0 ,..., = 0. P d0 dn In practice we use Gaussian elimination (Bareiss Method) in order to nd a nonzero maximal minor of the bezoutian matrix. In order to nd an implicit equation of a rational surface (S) given by f (s, t) g(s, t) h(s, t) a rational parameterization x = ,y = ,z = , where d1 (s, t) d2 (s, t) d3 (s, t) f, g, h, d1 , d2 , d3 ∈ K[s, t], we compute a nonzero maximal minor of the bezoutian matrix of xd1 −f, yd2 −g, zd3 −h with respect to s, t. In general, this yields a multiple of the implicit equation as shown by the following example.

Example 2.9 The surface (S) is parameterized by x=s , y=

t2 − 2st − 1 t2 s + 2t + s , z= . 2 t t2

The bezoutian matrix of x − s, yt2 − t2 s − 2t − s, zt2 − t2 + 2ts + 1 in (K[x, y, z])[s, t] is a 4 × 4 matrix. Its determinant is

(z − 1)2 (4x4 − 4x3 y + x2 z 2 − 8x2 z + 2xyz + 4x2 + y 2 + 4z − 4). The second factor in this expression is the expected implicit equation. The use of the bezoutian matrix produce an extraneous term along with the implicit equation. We will see, in the next section, how to use the residue calculus in order to remove the unwanted factor from this polynomial without factorization. But rst we will see how to compute eectively the residue τf related to the map f = (f1 , . . . , fn ).

Proposition 2.10 For i ∈ {1, . . . , n}, let i Pi (u0 , . . . , un ) = ai,0 (u1 , . . . , un ) um 0 + · · · + ai,mi (u1 , . . . , un )

be an algebraic relation between xi , f1 , . . . , fn . If for each i = 1 . . . n, there is ki ∈ {0, . . . , mi −1} such that ai,ki (0) 6= 0, then for h ∈ K[x] the computation of the multivariate residue τf (h) reduces to univariate residue calculus. Proof : If ji = min{k : ai,k (0) 6= 0}, we have i −ji gi (xi ) = ai,ji (0)xm + · · · + ai,mi (0) = i

n X

Ai,j fj , Ai,j ∈ K[x].

j=1

¡ ¢ We set g(x) = g1 (x1 ), . . . , gn (xn ) . By the transformation law and (2) there are scalars cα , ci,α such that ¡ ¢ X τf (h) = τg h det(Ai,j ) = cα τg (xα ) = α

X α=(α1 ,...,αn )



n Y

τgi (xαi i ).

i=1

¤ 7

Remark 2.11 If w are formal parameters, similarly for every h ∈ K[x], τf −w (h) is a rational function in w whose denominator is the product of powers of a1,0 (w), . . . , an,0 (w). But it is not clear how to recover τf (h) from this function. Proposition 2.10 yields a direct algorithm to compute the multivariable residues for some maps by means of algebraic relations given by the bezoutians. For an arbitrary map, the residue calculus can be done using the following generalized transformation law due to C.A. Berenstein and A. Yger (see [4]).

2.2 Generalized transformation law Proposition 2.12 (Generalized transformation law [4]) Let (f0 , . . . , fn ) and

(g0 , . . . , gn ) be two maps of K[t, x] = K[t, x1 , . . . , xn ] which dene nite varieties. We assume that f0 = g0 and there are positive integers mi , i = 1 . . . n, and polynomials ai,j , i, j = 1 . . . n, such that ∀ i = 1 . . . n , f0mi gi =

n X

ai,j fj .

j=1

If h ∈ K[t, x], then τ(g0 ,...,gn ) (h) = τ(f m1 +···+mn +1 ,f 0

1 ...,fn )

¡ ¢ h det(ai,j ) .

If f0 = x0 and m1 = · · · = mn = 0, the generalized transformation law becomes the (usual) transformation law (proposition 2.3). For (α1 , . . . , αn ) ∈ Kn and a new variable t, we dene the integers mi and the polynomials Ri , Si as follows: If Pi (u0 , . . . , un ) is an algebraic relation between xi , f1 , . . . , fn , for example given by the proposition 2.7, then there are Bi,j ∈ K[t, x1 , . . . , xn ] such that ¡ ¢ P Pi (xi , α1 t, . . . , αn t) = nj=1 (fj − αj t)Bi,j = tmi Ri (xi ) − tSi (xi , t) . (6) From the transformation laws we deduce the following result:

Proposition 2.13 If for each i = 1 . . . n, the univariate polynomial Ri (xi )

does not vanish identically, then for h ∈ K[x] we have X ¡ ¢ τf (h) = τ(t|m|+1−|k| ,Rk1 +1 ,...,Rkn +1 ) S1k1 . . . Snkn h det(Bi,j ) . n

1

k=(k1 ,...,kn )∈Nn :|k|≤|m|

Proof : We deduce from (6) and proposition 2.12 that ¡ ¢ τf (h) = τ(t,f1 −α1 t,...,fn −αn t) (h) = τ(t|m|+1 ,R1 −tS1 ,...,Rn −tSn ) h det(Bi,j ) . Using the identities |m|+1 Ri

|m|+1

− (tSi )

|m| X

= (Ri − tSi )

ki =0

8

|m|−ki

Ri

(tSi )ki , i = 1 . . . n ,

¡ ¢ and the proposition 2.3 we have τ(t|m|+1 ,R1 −tS1 ,...,Rn −tSn ) h det(Bi,j ) = X ¡ ¢ τ(t|m|+1−|k| ,Rk1 +1 ,...,Rkn +1 ) S1k1 . . . Snkn h det(Bi,j ) . k∈Nn :|k|≤|m|

n

1

¤ Propositions 2.7 and 2.13 give an eective algorithm to compute the residue of a polynomial map in the multivariable setting. They reduce the multivariate residue calculus to the univariate one.

3 Implicitization problem Let f, g, h, d1 , d2 , d3 be polynomials in K[s, t] and let  f (s, t)   x=    d1 (s, t)   g(s, t) y= (S)  d2 (s, t)    h(s, t)    z= d3 (s, t) 3

be the rational parameterization that they dene in K . We are looking for an implicit equation of the image of (S). Let us consider the 3 polynomials in (K[x, y, z])[s, t]   F (s, t) = x d1 (s, t) − f (s, t) G(s, t) = y d2 (s, t) − g(s, t)  H(s, t) = z d3 (s, t) − h(s, t). 2

We set Z0 = Z(G, H) = {(s, t) ∈ K(y, z) : G(s, t) = H(s, t) = 0} = Z1 ∪Z2 , 2 where Z1 = Z0 ∩Z(d1 ) = {(s, t) ∈ K(y, z) : G(s, t) = H(s, t) = d1 (s, t) = 0} and Z2 = Z0 \ Z1 . If Z2 is nite, let Q(x, y, z) be the following nonzero element µ Y ¶µ Y ¶ Y ¡ f (s, t) ¢ Q(x, y, z) = F (s, t) = d1 (s, t) x− d1 (s, t) (s,t)∈Z2 (s,t)∈Z2 (s,t)∈Z2 µ Y ¶µ ¶ m m−1 = d1 (s, t) x + σ1 (y, z)x + · · · + σm (y, z) (s,t)∈Z2

where m is the number of points (counting their multiplicities) in Z2 and ½ ¾ f (s, t) σi (y, z) is the i-th elementary symmetric function of : (s, t) ∈ Z2 . d1 (s, t)

Remark 3.1 If one denominator di in the parameterization of (S ) is constant, in the denition of Q we replace F by the suitable polynomial. 9

Theorem 3.2 The implicit equation of the surface (S) is the squarefree part of the numerator of

E(x, y, z) = xm + σ1 (y, z)xm−1 + · · · + σm (y, z). 2

Proof : Let us choose a point (y0 , z0 ) in the open subset U of K such 2 that the specialization Z˜2 of Z2 is nite in K and the denominators of σ1 , . . . , σm do not vanish. Then we have Q(x0 , y0 , z0 ) = 0 if and only if m−1 xm +· · ·+σm (y0 , z0 ) = 0, which is equivalent to the existence 0 +σ1 (y0 , z0 )x0 g(s0 , t0 ) h(s0 , t0 ) of an element (s0 , t0 ) ∈ Z˜2 (i.e. y0 = , z0 = ) such that d1 (s0 , t0 ) d1 (s0 , t0 ) f (s0 , t0 ) . In other words on the open subset U , the numerator of x0 = d1 (s0 , t0 ) E(x, y, z) vanishes on a point (x0 , y0 , z0 ) i this point is on the surface (S), which implies that the squarefree part of the numerator of E(x, y, z) is up to a scalar the implicit equations of (S). ¤ Remark 3.3 The squarefree part of a polynomial N (x, y, z) is obtained by N computing . gcd(N, ∂N ∂x ) The implicit equation E(x, y, z) is a residual resultant as described in [?], so theorem 3.2 would be compare to [6] (we notice that in this last article a geometric hypothesis on the zero-locus is needed). The coecients σi (y, z) can be computed from the residual residue using the Newton identities: For i = 1 . . . m, we have

i σi (y, z) = −Si (y, z) − Si−1 (y, z)σ1 (y, z) − · · · − S1 (y, z)σi−1 (y, z) , where

Si (y, z) =

µ

P (s,t)∈Z2

f (s, t) d1 (s, t)

¶i

(7)

µ ¶ ¡ f (s, t) ¢i = τ(G,H)\(d1 ) Jac(G, H)(s, t) d1 (s, t)

are the Newton sums, Jac(G, H) is the Jacobian determinant of the map (G, H) and τ(G,H)\(d1 ) is the residual residue of (G, H) with respect to d1 . Therefore, computing the implicit equation of (S ) reduces to the computaµ ¶ f (s, t) i tion of τ(G,H)\(d1 ) on Jac(G, H) and yields the following algorithm. d(s, t)

Algorithm 3.4 Input : Polynomials f, g, h, d1 , d2 , d3 in K[s, t]. • Let G = ¡y d2 − g and ¢ H = z d3 − h. Compute the degree m = τ(G,H)\(d1 ) Jac(G, H) of the polynomial E in theorem 3.2. • For i from 1 to m, compute

¶ µ ¡ f (s, t) ¢i . Si (y, z) = τ(G,H)\(d1 ) Jac(G, H) d1 (s, t) 10

• Use Newton identities (7) to obtain the σi (y, z) from Si (y, z), i = 1 . . . m.

Output : The squarefree part of the numerator of E(x, y, z) = xm + σ1 (y, z) xm−1 + · · · + σm (y, z) .

3.1 Computing the residual residue As mentioned above, the key ingredient for the implicitization in our approach is the computation of the residual residue of (G, H) with respect to ¶ µ f (s, t) i d1 on Jac(G, H) . We describe now two methods to obtain these d1 (s, t) expressions.

3.1.1 First method We have

µ ¶ ¶ µ X ¡ f ¢i ¡ f ¢i Si (y, z) = τ(G,H)\(d1 ) Jac(G, H) = τ(G,H),ζ Jac(G, H) d1 d1 ζ∈Z2

= lim

²→0

X ζ∈Z2

µ τ(G,H),ζ

d1 f i Jac(G, H) di+1 +² 1



µ = lim τ(G,H) ²→0

¶ d1 f i Jac(G, H) . di+1 +² 1

We deduce the following algorithm.

Algorithm 3.5 Input : Polynomials f, g, h, d1 , d2 , d3 in K[s, t].

Compute an algebraic relation As (u0 , u1 , u2 ) between the polynomials s, G = y d2 − g , H = z d3 − h in K[y, z][s, t] (proposition 2.7), and an algebraic relation At (u0 , u1 , u2 ) between the elements t, G, H .

• If the univariate polynomials Rs = As (s, 0, 0) and Rt = At (t, 0, 0) are not vanishing identically µ (which ¶ µis often ¶ the case), let M be the 2 × 2 Rs G matrix such that M = . Rt H  Compute the degree ¶ µ ¡ ¢ Jac(G, H) det(M )d1 . m = τ(G,H)\(d1 ) Jac(G, H) = lim τ(Rs ,Rt ) ²→0 d1 + ²  For i from 1 to m, compute

¶ µ ¡ f (s, t) ¢i Si (y, z) = τ(G,H)\(d1 ) Jac(G, H) d1 (s, t) µ ¶ d1 Jac(G, H) det(M )f i = lim τ(Rs ,Rt ) . ²→0 di+1 +² 1 11

µ

d1 f i Jac(G, H) +² di+1 1 are computed using the algebraic relations As (u0 , u1 , u2 ), At (u0 , u1 , u2 ) and the formula in the proposition 2.13. µ ¶ ¡ f (s, t) ¢i Output : The functions Si (y, z) = τ(G,H)\(d1 ) Jac(G, H) ,i = d1 (s, t) 0 . . . m. • If Rs Rt ≡ 0, the Newton sums Si (y, z) = lim²→0 τ(G,H)

3.1.2 Second method An alternative method to compute the functions Si (y, z) consists in adding a new variable w to s and t. We consider the following polynomials in (K(x, y, z)) [s, t, w]:  F (s, t, w) = F (s, t) = x d1 (s, t) − f (s, t)    G(s, t, w) = G(s, t) = y d2 (s, t) − g(s, t) H(s, t, w) = H(s, t) = z d3 (s, t) − h(s, t)    W (s, t, w) = w d1 (s, t) − 1. 2

We recall that Z0 = {(s, t) ∈ K(y, z) : G(s, t) = H(s, t) = 0} = Z1 ∪ Z2 , with Z1 = Z (d1 ) ∩ Z0 and Z2 = Z0 \ Z1 . We denote by n o 3 W = (s, t, w) ∈ K (y, z) : G (s, t, w) = H (s, t, w) = W (s, t, w) = 0 3

2

and by Π the projection (s, t, w) ∈ K (y, z) 7→ (s, t) ∈ K (y, z) .

Lemma 3.6 We have Π (W) = Z2 . Proof : If (s, t, w) ∈ W , then G(s, t) = H(s, t) = 0 and d1 (s, t) 6= 0. ¡ 1 ¢ ∈ W. ¤ Conversely if (s, t) ∈ Z2 then d1 (s, t) 6= 0, and so s, t, d1 (s, t) The following lemma allows us to compute the Newton sums Si (y, z).

Lemma 3.7 For every i we have

µ µ ¶¶ f (s, t) i Si (y, z) = τ(G,H)\(d1 ) Jac (G, H) (s, t) d1 (s, t) ¡ ¡ ¢i ¢ = τ(G,H,W ) Jac (G, H, W ) (s, t, w) wf (s, t) .

Proof : By (4) and lemma 3.6, X ¡ X µ f (ζ) ¶i ¢i = wf (ζ) Si (y, z) = d1 (ζ) ζ∈Z2 ξ=(ζ,w)∈W µ ¶ ¡ ¢i = τ(G,H,W ) Jac (G, H, W ) wf (s, t) . ¤ We have an algorithm similar to the algorithm 3.4. 12



Algorithm 3.8 Input : Polynomials f, g, h, d1 , d2 , d3 in K[s, t].

Compute an algebraic relation As (u0 , u1 , u2 , u3 ) between the polynomials s, G = y d2 − g , H = z d3 − h, W = wd1 − 1 in K[y, z][s, t] (proposition 2.7), ¢ and an algebraic relation At (u0 , u1 , u2 , u3 ) (resp. Aw (u0 , u1 , u2 , u3 ) between the elements t, G, H, W (resp. w, G, H, W ).

• If the univariate polynomials Rs = As (s, 0, 0, 0), Rt = At (t, 0, 0, 0) and Rw = Aw (w, 0, 0, 0) does not vanish identically is oftenthe    (which G Rs    H . Rt = case), let M be the 3 × 3 matrix such that M Rw W  Compute the degree ¡ ¢ ¡ ¢ m = τ(G,H,W ) Jac(G, H, W ) = τ(Rs ,Rt ,Rw ) Jac(G, H, W ) det(M ) .  For i from 1 to m, compute

¡ ¢ Si (y, z) = τ(G,H,W ) Jac(G, H, W )(wf )i ¡ ¢ = τ(Rs ,Rt ,Rw ) Jac(G, H, W ) det(M )(wf )i .

¡ ¢ • If Rs Rt Rw ≡ 0, Si (y, z) = τ(G,H,W ) Jac(G, H, W )(wf )i , for i = 0 . . . m, are computed using the algebraic relations As (u0 , u1 , u2 , u3 ), At (u0 , u1 , u2 , u3 ), Aw (u0 , u1 , u2 , u3 ) and the formula in the proposition 2.13. ¡ ¡ ¢¢ Output : The functions Si (y, z) = τ(G,H,W ) Jac(G, H, W ) wf (s, t) i , i = 0 . . . m. In the two proposed methods for computing the functions Si (y, z) we introduce a new parameter. In the rst one we introduce ² and in the second one we add a variable w.

3.1.3 Examples We give some simple examples to illustrate our approach for implicitizing rational surfaces. The computations are made in maple using the multires 1 library. Example (using algorithm 3.5) We turn back to the example 2.9. We have

f = s , g = t2 s + 2t + s , h = t2 − 2ts − 1 , d1 = 1 , d2 = t2 , d3 = t2 . A nonzero maximal minor of the bezoutian matrix of xd1 − f, yd2 − g, zd3 − h is

B(x, y, z) = (z − 1)2 (x2 z 2 − 8x2 z + 2zxy + 4z − 4 + 4x4 + 4x2 − 4x3 y + y 2 ). 1

http://www-sop.inria.fr/galaad/logiciels/multires.html

13

The univariate polynomials Rs and Rt are equal to

Rs = −4 + 4z 3 + 4s4 + 4s2 + 21s2 z 2 − 16s2 z − 4s3 y − 12z 2 − 10z 3 s2 + z 4 s2 − 8zs4 + 4z 2 s4 + 2yz 3 s + 8ys3 z − 4ys3 z 2 − 4z 2 ys + 2zsy + y 2 − 2y 2 z + z 2 y 2 + 12z Rt = 4z − 4 − 8t3 y + 8t3 yz + 16t2 − 20t2 z + 4z 2 t2 + 4t4 z 2 − 8t4 z + 4t4 . The computation of Newton sums gives

1 S0 = 4 , S1 = y , S2 = − z + 4z + y − 2 , 2 1 2 S3 = y(−3z + 18z − 12 + 4y 2 ) 4 1 S4 = z 4 − 2z 3 − z 2 y 2 + 9z 2 − 12z + 6y 2 z + y 4 − 5y 2 + 6. 8 And the equation implicit E(x, y, z) = x4 + σ1 x3 + σ2 x2 + σ3 x + σ4 1 1 1 = x4 − x3 y + x2 z 2 − 2x2 z + x2 + zxy + z + y 2 − 1. 4 2 4 Example (using algorithm 3.8) Let f = t − st , g = st , h = t2 + st , d1 = (1 + s + t)(s + t) , d2 = (1 + s + t)(t − s) , d3 = (1 + s + t)2 . A nonzero maximal minor of xd1 − f, yd2 − g, zd3 − h in K[x, y, z][s, t] is

z(x + 2yz − y)(x3 z − 4x2 y 2 − zx2 y + 8y 3 x2 − 2x2 z + 4xy 2 + xz + xyz − 8y 3 x − z 2 x + xy 2 z + 2y 3 + 7y 2 z − y 2 + 2z 2 y − 9y 3 z − 2yz). The polynomial Rs contains 53 monomials in s, y, z , its degree in s is 4, its degree in y, z is 7 and its degree in s, y, z is 10. The polynomial Rt contains 21 monomials in t, y, z , its degree in t is 4, its degree in y, z is 5 and its degree in t, y, z is 8. The polynomial Rw contains 83 monomials in w, y, z , its degree in w is 3, its degree in y, z is 10 and its degree in w, y, z is 12. The Newton sums are

S0 = 3 8y 3 − 4y 2 − yz − 2z S1 = z 64y 6 − 64y 5 − 16y 4 z + 16y 4 − 8y 3 z − y 2 z 2 + 8y 2 z + 2z 2 y + 2z 3 + 2z 2 S2 = z2 9 8 7 7 512y − 768y − 192y z + 384y − 64y 6 + 144y 5 z + 48y 4 z 2 − 48y 4 z S3 = − z3 3 3 3 2 3 2 2 2 −y z + 6y z + 12z y − 15y z + 3yz 4 − 9yz 3 − 6z 4 − 2z 3 . z3 14

The implicit equation is the numerator of x3 + σ1 x2 + σ2 x + σ3 , namely

x3 z − 4x2 y 2 − zx2 y + 8y 3 x2 − 2x2 z + 4xy 2 + xz + xyz − 8y 3 x − z 2 x + xy 2 z + 2y 3 + 7y 2 z − y 2 + 2z 2 y − 9y 3 z − 2yz.

Example (using algorithm 3.5) Let (S) be the bicubic given by the parameterization   x = s(s2 − 5s)t3 − (s2 + 1)t2 + 4ts − s + t y = s(s + 1)2 + t3 + 3s2 t  z = t(t − 1)2 + s3 t + 2s The polynomial Rs (resp. Rt ) contains 42 (resp. 50) monomials in s, y, z (resp. t, y, z ) its degree in s, y, z (resp. t, y, z ) is 12. The degree m = S0 (y, z) of the polynomial E(x, y, z) in x is 12, whereas the degree of the implicit equation of the surface (S) in x, y, z is 18 and contains 952 monomials.

4 Other applications of the residue calculus The method developed in section 2 for the computation of residues can also be used in other problems, like computing the implicit equations of osets of parameterized rational hypersurfaces (in particular for plane curves and 3Dsurfaces). We will show how to compute the oset of a rational parametric surface.

4.1 Oset of a rational parametric surface Let (S) be a parameterized rational surface given by x =

f (s, t) ,y = d(s, t)

g(s, t) h(s, t) ,z = , with f, g, h, d are elements of K[s, t]. d(s, t) d(s, ¡ t) ¢ ¡ ¢ Let ∆s = ∂s x, ∂s y, ∂s z , ∆t = ∂t x, ∂t y, ∂t z and ¢ 1 ¡ 1 N (s, t) X(s, t), Y (s, t), Z(s, t) = 3 d(s, t) d(s, t)3 ¡ ¢ be a normal vector to the surface (S) at x(s, t), y(s, t), z(s, t) . Using Sylvester identity on minors, we check that X, Y, Z are polynomials in s and t. For instance ¯ ¯ ¯ ¯ ∂s g ∂t g g ¯ ¯ ¯ ¯ ¯ ¯ 1 ¯ ∂s g d − g∂s d ∂t g d − g∂t d ¯ ¯ ¯. ∂ h ∂ h h = X(s, t) = s t ¯ d(s, t) ¯ ∂s h d − h∂s d ∂t h d − h∂t d ¯ ¯¯ ∂s d ∂t d d ¯ ∆s (s, t) ∧ ∆t (s, t) =

15

We denote by ν(s, t) = X(s, t)2 + Y (s, t)2 + Z(s, t)2 the square of the norm of N (s, t). For any positive real number r, the r-oset of (S) is the set of points at distance r to (S). This set is parameterized by the two maps   f (s, t) r 1  g(s, t)  ± p N (s, t). (s, t) 7→ d(s, t) ν(s, t) h(s, t) If the oset is irreducible, then only one of these two maps is necessary. To compute the implicit equations of the union of the image of these maps, using residues, we introduce the following equations  G(s, t, w, v) = y − g(s, t) w − r vY (s, t)    H(s, t, w, v) = z − h(s, t) w − r vZ(s, t) W (s, t, w, v) = w d(s, t) − 1    V (s, t, w, v) = v 2 ν(s, t) − 1. 4

Let us denote by O the variety dened by G, H, W, V in K(y, z) . Then g(s, t) Y (s, t) h(s, t) for any (s, t, w, v) ∈ O, we have y = ±rp ± and z = d(s, t) d(s, t) ν(s, t) Z(s, t) rp . By the same arguments as in the section 3, we obtain the folν(s, t) lowing result:

Theorem 4.1 The squarefree part of the numerator of the polynomial Y

¡ ¢ x − f (s, t) w − r v X(s, t) = xm + σ1 (y, z) xm−1 + · · · + σm (y, z)

(s,t,w,v)∈O

is the implicit equation of the r-oset of (S). ¡ ¢ The degree m of this polynomial is equal to τG,H,W,V Jac(G, H, W, V ) and the coecients σi (y, z) are deduced from the Newton sums µ ¶ ¡ ¢i Si (y, z) = τG,H,W,V f (s, t) w+r v X(s, t) Jac(G, H, W, V ) , i = 1 . . . m , using Newton identities (7). Other constructions used in CAGD can also be treated in this way.

5 Conclusion We propose a new algorithm to solve the implicitization problem. This methods seem to be a powerful tool to treat problems where base points occurred. This approach can be applied to other problems as the computation of the 16

equation of the oset of a rational surface that is still consider a dicult computational challenge. The techniques based on bezoutians developed in this article seem to suer from the size of involved matrices. It would be interesting to use interpolation techniques to evaluate them or to keep these matrices without developing their determinants and to take the necessary monomials at the end of computations.

References [1] Alonso, C.; Gutierrez, J.; Recio, T. An implicitization algorithm with fewer variables. Comput. Aided Geom. Des., 12(3):251258, 1995. [2] Aries, F.; Senoussi, R. An Implicitization Algorithm for Rational Surfaces with no Base Points. J. Symb. Comput., 31:357365, 2001. [3] Becker, E.; Cardinal, J.P.; Roy, M.F.; Szafraniec, Z. Multivariate Bezoutians, Kronecker symbol and Eisenbud-Levin formula. In Algorithms in Algebraic Geometry and Applications, volume 143 of Prog. in Math., pages 79104. Birkhäuser, Basel, 1996. [4] Berenstein, C.A.; Yger, A. Residue calculus and eective nullstellensatz. Amer. J. Math., 121:723796, 1999. [5] Buchberger, B. Applications of Groebner bases in nonlinear computational geometry. In Trends in computer algebra, Lect. Notes Comput. Sci., volume 296, pages 5280, 1988. [6] Busé, L. Residual resultant over the projective plane and the implicitization problem. Proceedings of the 2001 international symposium on symbolic and algebraic computation, pages 4855, 2001. [7] Busé, L.; Cox, D.; D'Andrea, C. Implicitization of surfaces in P3 in the presence of base points. preprint, 2002. [8] Busé, L.; Jouanolou, J.P. On the closed image of a rational map and the implicitization problem. preprint, 2002. [9] Canny, J.F.; Manocha, D. Implicit representation of rational parametric surfaces. J. Symb. Comput., 13(5):485510, 1992. [10] Corless, R.M.; Giesbrecht, M.; Kotsireas I.S.; Watt, S.M. Numerical Implicitization of Parametric Hypersurfaces with Linear Algebra. Art. Intel. Symb. Comp., pages 174183, 2000. [11] Cox, D.; Goldman, R.; Zhang, M. On the Validity of Implicitization by Moving Quadrics for Rational Surfaces with No Base Points. J. Symb. Comput., 29(3):419440, 2000. 17

[12] Dokken, T. Approximate Implicitization. In Mathematical Methods in CAGD: 2000. Vanderbilt University Press, 2001. [13] Gonzalez-Vega, L. Implicitization of parametric curves and surfaces by using multidimensional Newton formulae. J. Symb. Comput., 23(23):137151, 1997. [14] Gonzalez-Vega, L.; Trujillo, G. Implicitization of parametric curves and surfaces by using symmetric functions. In Proceedings of the 1995 international symposium on symbolic and algebraic computation, pages 180186. ACM Press, 1995. [15] C.M. Homann. Geometric and solid modeling: an introduction. Morgan Kaufmann Publishers Inc., 1989. [16] Kalkbrener, M. Implicitization of rational parametric curves and surfaces. In Applied algebra, algebraic algorithms and error-correcting codes Proc. AAECC8, Lect. Notes Comput. Sci., volume 508, pages 249259, 1991. [17] E. Kunz. Kähler dierentials. Advanced lectures in Mathematics. Friedr. Vieweg and Sohn, 1986. [18] Pérez-Díaz, S.; Schicho, J.; Sendra, J.R. Properness and Inversion of Rational Parametrizations of Surfaces. AAECC13, pages 2951, 2002. [19] U. Scheja, G.; Storch. Über Spurfunktionen bei vollständigen Durschnitten. J. Reine Angew Mathematik, 278:174190, 1975. [20] Sederberg, T.W.; Anderson, D.C.; Goldman, R.N. Implicit representation of parametric curves and surfaces. Computer Vision, Graphics and Image Processing, 28:7284, 1984. [21] Sederberg, T.W.; Chen, F. Implicitzing using moving curves and surfaces. In proceedings of SIGGRAPH, pages 301308, 1995.

18