View metadata, citation and similar papers at core.ac.uk brought to you by CORE

provided by Elsevier - Publisher Connector ARTICLE IN PRESS

Journal of Complexity 19 (2003) 564–596 http://www.elsevier.com/locate/jco

Computing the equidimensional decomposition of an algebraic closed by means of lifting fibers

Gre´ goire Lecerf Laboratoire de Mathe´matiques, UMR 8100 CNRS, Universite´ de Versailles St-Quentin-en-Yvelines, 45, Avenue des E´tats-Unis, Baˆtiment Fermat, Versailles, 78035 France

Received 3 September 2002; accepted 27 February 2003

Abstract

We present a new probabilistic method for solving systems of and inequations. Our algorithm computes the equidimensional decomposition of the Zariski closure of the solution set of such systems. Each equidimensional component is encoded by a generic fiber, that is a finite set of points obtained from the intersection of the component with a generic transverse affine subspace. Our algorithm is incremental in the number of equations to be solved. Its complexity is mainly cubic in the maximum of the degrees of the solution sets of the intermediate systems counting multiplicities. Our method is designed for coefficient fields having characteristic zero or big enough with respect to the number of solutions. If the base field is the field of the rational numbers then the resolution is first performed modulo a random prime number after we have applied a random change of coordinates. Then we search for coordinates with small integers and lift the solutions up to the rational numbers. Our implementation is available within our package Kronecker from version 0.166, which is written in the Magma computer algebra system. r 2003 Elsevier Science (USA). All rights reserved.

1. Introduction

Introduced by H. Hironaka in the middle of the 1960s, the concept of a standard basis of an ideal in a polynomial has become a topic of particular interest in mathematics and computer science since B. Buchberger’s work. Nowadays the effective construction of such a basis is an essential functionality in all computer algebra systems. The subjacent algorithms are unceasingly improved and make it possible to deal with concrete problems inaccessible to numerical methods. And yet

Fax: +33-1-39-25-46-45. E-mail address: [email protected].

0885-064X/03/$ - see front matter r 2003 Elsevier Science (USA). All rights reserved. doi:10.1016/S0885-064X(03)00031-1 ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 565 the complexity of these algorithms is doubly exponential in the worst case. In the 1990s, M. Giusti and J. Heintz showed that elimination problems can be brought back in a polynomial complexity class by representing the eliminating by straight-line programs. On the basis of their work, this paper leads to a probabilistic algorithm to compute the decomposition into equidimensional components of the solution set of a system of polynomial equations and inequations. Turning into practice the concept of generic point of an isthe key of thisnew algorithm.

1.1. Main result

Let k be a field of characteristic zero, we denote by k% itsalgebraic closure. Let f1; y; fs; g be polynomial functionsin k½x1; y; xnŠ given by a straight-line program of size L: The solution set in k%n of the system

f1 ¼ ? ¼ fs ¼ 0; ga0 is a constructible set, we are interested in describing the k-algebraic variety V defined as the closure of this set with respect to the Zariski topology. More precisely the algorithm we present here computes the equidimensional decomposition of V: Our method isincremental in the number of equationsto be solved.Therefore its complexity depends on the number of solutions of the intermediate systems. For i from 0 to s; we introduce the ith intermediate system as the system:

f1 ¼ ? ¼ fi ¼ 0; ga0:

We denote by Vi the k-algebraic variety obtained from the closure (for the Zariski topology) of the set of roots of the ith intermediate system in k%n:

%n Vi :¼ fzAk j f1ðzÞ¼? ¼ fiðzÞ¼0; gðzÞa0g; i ¼ 0; y; s:

%n Note that if g isnot the zero polynomial then V0 is k : Our algorithm computesthe equidimensional decompositions of the Vi in sequence for i ¼ 0; y; s: Each equidimensional component is represented by a set of lifting fibers (see definitions in Sections2.3 and 3.2). Each lifting fiber encodesan equidimensional variety. Our representation is not redundant in the following sense: an irreducible component of a variety represented by a lifting fiber cannot be included in a variety represented by another fiber. If W isan irreducible component of Vi we write mulðW; f1; y; fiÞ the multiplicity of the generic point of W as a solution of the system f1 ¼ ? ¼ fi ¼ 0 (cf. Section a 2.2). We denote by deg ðW; f1; y; fiÞ; and call it the algebraic degree of W with respect to f1; y; fi; the product mulðW; f1; y; fiÞ degðWÞ; where degðWÞ stands for a the classical geometric degree of W: By extension we define deg ðVi; f1; y; fiÞ asthe a sum of the algebraic degrees of the irreducible components of Vi: We denote by di thislastquantity: a a di :¼ deg ðVi; f1; y; fiÞ: ARTICLE IN PRESS

566 G. Lecerf / Journal of Complexity 19 (2003) 564–596

The crucial quantity appearing in the complexity of our algorithm isthe maximum a a a a d of the di ; namely: d :¼ maxi¼0;y;s di : We introduce the function U; that isused for complexity estimatesfrom Section 2.1 and that dominatesthe complexity of the basic arithmetic operations for univariate polynomials in degree at most z (multiplication, division and greatest common divisor): UðzÞ :¼ z log2ðzÞ log logðzÞ: We also use the constant O that is a positive real number bigger than 3 and smaller than 4: it isrelated to the complexity of the linear algebra over a ring asrecalled in Section 2.1. We let d be the maximum of the degreesof the fi and recall that L isthe evaluation complexity of f1; y; fs; g: The aim of thispaper isthe description of an algorithm that yieldsthe following complexity result:

Theorem 1. Let k be a field of characteristic zero. There exists a probabilistic algorithm taking as input a sequence f1; y; fn; g of polynomials in k½x1; y; xnŠ of degree at most d and given by a straight-line program of size at most L. The output is the equidimensional decomposition of the Zariski closure of the system

f1 ¼ ? ¼ fs ¼ 0; ga0: In case of success, the procedure requires Oðs logðdÞn4ðnL þ nOÞUðddaÞ3Þ; arithmetic operations in k. Equidimensional components are encoded by a set of lifting fibers. The probability of success of the algorithm depends on the choice of a point in knOð1Þ : there exists a Zariski open set of points that yield a correct answer.

The above statement is subject to the following observations. First the multiplicitiesof the componentsare not computed. The algorithm doesnot need to know them either. Eventually it provideslower boundson them. Moreover we do not know how to detect the cases of failure. For the sake of simplicity we chose a presentation in which the algorithm may not stop in very bad situations. We could remedy thisusingBe ´ zout’sinequality to compute upper boundson the number of solutions of each intermediate system. In case of failure the worst case complexity may be higher than in case of success but we do not address this problem in this paper. Since bad choicesof pointsin knOð1Þ are enclosed in an algebraic hypersurface the probability of failure isvery low, what isconfirmed in practice by our implementation.

1.2. Related results

Let k be a field of characteristic zero and f1; y; fs be polynomialsin k½x1; y; xnŠ: % We denote by V the k-algebraic variety solution of f1 ¼ ? ¼ fs ¼ 0: We discuss the main results concerning the computation of equidimensional decompositions. ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 567

Equidimensional decomposition: For computing the equidimensional decomposi- tion of V; the best known deterministic algorithms have a complexity upper bound asymptotically polynomial in sdn2 in termsof the number of arithmetic operationsin k:in[CG83,Chi96,Chi97] Chistov and Grigoriev present algorithms with such a complexity for computing a decomposition of V into irreducible components; Giusti and Heintz give [GH91] another method with the same complexity; moreover, their decomposition into equidimensional components is well-parallelizable; We refer to [Vor99] for a more detailed historical presentation. Elkadi and Mourrain propose [EM99] a method based on Be´ zoutian matrices, their algorithm is probabilistic and hascomplexity alsopolynomial in sdn2 : Roughly speaking sdn2 isa lower bound for thisproblem if we represent multivariate polynomialsof the output by vectorsof their coefficients(denseor sparse representation as defined in [DST87]). Thisfact comesfrom the following observation: take s asthe integer part of n=2 and consider random enough polynomialsof degree dX2: Then any eliminant polynomial in the ideal s ðf1; y; fsÞ-k½x1; y; xnÀsþ1Š hasdegree d (by Be´ zout inequality and the choice of random polynomials) and therefore the number of monomials of such an eliminant polynomial isin dOðn2Þ (for fixed d and when n tendsto infinity). From a numerical point of view, Sommese et al. propose [SV00,SVW01a, SVW01b,SVW01c,SVW02] numerical equidimensional and irreducible decomposi- tion algorithmsbasedon homotopy continuation. Some of their techniquesare very similar to ours but in an archimedian framework. Nowadays the complexity of their full solver is still unknown. In this vein, for the first time in [CHMP01,Cas01] Castro et al. compare the efficiency of symbolic and numerical analysis procedures for polynomial system solving using the approximate zero theory. In [Lec00] we propose a first breakthrough: eliminant polynomials are encoded by meansof straight-line programsand algebraic varietiesby geometric resolutions,we provide a complexity mainly polynomial in dn: The algorithm isprobabilistic with a uniform bounded error probability. Another independent approach isproposedby Jeronimo et al. [JS00,JPS01,JS02]: the main difference isthat each output component is described as the set of roots of n þ 1 polynomialsencoded by straight-line programs. Another algorithm for computing Chow forms of the components is proposed in [JKSS02]: it still relies on incremental solving and it is based on a new process for computing Chow forms from geometric resolutions. A by-product of an equidimensional decomposition is the dimension but there exist direct algorithms: the dimension can be computed in cost sdn: In [GH93] Giusti and Heintz propose a well-parallelizable algorithm polynomial in sdn; deterministic in a nonuniform complexity model and probabilistic in a uniform one; in 1996 Chistov [Chi96,Chi97] performs the same computation within the same complexity but deterministically for a uniform complexity model. On the basis of Koiran’s derandomization methods [Koi97] Rojasproposes [Roj00] a deterministic algorithm for computing the dimension using toric resultant [Stu94,GKZ94] within a complexity polynomial in a certain mixed volume (therefore polynomial in dn). ARTICLE IN PRESS

568 G. Lecerf / Journal of Complexity 19 (2003) 564–596

Evaluation techniques and lower bounds: Our method isin the continuation of a series of papers initiated by Giusti, Ha¨ gele, Heintz, Krick, Matera, Montan˜ a, Morais, Morgenstern and Pardo. The notion of geometric resolution has been introduced in [GHMP95,Par95] and the first resolution procedure for reduced regular sequences appears in 1997: In [GHH+97,GHMP97,GHM+98] an algorithm is presented for computing the roots of a system of polynomial equations with a complexity polynomial in a certain degree that isintrinsic to incremental methods. In [KP96,Mor97,HMPS00] the method isgeneralized in order to compute the isolated roots of any system of polynomial equations and inequations. In [Mat99,HMW01] the algorithm isrevisitedand improved, the exponentsin the complexity estimates are detailed. In [GLS01] we simplify, redesign, improve more the algorithm, and we also explain how to implement it. The purpose of thispaper isto extend thislastalgorithm in a natural way in order to compute not only the isolated roots but a description of all the equidimensional components. A good historical and extended presentation of these works can be found in [CGH+02]. In [GH01,CGH+02], Castro, Giusti, Heintz, Matera and Pardo explain why universal elimination procedures require exponential running time in worst case. Informally speaking, it follows from these results that resolution algorithms based on evaluation techniquesare polynomially optimal in worstcase.

1.3. Contributions

Let usrecall that the algorithm presented in [GLS01] can only solve the very particular but generic situation called reduced regular: according to the notation of the beginning, thiscorrespondstothe casewhen s ¼ n; Vi isequidimensionalof codimension i (regularity hypothesis) and the Jacobian matrix of f1; y; fi hasfull rank when evaluated at the generic pointsof Vi (reduction hypothesis), for i ¼ 1; y; n: In this paper we stay stick to the same approach: incremental solving and encoding of equidimensional varieties by means of lifting fibers. The first difficulty we overcame is the following: if the reduction hypothesis fails then a certain Jacobian matrix is degenerated and a certain associated Newton operator is not applicable. The solution we propose comes from [Lec02], where we provide a generalization of the Newton operator that is well suited to our solver. The regularity hypothesis is easier to remove, this is the purpose of Section 4: we present a minimization process which ensures that our representations of equidimensional decompositions are not redundant. In [JS00,Lec00,JKSS02] the decomposition algorithms rely on Bertini’s first theorem, which demandsto replace the original polynomialsby generic linear combinations of them. The main drawback is that the resulting solver is not incremental. Moreover if only one polynomial isdifficult to evaluate then the combination spoils the complexity of each . Last the deforestation, in the sense of [GHL+00], of thesealgorithmsyieldsimplementationsfar away from [GLS01]. These are the reasons why we were motivated by the deflation techniques of [Lec02]. ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 569

In the same way as in [GLS01],ifk isthe field of the rational numbersthe resolution is first computed modulo a small prime number p; of size about 64 bits. Then we lift the solutions in the ring of the p-adic numbersand reconstruct the rational numbers.But before lifting the integersit isimportant to find a fiber of small height. Thisisthe aim of Section 5.4. The algorithm presented here hasbeen implemented in our Magma [Mag,BC95,BCM94,CP96,BCP97] package called Kronecker [Lec99] from version 0:166 and available at http://kronecker. medicis.polytechnique.fr.

2. Complexity model and data structure

One key feature of the geometric resolution algorithms based on evaluation techniquesisan effective useof the Noether Normalization Lemma also called geometrically the Noether Position. Thistechnique allowsto representa positive dimensional variety by a zero-dimensional one. First we explain the complexity model we use and recall a few well-known results. Then we recall the definitions of geometric resolution and a lifting fiber.

2.1. Complexity model

Let k be an effective field, a straight-line program G encoding a set of polynomials f1; y; fs of k½x1; y; xnŠ is a data structure representing an evaluation scheme for f1; y; fs: Such a program is composed of a sequence of elementary instructions. Each instruction performs only one basic binary arithmetic operation (addition, subtraction or multiplication). The inputs of G are the variables x1; y; xn; the outputsare the valuesof f1; y; fs: We denote by L the complexity of G; defined as the number of instructions of the program G: For standard terminology about straight-line program we refer to [BCS97]. As a complexity model we use the unit cost measure, i.e. each arithmetic operation (multiplication, addition, division) of the ground field is counted as one. In the sequel we use the function UðzÞ that denotes UðzÞ :¼ z log2ðzÞ log logðzÞ:

Thisfunction dominatesthe complexity of the arithmetic operations(addition, multiplication, division, greatest common divisor) with polynomials of degrees at most z in termsof number of operationsin the basering or field. The quantity UðzÞ also dominates the bit-complexity of the arithmetic operations (addition, multi- plication, quotient, remainder and greatest common divisor) of the integers of bit- size at most z: The constant O we use along this paper is a number bigger than 3 and such that the adjoint and the determinant of a n  n matrix over a k-algebra can be done in OðnOÞ arithmetic operationsin the algebra. If k hascharacteristiczero (or big enough with respect to n) then we can take O ¼ 3 (according to the results from [CW90] and ARTICLE IN PRESS

570 G. Lecerf / Journal of Complexity 19 (2003) 564–596

[PS78]), but the underlying algorithm isdifficult to implement and isnot the most efficient in our range of applications( n at most 15). Hence O isabout 4 in practice. Many authors have contributed to these topics. Some very good historical presentations can be found in the books by Aho et al. [AHU74],Bu¨ rgisser et al. [BCS97], Bini and Pan [BP94], von zur Gathen and Gerhard [GG99], among others. A short presentation can also be found in [GLS01, Section 3.5].

2.2. Geometric resolutions

In thissection k denotesa field of characteristic0. Let x1; y; xn be indeterminates over k and W be a r-equidimensional k-variety in k%n; where k% denotesthe algebraic closure of k: We call I the annihilating ideal of W in k½x1; y; xnŠ:

I :¼ff Ak½x1; y; xnŠ; f ðzÞ¼0; 8zAWg; and we denote by k½WŠ the coordinate ring k½x1; y; xnŠ=I: The definition of the degree degðWÞ of W that suits best our purpose is the geometric one (see [Ful84,Hei83,Mum95] for instance): %n degðWÞ :¼ supf#Vðy1 À p1; y; yr À prÞ-WDk ; r y1; y; yr are k-linear forms; ðp1; y; prÞAk ;

#Vðy1 À p1; y; yr À prÞ-Wo þ Ng; where # denotesthe cardinal function and Vðy1 À p1; y; yr À prÞ isthe variety solution of y1 ¼ p1; y; yr ¼ pr: If W isnot equidimensionalthen itsdegree isdefined as the sum of the degrees of its equidimensional components. y Let W be r-equidimensional. We say that a subset of variables Z ¼fxi1 ; ; xik g is y free with respect to W when I-k½xi1 ; ; xik Š¼ð0Þ: A variable is integral with respect to a subset of variables Z if there exists in I a monic polynomial annihilating it and whose coefficients are polynomial in the variables of Z only. A Noether normalization of W consists of a k-linear change of variables, transforming the variables x :¼ðx1; y; xnÞ into new ones y :¼ðy1; y; ynÞ; such that %n %r the linear map from k to k (rpn) that sends ðy1; y; ynÞ to ðy1; y; yrÞ inducesa finite surjective morphism of affine varieties p : W-k%r: Thisisequivalent to the fact that the variables y1; y; yr are free and yrþ1; y; yn integral with respect to the free ones. In this situation we say that the variables are in Noether position with respect to W: Let B denote the coordinate ring k½WŠ; and R :¼ k½y1; y; yrŠ; then a Noether normalization inducesan integral ring extension R-B: Let K be the field of 0 0 fractionsof R and B denote K#RB; then B isa finite-dimensional K-vector space of dimension bounded by the degree of W: We say that the variables y1; y; yn are in projective Noether position if they define a Noether position for the projective Zariski closure of W: More precisely, let x0 be a h new variable, to any polynomial f of k½x1; y; xnŠ; we associate f ðx0; y; xnÞ the h homogenization of f with respect to x0; let I Ck½x0; y; xnŠ denote the ideal ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 571 generated by all the homogenized polynomialsof I and WhDk%nþ1 the k-variety associated to Ih: Wh is the projective Zariski closure of W: We say that the variables y1; y; yn are in projective Noether position with respect to W when x0; y1; y; yn are h h in Noether position with respect to W ; that is k½x0; y1; y; yrŠ-k½W Š isan integral ring extension. From now on we assume that y1; y; yn are variablesin projective Noether position for W: In thissituation the dimensionof B0 isexactly the degree of p; that equalsdeg ðWÞ: We are interested in some particular bases of B0:Ak-linear form nÀr u ¼ lrþ1yrþ1 þ ? þ lnyn; with ðlrþ1; y; lnÞAk ; such that the set of powers 1; u; y; udegðWÞÀ1 forms a basis of the vector space B0 iscalled a primitive element of W: A geometric resolution of W is a data structure to store and manipulate W from a computational point of view. Thisrecord containsthe following fields:

* An invertible n  n square matrix M with entriesin k such that the new coordinates y ¼ MÀ1x are in projective Noether position with respect to W; * A primitive element u ¼ lrþ1yrþ1 þ ? þ lnyn of W; * The minimal polynomial qðTÞAK½TŠ of u in B0; monic in T; and * The parametrization of W by the zerosof q; given by polynomials

vrþ1ðTÞ; y; vnðTÞAK½TŠ;

0 such that yj ¼ vjðuÞ in B ; for r þ 1pjpn and degT ðvjÞodegT ðqÞ: Given a primitive element u; itsmonic minimal polynomial q isuniquely determined. But the parametrization can be expressed in several ways. In the above definition the parametrization of the algebraic coordinateshasthe form

yj ¼ vjðTÞ; r þ 1pjpn: However, given any polynomial p in K½TŠ relatively prime with q another parametrization can be deduced:

pðTÞyj ¼ vjðTÞpðTÞ; r þ 1pjpn: One interesting choice is to express the parametrization in the following way: @q ðTÞyj ¼ wjðTÞ; r þ 1pjpn; ð1Þ @T with degT wjodegT q: We call a parametrization in the form of Eq. (1) a Kronecker parametrization. This special form has a long history and we refer to [GLS01, Section 1] for more detailsabout thissubject.

Proposition 1 (Giusti et al. [GLS01, Proposition 3]). According to the above notation, the polynomial q has its coefficients in R and in the Kronecker parametrization (1) the polynomials wi have also their coefficients in R instead of K. The total degree of q and the wi with respect to the variables y1; y; yr and T is bounded by degT ðqÞ¼degðWÞ: dq Moreover qðuÞ and dT ðuÞyj À wjðuÞ belong to I; for r þ 1pjpn: ARTICLE IN PRESS

572 G. Lecerf / Journal of Complexity 19 (2003) 564–596

2 2 For instance, let f1 ¼ x3 þ x1x2 þ 1andf2 ¼ x2 þ x1x3; the variables x1; x2; x3 are in Noether position, x2 isa primitive element and we have the following Kronecker parametrization: 4 3 2 x2 þ x1x2 þ x1 ¼ 0; 3 3 2 2 ð4x2 þ x1Þx3 ¼ 4x1x2 þ 3x1x2:

Since we impose that degðvjÞodegðqÞ it follows:

Proposition 2. Given a Noether position and a primitive element, any equidimensional algebraic variety W admits a unique geometric resolution.

As discussed in Section 1.2 geometric resolutions have been designed to be stored by means of straight-line programs. We will not compute such objects here. As the only geometric resolutions we need for our solver are for curves, we use dense polynomial representation. Nevertheless in Section 5.3 we propose an efficient scheme to compute expanded representations of geometric resolutions. Let V be a variety, we say that a sub-variety W of V is isolated in V if W isthe union of some irreducible components of V: Let e ¼ðe1; y; elÞ be a sequence of polynomialsin k½x1; y; xnŠ: We denote by VðeÞ the k-algebraic variety solution of e ¼ 0: Let W be an irreducible component of VðeÞ; then its multiplicity mulðW; eÞ as a solution of the system e ¼ 0 isgiven by:

mulðW; eÞ¼dimK½WŠ K½WŠ½½yrþ1 À vrþ1ðTÞ; y; yn À vnðTފŠ=ðe3MÞ; where M; u; q; v come from a geometric resolution of W; K½WŠCK½TŠ=ðqðTÞÞ isa field and K½WŠ½½yrþ1 À vrþ1ðTÞ; y; yn À vnðTފŠ denotesthe power seriesring in the n variables yrþ1 À vrþ1ðTÞ; y; yn À vnðTÞ: For any irreducible component W of VðeÞ we denote by degaðW; eÞ the product mulðW; eÞ degðWÞ: For any isolated sub-variety V of VðeÞ; degaðV; eÞ isdefined as the sum of the degaðW; eÞ over all the irreducible components W of V:

2.3. Fibers

We keep the notation of the previoussection: W isa r-equidimensional variety, I isitsannihilating ideal, y1; y; yn are variablesin projective Noether positionand p is the projection from W onto the space spanned by the free variables. In this situation À1 we call the fiber of W at point p :¼ðp1; y; prÞ the finite set of points Wp :¼ p ðpÞ: If all the pointsof a fiber are smooth on W and for p then the cardinal of the fiber equalsdeg ðWÞ: In general thisproperty holdsbut one needsto count pointsin the fiber with their multiplicities [Sam67, p. 89].Ak-linear form u ¼ lrþ1yrþ1 þ ? þlnyn issaidto be a primitive element of a fiber if its separates its points, in the sense that u takestwo distinct valuesat two different pointsof the fiber. We represent the fiber of Wp by a record which hasthe following entries:

* An annihilating system e ¼ðe1; y; elÞDI of W; e isencoded by a straight-line program with x1; y; xn asinput. ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 573

* An invertible n  n square matrix M with entriesin k such that the new coordinates y ¼ MÀ1x are in projective Noether position with respect to W: * The specialization point p; * nÀr A primitive element u ¼ lrþ1yrþ1 þ ? þ lnyn of Wp; with ðlrþ1; y; lnÞ in k ; * The minimal polynomial qðTÞAk½TŠ of u in the coordinate ring k½WpŠ; * n À r polynomials v :¼ðvrþ1; y; vnÞ of k½TŠ; of degrees strictly less than degT ðqÞ; giving the parametrization of Wp by the zerosof q:

k½yrþ1; y; ynŠ=ðqðuÞ; yrþ1 À vrþ1ðuÞ; y; yn À vnðuÞÞCk½WpŠ:

Observe that the following relations hold in the factor ring:

uðvrþ1ðTÞ; y; vnðTÞÞ ¼ T;

ej3Mðp1; y; pr; vrþ1ðTÞ; y; vnðTÞÞ 0 mod qðTÞ; 1pjpl:

If the Jacobian matrix of e3M with respect to the variables yrþ1; y; yn hasrank n À r when evaluated at each point of the fiber then we call p a lifting point, and the fiber is said to be a lifting fiber. In thiscasenote that we have deg ðWpÞ¼degðWÞ: Such a fiber represents W in the sense that it is possible to recover the geometric resolution with primitive element u lying over thisfiber: the minimal polynomial and the parametrization of thisgeometric resolution of W specialize to the ones of the fiber [GLS01, Proposition 5]. When W isisolated in VðeÞ we will say for short that the fiber is isolated. If a fiber isnot isolatedthen one cannot find lifting points,thisisa consequenceof the Jacobian criterion [Mat86, Section 30]. If a fiber is isolated, lifting points exist if and only if mulðW; eÞ¼1: In this case the specialization points that are not lifting points are enclosed in an algebraic hypersurface of kr [GLS01, Lemma 1]. The purpose of the next section is to generalize the notion of lifting points for isolated fibers of components featuring multiplicities. In such cases we make use of the deflation algorithm introduced in [Lec02]. Notation for the pseudo-code: For the pseudo-code of the algorithms we use the following notation. If F denotesa fiber: FChangeOfVariables is M; FPrimitiveElement is u; FSpecializationPoint is p; FMinimalPolynomial is q; FParametrization is v and FAnnihilatingSystem is e: Generic fibers: Let PðPÞ be a property depending on a point PAkN for a given integer N; we say that PðPÞ istrue for almost all points P if there exists a nonzero polynomial HAk½z1; y; zN Š such that HðPÞa0 implies PðPÞ: Let W be an equidimensional variety and e a sequence of polynomials in k½x1; y; xnŠ such that WDVðeÞ: A fiber of W with annihilating system e corresponds to the choice of a n  n matrix over k; a linear form depending on at most n variables and a specialization point of size at most n: In other words, such a fiber corresponds to a choice of a certain point P in kN with N ¼ n2 þ 2n: If P isa property depending on a fiber of W for the annihilating system e then we say that P istrue for almostall fibersof W if P istrue for almostall valuesof the point P associated to the fiber. ARTICLE IN PRESS

574 G. Lecerf / Journal of Complexity 19 (2003) 564–596

3. Lifting algorithms

In this section we import the main results of [Lec02], the deflation process described therein is the core of our solver: the deflation process is defined in Section 3, the generic trace in Section 3.5, the nested coordinates in Section 3.4, the functions NestedCoordinatesWithTrace and LiftNestedCoordinates are presented in Section 4.

3.1. Fast deflation

The following framework issimilar to and generalizes [GLS01, Section 4]. Let o be a Noetherian domain, m one of itsmaximal ideals, K itsfield of fractionsand o# its completion with respect to the m-adic topology. We assume that K hascharacteristic zero. The main applicationswe have in mind are: ðo; mÞ¼ðk½tŠ; ðtÞÞ; ðo; mÞ¼ ðk½y1; y; yrŠ; ðy1 À p1; y; yr À prÞÞ; where k isa field of characteristiczero and r ðp1; y; prÞAk and ðo; mÞ¼ðZ; ðpÞÞ; where p isa prime number. Roughly speaking we are given a set of isolated roots of a system e ¼ 0; at precision m; our aim is to recover these roots at precision mk for any valuesof k: The method we propose below works for almost all maximal ideal m: More formally, our lifting algorithm takesasinput:

(I1) A sequence e ¼ðe1; y; elÞ of polynomialsin K½x1; y; xnŠ encoded by a straight-line program; (I2) A linear form u ¼ l1x1 þ ? þ lnxn; with liAK; (I3) A monic squarefree polynomial q in o½TŠ; (I4) v ¼ðv1; y; vnÞ; n polynomialsin o½TŠ of degrees strictly less than degðqÞ; (I5) T; the generic trace of the deflation process described in the next paragraphs.

Let A :¼ o#½TŠ=ðqÞ: We say that an element in K (given by itsnumerator and denominator) is well-defined in o# if itsdenominator isinvertible modulo m: We assume that:

ˆ (H1) There exist polynomials Q; Vˆ1; y; Vˆn in K½TŠ such that x ¼ðVˆ1; y; VˆnÞ in ðK½TŠ=QˆðTÞÞn represents a set of isolated roots with respect the Zariski topology of the system e ¼ 0: ˆ ˆ Let Qi; for i ¼ 1; y; c; be the irreducible factorsof Q; then we denote by mi the ˆ multiplicity of ðVˆ1; y; VˆnÞ asa root of e ¼ 0inK½TŠ=QiðTÞ: By extension we say that an element of K½TŠ=QˆðTÞ iswell-defined in A if all itscoefficientsare well- defined in o#: Let m denote the minimum of the multiplicitiesof the pointsrepresented c by x : m :¼ mini¼1 mi: We assume more: (H2) degðQˆ Þ¼degðqÞ; Qˆ ismonic, well-defined in o# and coincideswith q modulo m: n (H3) degðVˆjÞodegðqÞ; for j ¼ 1; y; n; x iswell-defined in A and coincideswith ðv1; y; vnÞ modulo m: ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 575

(H4) uðVˆ1; y; VˆnÞ¼T: (H5) e iswell-defined over A:

Let us now describe the main construction which yields to the fast deflation algorithm. We intensively use Gantmacher’s notation zi:j to denote the sub-sequence ARTICLE IN PRESS

576 G. Lecerf / Journal of Complexity 19 (2003) 564–596 zi; y; zj of a vector or sequence z: We construct sequences ðekÞkX1 and ðnkÞkX1 incrementally as follows. We start with n1 :¼ 1; e1 :¼ e and for kX2: ˆ ˆ 1. We introduce the power series ring Sk :¼ K½TŠ=QðTÞ½½xnk:n À Vnk:nŠŠ; ek isa finite subset of Sk: 2. We let mk :¼ valðekÞ be the minimum of the valuationsof the elementsof ek: 3. We define () m[kÀ1 @je * A ek :¼ j ; e ek : j¼0 @xnk

4. For the sake of simplicity we assume that there exists an element in ek having a mk nonzero coefficient with respect to the monomial xnk : In this case we say that xnk is in WeierstraX position with respect to ek: When entering Algorithm 1 this hypothesis may not hold, this is why we change the coordinates: almost all matrices N involved in Algorithm 1 ensure WeierstraX positions. * ˆ X 5. By construction the Jacobian matrix of ek at Vnk:n isnonzero and hasrank rk 1: * We define nkþ1 :¼ nk þ rk and try to extract a subset Sk of rk elementsin ek such ˆ that the Jacobian matrix of Sk with respect to the variables xnk:nkþ1À1 at Vnk:n is invertible. We will say that x is DA-irreducible at order k if the algorithm used to compute the rank rk and extract Sk doesnot fail at inverting zero-divisors(we refer to [Lec02] for more detailsabout thisalgorithm). In order to continue we need to assume that this kth DA-irreducibility holds. 6. Conditions required by the implicit function theorem are satisfied: it is pos-

sible to define ynk:nkþ1À1 asthe unique power seriesin Skþ1 satisfying ˆ Skðynk:nkþ1À1; xnkþ1:nÞ¼0 in the neighbourhood of Vnk:n: Last we define ekþ1 :¼ * C ekðynk:nkþ1À1; xnkþ1:nÞ Skþ1:

This construction stops once we have exhausted all the variables, that is when nkþ1 ¼ n þ 1: We let n be such that nnþ1 ¼ n þ 1 and call it the depth of the deflation. Gathering the necessary DA-irreducibility conditions we must assume: (H6) x isDA-irreducible at order k; for all kAf1; y; ng: In particular thisimplies that x is DA-irreducible asdefined in [Lec02, Section 5]. Observe that the concept of DA-irreducibility strongly depends on the algorithm involved in step 5, which chooses of the subsets Sk: different choicesyield different DA-irreducibilities. The underlying idea corresponds to the fact that the construction of the deflation sequence can be done without splitting Qˆ : Last, in order to ensure the well-definition of all the Sk over A we need to add one last hypothesis: (H7) All the quantitiesinvolved in the calculationsof step5 are well-defined over A:

Before studying Algorithm 1 it remains to define the subfunctions it uses. These subfunctions compute and lift what are called the nested coordinates Y ¼ðY1; y; YnÞ ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 577 associated to the deflation process and defined as power series in ˆ K½TŠ=QðTÞ½½e1; y; enŠŠ by:

Ynn:nnþ1À1 :¼ ynn:nnþ1À1ðÞ;

YnnÀ1:nnÀ1 :¼ ynnÀ1:nnÀ1ðYnn:nnþ1À1 þ enn:nnþ1À1Þ; y ; y Yn1:n2À1 :¼ yn1:n2À1ðYn2:n3À1 þ en2:n3À1; ; Ynn:nnþ1À1 þ enn:nnþ1À1Þ:

According to (H7) the nested coordinates are also well-defined over A: The generic trace T of the deflation is a data structure that stores all the choices performed during the construction and for generic coordinates. We refer to [Lec02, Section 3.5] for a precise definition. The first subfunction NestedCoordinatesWithTrace we use takes as input the polynomial system, the approximation of the root mod m and computesthe nested coordinates Y at precision m; but the generic trace of the root is supposed to be known. The second subfunction LiftNestedCoordinates takesasinput the value of Y at precision k and returnsthe lifted value at precision2 k: Thislifting operates only if the generic trace isknown. We are now able to describe how our lifting algorithm computes approximations of x in A at any arbitrary precision. More precisely, for any given k40 we are able to compute:

(O1) Q a monic polynomial in o½TŠ of degree degðqÞ which coincideswith Qˆ modulo mk: (O2) V ¼ðV1; y; VnÞ; n polynomialsin o½TŠ of degrees strictly less than degðqÞ k k which coincideswith ðVˆ1; y; VˆnÞ modulo m and uðVÞ¼T modulo m :

The lifting algorithm isthe combination of the deflation algorithm of [Lec02] and the globalization trick of [GLS01, Section 4]. It issummarized in Algorithm 1. We recall that the algorithm is probabilistic: in order to work properly the coordinates must be generic enough in order to satisfy the WeierstraX positions required by the deflation [Lec02, Section 2.2]. Thisiswhy the procedure startswith picking up a random matrix N: Then we change e to e3N; v to NÀ1ðvÞ and u to u3N before entering the deflation routines. At the end of the lifting we change back the coordinates. If N isnot generic enough then the NestedCoordinatesWithTrace may either raise a ‘‘division by zero’’ error, return a bad result or may never stop. We denote by aðhÞ the cost of the arithmetic operations in o=mh: binary arithmetic operations (addition, multiplication, inversion) and projections from o=mh0 to o=mh; for any h0ph:

Proposition 3. According to the above notation, under hypotheses ðH1Þ; y; ðH7Þ for almost all matrices N of Algorithm 1, which is well-defined over o and invertible ARTICLE IN PRESS

578 G. Lecerf / Journal of Complexity 19 (2003) 564–596 modulo m; Algorithm 1 returns a correct answer, with a complexity in ! logX2ðkÞþ1 O logðdÞn4ðnL þ nOÞm2UðdegðqÞÞ að2jÞ ; j¼0 where d is an upper bound on the degrees of the elements of e and L denotes the evaluation complexity of the straight-line program encoding e:

Proof. Thisisa corollary of [Lec02, Theorem 1]. The cost of the changes of variables is negligible. The complexity is essentially the sum of the complexities of the computation of the nested coordinates and the successive liftings. The deformation for updating Y and Q are done within Oðn3mÞ arithmetic operationsin A=ðmkAÞ; since the support of the multivariate power series for Y isin OðnmÞ (combine Propositions 3, 6 and Lemma 7 of [Lec02]). The value m isbounded by dn; hence logðnmÞ isbounded by log ðnÞþn logðdÞAOðn logðdÞÞ: &

3.2. Lifting fibers for multiple components

We come back to the notation of Section 2.2: W isa r-equidimensional variety, M; y; u; q; v constitute a geometric resolution of W: We recall that K :¼ kðy1; y; yrÞ: Let e be a sequence of polynomials in k½x1; y; xnŠ: We assume that W isisolated in VðeÞ: n Let K½aŠ :¼ K½TŠ=qðTÞ and y ¼ðvrþ1ðaÞ; y; vnðaÞÞ in K½aŠ : Then the vector y represents a set of isolated roots of the system e3M ¼ 0 seen as polynomials in K½yrþ1; y; ynŠ: We are in the frame of the deflation process of the previous section: we say that the geometric resolution is DA-irreducible with respect to the sequence e ¼ 0ifNy isDA-irreducible asa root of e3M3NÀ1 ¼ 0 for almost all matrices N in GLnðkÞ: This property is independent of the geometric resolution chosen. Therefore we say for short that W isDA-irreducible in VðeÞ: By extension, the generic trace T of W with respect to e isdefined to be the generic trace of y (and isalsoindependent of the geometric resolution). We introduce the function DaSplit of [Lec02, Section 5]. If given asinput the polynomials e and the parametrization of the rootsof e ¼ 0 over K coming from the geometric resolution then it returns a partition of these roots into DA-irreducible subsets together with their corresponding generic traces. To this partition corresponds a decomposition of W: We call a DA-lifting point p a point in kr satisfying the following property: the function DaSplit of [Lec02, Section 5] called on Ny commuteswith the specialization of the free variablesat p; for almost all matrices N in GLnÀrðkÞ: By thiscommutation we mean that all the branchings performed during the execution of DaSplit are preserved. In other words the deflation algorithm executed over K or over k after the specialization y1 ¼ p1; y; yr ¼ pr keepsthe samebranchings.A fiber with a DA-lifting point iscalled a DA-lifting fiber. In thiscase,if W isDA-irreducible then we saythat the fiber isa DA-irreducible lifting fiber. ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 579

Thisdefinition istechnical and the lack of geometric interpretation makesit difficult to manipulate. The only useful result we shall use is:

Lemma 1. If W is isolated in VðeÞ then almost all fibers of W with respect to e are DA-lifting fibers.

Proof. This is a consequence of Propositions 7, 8 and 20 of [Lec02]. &

Thisterminology isused in Section 5.3: once the generic trace isknown we are able to test if a fiber is a DA-lifting fiber. Last we need to revisit the definition of a fiber given in Section 2.3: we need to add a new field to store the generic trace. For the pseudo-code we introduce FGenericTrace to denote the generic trace of the fiber F: It isimportant to notice that thistrace isonly known for DA-irreducible lifting fibers.

3.3. Lifted curves

Let W be a r-equidimensional variety. Following the notation of Section 2.2, p denotesthe projection map from W onto the space spanned by the free variables y1; y; yr: Let F be a DA-irreducible lifting fiber of W; p itsspecialization point and p0Akr be a point different from p: We denote by D the line spanned by p and p0: The À1 inverse image WD :¼ p ðDÞ isa one equidimensionalvariety called a lifted curve [GLS01, Section 4.5]. We are interested in computing a geometric resolution of it. Thislifted curve computation isachieved by replacing the function GlobalNewton of [GLS01, Section 4.3] by the one of Algorithm 1 in the function LiftCurve of [GLS01, Section 4.5]. One slight modification to notice is that GlobalNewton takes the trace of the fiber as a new argument. It is also important to observe that this new LiftCurve procedure is now probabilistic because of the random choice of N introduced in the new GlobalNewton. The lifted curve algorithm issummarized in Algorithm 2. Let e; M; p; u; q; v compose the fiber F: First we express the equations in the variables y1; y; yn: g :¼ e3M: Then we introduce a new variable t and compute h from g by substituting yi by 0 pi þðpi À piÞt for i ¼ 1; y; r: Last we call the deflation process at the points of F with the system h ¼ 0 and with ðo; mÞ¼ðk½½tŠŠ; ðtÞÞ (with respect to the notation of Section 3). The function StopCriterion forces the lifting to stop once the precision degðWÞþ1 t isreached. At the end, denoting w ¼ðwrþ1; y; wnÞ; the parametrization of WD becomes: 8 > @qðt;TÞ <> @T ðt; uÞyrþ1 ¼ wrþ1ðt; uÞ; qðt; uÞ¼0; ^ > : @qðt;TÞ @T ðt; uÞyn ¼ wnðt; uÞ: ARTICLE IN PRESS

580 G. Lecerf / Journal of Complexity 19 (2003) 564–596

In other words:

kðtÞ#k½WDŠCkðtÞ½TŠ=  @qðt; TÞ @qðt; TÞ qðt; TÞ; y À w ðt; uÞ; y; y À w ðt; uÞ : @T rþ1 rþ1 @T n n

Let usrecall that the total degree of q and the wi isbounded by deg ðWÞ [GLS01, Proposition 3], which justifies our stop criterion. At the end of the procedure the function Truncate is used to recover bivariate polynomials of degrees at most d from series known at precision d þ 1:

Proposition 4. According to the above notation, for almost all fibers F of W and for almost all choices of N in GlobalNewton the complexity of Algorithm 2 is in 4 O a 2 OðlogðdÞn ðnL þ n ÞUðdeg ðW; FAnnihilatingSystemÞÞ Þ; in terms of arithmetic operations in k, where d is an upper bound on the degrees of the elements FAnnihilatingSystem and L denotes the evaluation complexity of the straight-line program encoding FAnnihilatingSystem: ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 581

Proof. The proof isvery similar the one of Lemma 3 in [GLS01]: we take the function a as U in Proposition 3 and we observe that mUðdegðWÞÞp a Uðdeg ðW; FAnnihilatingSystemÞÞ: &

3.4. Splittings due to the deflation

During the resolution process of Section 5 we produce DA-lifting fibers that are not necessarily DA-irreducible. We need to split them into DA-irreducible ones and compute their generic traces. The definition of DA-lifting points is exactly stated in such a way that the execution of the splitting algorithm of [Lec02, Section 5] leadsto correct decompositions and traces, when executed on DA-lifting fibers. The resulting method issummarized in Algorithm 3. The function DaSplit isthe one from Section 5of[Lec02]. From Propositions 19 and 20 of [Lec02] we deduce:

Proposition 5. According to the notation of Algorithm 3, for almost all matrices N in GLnÀrðkÞ the function DaSplitFiber returns a correct answer, with a complexity in

4 O a 2 OðlogðdÞn ðnL þ n Þ deg ðW; FAnnihilatingSystemÞ UðdegðFÞÞÞ; ARTICLE IN PRESS

582 G. Lecerf / Journal of Complexity 19 (2003) 564–596 in terms of arithmetic operations in k, where d is an upper bound on the degrees of the elements of FAnnihilatingSystem and L denotes the evaluation complexity of the straight- line program encoding FAnnihilatingSystem:

4. Removing redundancies

Let e ¼ðe1; y; elÞ be a sequence of polynomials in k½x1; y; xnŠ: We assume that we are given a set F of fibers of varieties whose union is isolated in VðeÞ: In this section we describe a process for computing a minimal subset of isolated fibers from F that represents VðeÞ: We call this stage of the solver the minimization process. The basic underlying operation is the inclusion test between two equidimensional varieties. ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 583

4.1. Inclusion between two varieties

1 2 Let W1 (resp. W2)bear1 (resp. r2)-equidimensional variety. Let F (resp. F )bea 2 fiber of W1 (resp. W2). We assume that F isa DA-irreducible lifting fiber. We are looking for a fiber for the reunion of the irreducible componentsof W1 that are not 2 included in W2: Our method consists in computing one judicious lifted curve of F : First we explain the method in terms of geometric resolutions, then we specialize the free variables and deduce the algorithm for the fibers. We assume that F 1 is generic enough so that we can consider the geometric resolutions lying over F 1 and 2 F : Mi isthe change of variables, ui the primitive element, Qi the minimal polynomial and Vi V i ; y; V i the parametrization of the geometric resolution ¼ð riþ1 nÞ i i À1 lying over F ; for i ¼ 1; 2: Let y :¼ Mi x; then the parametrization of Wi is given by: 8 > yi V i yi ; y; yi ; u ; < riþ1 ¼ riþ1ð 1 ri iÞ i i Qiðy ; y; y ; uiÞ¼0; ^ 1 ri :> yi V i yi ; y; yi ; u : n ¼ nð 1 ri iÞ We express the parametrization of F 1 in the coordinatesof F 2: Z ; y; Z : MÀ1M y1; y; y1 ; V 1 ; y; V 1 : ð 1 nÞ ¼ 2 1ð 1 r1 r1þ1 nþ1Þ Let w y2; y; y2 ; T Ak y2; y; y2 ; T be the minimal polynomial of the linear form tð 1 r2 Þ ½ 1 r2 Š u l y2 ? l y2 with respect to where the l are new parametersin k: l ¼ r2þ1 r2þ1 þ þ n n W2 i w y2; y; y2 ; u 0ink : tð 1 r2 lÞ¼ ½W2Š y Let A :¼ ulðZr2þ1; ; ZnÞ; we deduce that, for almost all ul: w Z ; y; Z ; A 0ink y1; y; y1 T = Q tð 1 r2 Þ¼ ð 1 r1 Þ½ Š ð 1Þ isequivalent to the inclusionof W1 in W2 [Lec00, Appendix A]. Therefore the componentsof W1 included in W2 correspond to the greatest common divisor of Q1 y and wtðZ1; ; Zr2 ; AÞ¼0; for almost all ul: Let us now consider what happens in the above computations when we specialize y1; y; y1 to the lifting point p of F 1: More precisely let M ; p ; u ; q ; v1 be the 1 r1 1 1 1 1 1 change of coordinates, the specialization point, the primitive element, the minimal polynomial and the parametrization of F: We recall that q1 and v1 can be deduced from Q and V1 by substituting y1; y; y1 by p : 1 1 r1 1 First we compute À1 1 z ¼ðz1; y; znÞ :¼ M2 M1ðp1; v Þ: 2 y Then we compute the lifted curve of F for the line going through p2 and ðz1; ; zr2 Þ: thiscomputation isperformed in k½TŠ=ðq1Þ instead of k but no inversion is required in thisalgebra. From the parametrization of thiscurve we deduce the value y qðTÞ :¼ wtðz1; ; zr2 ; TÞ for ul ¼ u2: ARTICLE IN PRESS

584 G. Lecerf / Journal of Complexity 19 (2003) 564–596

y Last it remains to compute a :¼ u2ðzr2þ1; ; znÞ and evaluate q at a: b :¼ qðaÞ: The value b belongsto k½TŠ=ðq1Þ; we convert it to be the element of k½TŠ of degree strictly less than degðq1Þ: Let q% be the greatest common divisor of b and q; F the restriction of F 1 modulo q=q%: If the specialization point of F 1 and the primitive element of F 2 are generic enough then F represents the components of F 1 that are not included in F 2: This method issummarized in Algorithm 4 and hasthe following complexity:

Proposition 6. According to the above notation, for almost all primitive elements of F 2; 1 almost all fiber F of W1 and almost all matrices N involved in LiftCurve then Algorithm 4 returns a correct answer within a complexity in 4 O a 2 2 OðlogðdÞn ðnL þ n ÞUðdeg ðW2; FAnnihilatingSystemÞÞ UðdegðW1ÞÞÞ; in terms of operations in k, where d is an upper bound on the degrees of the elements of 2 FAnnihilatingSystem and L denotes the evaluation complexity of the straight-line program 2 encoding FAnnihilatingSystem:

Proof. The complexity isthe one of LiftCurve over k½TŠ=ðq1Þ; thisyieldsthe extra factor UðdegðW1ÞÞ: &

4.2. Minimization

We are now coming to the problem of minimizing a set of fibers F: Our method relieson the above function Difference and issummarized in Algorithm 5. It works well for almost all sets of fibers. The precise problem is the following: we are given a set of fibers F ¼fF1; y; Ftg where Fi isa fiber for the variety Wi: We assume that all the Fi share e as annihilating system and that V :¼ W1,?,Wt isisolatedin VðeÞ: The output of 0 0 0 0 0 the procedure isa setof fibers F ¼fF1; y; Ft0 g; where Fi isa fiber of the variety Wi; and satisfying: 0 ? 0 1. W1, ,Wt0 ¼ V; 0 2. all the elementsof F are isolated and DA-irreducible, S 0 0 0 3. for any i; 1pipt ; no irreducible component of Wi isincluded jai Wj:

In this situation we say that F0 represents V without redundancy. The process we are to describe is valid for almost all sets of fibers F: We denote by 0 0 Fi (resp. Fi) the subset of fibers of F (resp. F ) representing varieties of codimension i; y 0 for i ¼À1; ; n: First observe that FÀ1 ¼ FÀ1 ¼fg: By induction, let us assume that 0 0 0 we have already computed FÀ1 up to FiÀ1: Then we initialize Fi asthe empty setand for each fiber F of Fi we first remove from it all the components that belong to 0 ? 0 0 the variety represented by F0, ,Fi; we get a new fiber F : By construction the variety W0 represented by F 0 isisolatedin V: We deduce that W0 isisolated in VðeÞ and therefore we can apply the deflation algorithm. The new DA-irreducible ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 585

0 fiberswe obtain thisway are added to Fi and we carry on with another element of Fi:

Proposition 7. According to the above notation, for almost all fibers Fi of Wi sharing the same annihilating system e and almost all matrices N involved in DaSplitFiber, if V is isolated in VðeÞ then Algorithm 5 returns a correct result within a complexity in OðlogðdÞn4ðnL þ nOÞUðdegaðV; eÞÞ2UðDÞÞ; in terms of operations in k, where d is an upper bound on the degrees of the elements of e; L denotesP the evaluation complexity of the straight-line program encoding e and t D :¼ i¼1 degðWiÞ:

Proof. The sum of the costs due to the calls to Difference isin ! Xt Xt0 4 O a 0 2 O logðdÞn ðnL þ n Þ Uðdeg ðWi0 ; eÞÞ UðdegðWiÞÞ i¼1 i0¼1 DOðlogðdÞn4ðnL þ nOÞUðdegaðV; eÞÞ2UðDÞÞ: ARTICLE IN PRESS

586 G. Lecerf / Journal of Complexity 19 (2003) 564–596

The sum of the costs of DaSplitFiber isin ! Xt0 4 O a 0 2 0 O logðdÞn ðnL þ n Þ deg ðWi0 ; eÞ UðdegðWi0 ÞÞ i0¼1 DOðlogðdÞn4ðnL þ nOÞ degaðV; eÞ2UðdegðVÞÞÞ: Last, note that degðVÞpD: &

4.3. Splittings

Let W be an equidimensional variety and f be a polynomial function given by a straight-line program of size at most L: We are interested in splitting W into Wr and Wi where Wr isthe union of the irreducible componentsof W that are not included in Vð f Þ and Wi is the union of the other components. In the next section we will see that Wr stands for the components that are regularly intersected by Vð f Þ and Wi irregularly.Asin[GLS01, Section 6.6] we can perform thiscomputation with almost all fibersof W: The method issummarized in Algorithm 6.

Proposition 8. According to the above notation, for almost all fibers F of W; Algorithm 6 works well within a complexity in: Oððn2 þ LÞUðdegðFÞÞÞ; where L denotes the evaluation complexity of the straight-line program encoding f. ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 587

5. Resolution algorithm

Putting together the previousalgorithmswe deduce the incremental stepof our solver.

5.1. Incremental solving

Let F be a set of isolated fibers representing V without redundancy, asdefined in Section 4: we denote by e their common annihilating system. Let f and g be polynomials encoded by a straight-line program of size L: We are interested in computing a set of isolated fibers F0 representing ðV-Vð f ÞÞ\VðgÞ without redundancy. Our method is summarized in Algorithm 7, it works well for almost all sets F representing V: Let usdescribehow it works.For any F in F we denote by F r the sub-fiber of F composed of the points which are not contained in Vð f Þ and F i for the other points(the exponent r stands for regular and i for irregular). Thisstepis achieved using Algorithm 6. Then for each F r we compute a fiber F 0 of the Zariski closure of ðW-Vð f ÞÞ\VðgÞ; where W denotesthe algebraic variety represented by F r: For thispurposewe call the function OneDimensionalIntersect of [GLS01, Section 6]: according the genericity of the fiberswe take 0 for the Liouville point. ARTICLE IN PRESS

588 G. Lecerf / Journal of Complexity 19 (2003) 564–596

At the end of the main loop over the elementsof F we obtain a set F0 containing all the F i and F 0 computed previously. We are in the frame of Section 4 and we call the function Minimize that produces a set of isolated fibers representing ðV-Vð f ÞÞ\VðgÞ:

a a Proposition 9. Let D1 :¼ deg ðV; eÞ and D2 :¼ deg ððV-Vð f ÞÞ\VðgÞ; e; f Þ: For almost all set of fibers F representing V without redundancy, and almost all choices of the matrices N involved in the subfunctions of Intersect, Algorithm 7 returns a correct answer within a complexity in

4 O 2 2 OðlogðdÞn ðnL þ n ÞUðdegð f Þ degðVÞÞðUðD1Þ þ UðD2Þ ÞÞ; in terms of operations in k, where d denotes the maximum of the degrees of the ele- ments of e; f and L the evaluation complexity of the straight-line program encoding e; f ; g:

Proof. We denote by W1; y; Wt the varietiesrepresented by the elementsof F and 0 0 0 by W1; y; Wt0 the onesof F : From Proposition 8 the costs of the function Split is not significant. The total cost due to LiftCurve isin

OðlogðdÞn4ðnL þ nOÞUðdegaðV; eÞÞ2Þ: From Lemma 16 of [GLS01] the total cost of the function OneDimensionalInter- sect isin OðnðL þ n2ÞUðdegðVÞÞUðdegð f Þ degðVÞÞÞ: P t0 0 Last, noticing that i¼1 degðWiÞpdegð f Þ degðVÞ; we deduce from Proposition 7 the cost of the minimization of F0:

4 O 2 OðlogðdÞn ðnL þ n ÞUðdegð f Þ degðVÞÞUðD2Þ Þ: &

5.2. Main function

We come back to the notation from the beginning of Section 1.1: we recall that we are given a polynomial system f1 ¼ ? ¼ fs ¼ 0; ga0 to solve. We let Vi :¼ Vðf1; y; fiÞ\VðgÞ; for i ¼ 0; y; s: By induction we assume that we have already computed a set of DA-irreducible lifting fibers F representing Vi without redundancy and sharing all f1; y; fi as annihilating systems for iX0: We want to compute such a representation for Viþ1: Concerning the initialization of the induction we must distinguish two cases: if V0 isempty (that is g ¼ 0) then we set %n F ¼fgand the algorithm stops; otherwise V0 is k : we take 0 asprimitive element and T as minimal polynomial. It is now straightforward to deduce the resolution algorithm from the previousfunction. Thisisdetailed in Algorithm 8. We obtain the following complexity result as a corollary of Proposition 9; Hence the proof of Theorem 1. ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 589

Corollary 1. According the above notation, for almost all choices of M, u, p and almost all matrices N involved in the subfunctions Algorithm 8 returns a correct answer within a complexity in Oðs logðdÞn4ðnL þ nOÞUðddaÞ3Þ; in terms of operations in k, where d is an upper bound on the degrees of the fi; L denotes a the evaluation complexity of the straight-line program encoding f1; y; fs; g and d :¼ a maxi¼1;y;s deg ðVi; f1; y; fiÞ;

Observe that because of the choice of the random matrix M in Algorithm 8 we could have removed all the choicesof the random matrices N in the previous algorithms. But the use of the matrices N isjustifiedin the next paragraphs.

5.3. Postprocessing

Let F denote a DA-irreducible lifting fiber of a r-equidimensional variety W: Following the notation of Section 2.3, F iscomposedof e; M; p; u; q; v: Asdescribed in [GLS01, Section 5] it is possible to compute another fiber F 0 from F with a different specialization point, or a different primitive element. It is also easy to ARTICLE IN PRESS

590 G. Lecerf / Journal of Complexity 19 (2003) 564–596 perform a change of variablesconcerning the free variablesonly or the dependent variables only. But in order to deal with positive dimensional varieties it is also necessary to be able to change the Noether position M: This task can be solved by meansof a judicioususeof the two fundamental functions LiftCurve and OneDimensionalIntersect. Before all let us simplify the Noether position. Simplifying the coordinates: Let usdivide the matrix M into four blocks: ! M1;1 M1;2 M ¼ ; M2;1 M2;2 such that M1;1 isa r  r matrix. We assume that M1;1 and M2;2 are invertible, which istrue for almostall matrices M: This hypothesis is not very restrictive: we can enforce all the Noether positions occurring in the resolution to have this property; Note that thisisalready the casein [GLS01]. We are looking for an invertible matrix R such that, written with the same block pattern we have: ! ! R1;1 0 Idr ? R :¼ and MR ¼ holds; R2;1 R2;2 0IdnÀr where Id represents identity matrices. This problem admits a unique solution R given by: 8 > À1 À1 <> R1;1 ¼ðM1;1 À M1;2M2;2 M2;1Þ ; R ¼ÀMÀ1M R ; > 2;1 2;2 2;1 1;1 : À1 R2;2 ¼ M2;2 : We build the fiber F 0 of W from F by changing the Noether position to MR; the 0 À1 0 specialization point to p ¼ R1;1p; the primitive element u ¼ u3N and the 0 À1 0 parametrization v ¼ R2;2v À R2;1p; then F isa DA-irreducible lifting fiber of W: Changing the Noether Position: According to the previous paragraph we assume that the Noether position given by M hasthe following form, with the sameblock pattern asabove: ! Idr ? : 0IdnÀr In order the change the Noether position it suffices to be able to perform the following change of coordinatesfor any fixed i; 1pipr: Xn Yi :¼ yi þ ajyj; ajAk for r þ 1pjpn; j¼rþ1

Yj :¼ yj for all jai:

Let Y :¼ðY1; yP; YnÞ and R be the matrix such that y ¼ RY: We denote by fy the n 3 À1 polynomial yi þ j¼rþ1 ajyj À pi and by fx the polynomial fy M : ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 591

0 r 0 0 a We construct the following point p in k : pi :¼ pi þ 1; pj :¼ pj; for j i: Then we call the function LiftCurve with F and p0 asargumentsin order to recover the curve C parametrized by t ¼ yi À pi: Then we call the function OneDimensionalIntersect with C; fx; 0 and 1 asarguments.If VðfxÞ intersects C regularly then we obtain a description of the following set of points as output:

W-Vðy1 À p1; y; yiÀ1 À piÀ1; fy; yiþ1 À piþ1; y; yr À prÞ: Rewriting thisvariety in termsof the new coordinates Y yields:

W-VðY1 À p1; y; Yr À prÞ; hence we deduce the following fiber F 0 differing from F by replacing the change of coordinatesby M3R: If the degree of F 0 equalsdeg ðWÞ then F 0 isa good candidate to be a DA-lifting fiber, what remainsto be checked. Since we know the generic trace of W; thistest can be achieved in a probabilistic way using Proposition 17 of [Lec02]. No more code isactually needed: one can re-use LiftCurve but the execution can be stopped just after NestedCoordinatesWithTrace. If thispiece of code runswithout raisingany division by zero error then this proves that the new fiber F 0 isa DA-lifting fiber. Performing thisprocessforall the valuesof i ranging from 1 to r; one can compute from F almost all fibers of W: The cost of this process is dominated by OðrÞ timesthe cost of LiftCurve (because the cost of the intersection is negligible). Recovering the Geometric Resolution: In case one would be tempted to lift the free variables and write down the geometric resolution lying over a lifting fiber using dense polynomial representations, we give a reasonable strategy. We can use the global lifting procedure in k½½y1 À p1; y; yr À prŠŠ with respect to the maximal ideal ðy1 À p1; y; yr À prÞ: The complexity of the multiplication of multivariate power series is addressed in [LS01] and is mainly linear in the size of the series (up to logarithmic factors). This yields an algorithm for recovering the geometric resolution mainly linear in the size of the output. More general algorithms are proposed in [Sch00,Sch01,Sch02].

5.4. Special case of the integers

Our geometric resolution algorithm works well over a field k of characteristic zero. If k isthe field Q of the rational numbersthen we pick up a random prime p and first solve the system modulo p: If p islucky then the algorithm computesa correct resolution of the system modulo p: The luckiness of p corresponds to the commutation of the computationsover Q and modulo p: Thisiswhy the output is correct except for a finite number of primes. Once the modular resolution is completed then each returned fiber hasa change of variables,a primitive element and a specialization point with entries in the range 0; y; p À 1: Before recovering fibers over Q it is important to find changes of variables, specialization points and primitive elements of small height. For this purpose we perform trials with small random integers. The height of the integers is increased after a certain number of failures. ARTICLE IN PRESS

592 G. Lecerf / Journal of Complexity 19 (2003) 564–596

From Section 5.3 we know how to change the Noether position and from [GLS01, Section 5] we know how to change the specialization point and the primitive element. Moreover as explained in Section 5.3 it is always possible to check whether the resulting fibers are still DA-lifting fibers or not. Once we have found a fiber of small height then the lifting of the integers is exactly the same as in [GLS01, Section 4.6] except that we must use the new GlobalNewton from Section 3 based on the deflation algorithm.

6. Examples

The algorithm presented in this paper has been implemented within the Magma computer algebra system. The package is called Kronecker [Lec99] and the current version is 0.166. The timings we give in this section concern a 1 GHz Pentium III based computer with 512 MB of internal memory and running Linux 2.4; We use Magma 2.9. More examplesare given in [Lec01]. The family of examples we have chosen to illustrate the behavior of our implementation comesfrom the following problem: Let k be a field and SðX; Y; ZÞ be a polynomial in k½X; Y; ZŠ such that Sð0; 0; 0Þ¼0: We introduce three infinite familiesof new symbols ðxiÞiAN; ðyiÞiAN; ðziÞiAN and the following formal power series in the parameter t: X X X i i i Xˆ :¼ xit ; Yˆ :¼ yit ; Zˆ :¼ zit : iX0 iX0 iX0 For any nonnegative integer s we address the problem of describing the set of power series Xˆ; Yˆ and Zˆ satisfying SðXˆ; Yˆ; ZˆÞAOðtsÞ: For a fixed value of s thisproblem can be turned into a polynomial system involving at most s equationsand 3 s variables. In the rest of the paper we chose S :¼ðX 2 þ Y 3 þ Z4ÞðX 2 þ Y 3 þ Z5Þ and k :¼ Z=4294967291Z; the polynomial systems we obtain for each s are simplified a bit using the following rules: * Each equation being a power of a variable isremoved and thisvariable isreplaced by zero in the remaining system. This rule is applied as many times as necessary to remove all these trivial equations. * We only consider as unknowns of the system obtained after applying the previous rule the variables that do appear in the system and we discard the others.

For instance let us build the system for s ¼ 11: first we compute the power series 11 expansion of P :¼ SðXˆ; Yˆ; ZˆÞ at precision Oðt Þ; then we let fi denote the coefficient of P of degree i; for i ¼ 0; y; 10: The polynomial system F ¼ff0; y; f10g we are to 4 solve can be simplified this way: since f4 ¼ x1 we discard f4 and replace x1 by 0 in F: 6 After this substitution f6 becomes y1; hence we remove f6 and set y1 ¼ 0: Last there are left three nonzero polynomials in the system, of respective degrees 6, 9 and 9. The number of effective unknowns in this system is 7. Using Kronecker we find that the solution set of this system is composed of one component of codimension 3 and ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 593 degree 18 which isnot multiple and one multiple component of codimension2 and degree 1. Thiscomputation requireslessthan5 sand about 3 MB of memory. Dimensions and degrees of the components solutions for values of s ranging from 11 to 14 are given in the following table. For each component we given a couple ðc; dÞ where c isthe codimensionand d the degree of the component. For multiple componentswe display the degree in bold font. The column n containsthe number of effective unknowns of the system. The column d providesthe sequence of the total degrees of the equations. The last two columns contain the total time and the memory consumption of the computation.

Concerning comparisons with other tools we would like to underline that no function strictly similar to our GeometricSolve of Algorithm 8 isavailable in Magma or in other computer algebra software. Comparison with straight Gro¨ bner basis functions is not fair but for information we mention that the graded reverse lexicographical bases computed with Magma require: 1:5 sand 2 MB for s ¼ 11; 71 sand 9 MB for s ¼ 12 and for s ¼ 13 we have stopped the computation after 1 h; 210 MB were in use. Primary and Prime decomposition functions available in Magma are not faster than Gro¨ bner bases on these examples.

7. Conclusion

In this paper we have presented a practical probabilistic algorithm to compute the equidimensional decomposition of an algebraic closed set. For the first time we have been able to state a precise upper bound complexity for this problem, with an explicit reasonable exponent. Although mechanisms that handle the decomposition in itself are quite classical, the use of the deflation algorithm as a generalization of Newton’s operator isvery new and validatesthe fiber encoding approach even for multiple components. Estimating the probability of success of this algorithm is subject to further work. Computing the prime decomposition from the equidimensional one seems to be an easy task in theory but is not at all in practice. The current distribution of Kronecker already containsexperimental functionsthat compute prime decompositionsover Z=pZ but recombinationsover Q are still in development.

Acknowledgments

I am very grateful to Allan Steel and all the Magma team for their kind support and constant efforts in improving performances. I thank Olivier Piltant for having suggested me the family of examples of Section 6. ARTICLE IN PRESS

594 G. Lecerf / Journal of Complexity 19 (2003) 564–596

References

[AHU74] A.V. Aho, J.E. Hopcroft, J.D. Ullman, The Design and Analysis of Computer Algorithms, Addison-Wesley, Reading, MA, 1974. [BP94] D. Bini, V. Pan, Polynomial and Matrix Computations, Progress in Theoretical Computer Science, Birkha¨ user, Basel, 1994. [BC95] W. Bosma, J. Cannon, Handbook of Magma Functions, School of Mathematics and Statistics, University of Sydney, Sydney, 1995. [BCM94] W. Bosma, J. Cannon, J. Matthews, Programming with algebraic structures: design of the Magma language, in: M. Giesbrecht (Ed.), Proceedings of ISSAC’94, ACM, New York, 1994. [BCP97] W. Bosma, J. Cannon, C. Playoust, The Magma algebra system I: the user language, J. Symbolic Comput. 24 (1997) 235–265. [BCS97] P. Bu¨ rgisser, M. Clausen, M.A. Shokrolahi, Algebraic Complexity Theory, Springer, Berlin, 1997. [CP96] J. Cannon, C. Playoust, Magma: A new computer algebra system, Euromath Bull. 2 (1) (1996) 113–144. [Cas01] D. Castro, Sobre la complejidad de la representacio´ n de variedadesalgebraicas,Ph.D. Thesis, Universidad de Cantabria, Departemento de Matema´ ticas, Estadı´ stica y Computa- cio´ n, Santander, Spain, July 2001. [CGH+02] D. Castro, M. Giusti, J. Heintz, G. Matera, L.M. Pardo, The hardness of polynomial , Found. Comput. Math. doi: 10.1007/S10208-002-0065-7. [CHMP01] D. Castro, K. Ha¨ gele, J.E. Morais, L.M. Pardo, Kronecker’s and Newton’s approaches to solving: a first comparison, J. Complexity 17 (1) (2001) 212–303. [Chi96] A.L. Chistov, Polynomial-time computation of the dimension of algebraic varieties in zero- characteristic, J. Symbolic Comput. 22 (1) (1996) 1–25. [Chi97] A.L. Chistov, Polynomial-time computation of the dimensions of components of algebraic varietiesin zero-characteristic,J. Pure Appl. Algebra 117–118 (1997) 145–175. [CG83] A.L. Chistov, D.Y. Grigoriev, Subexponential time solving systems of algebraic equations, LOMI preprint E-9-83, E-10-83, Steklov Institute, Leningrad, 1983. [CW90] D. Coppersmith, S. Winograd, Matrix multiplication via arithmetic progressions, J. Symbolic Comput. 9 (3) (1990) 251–280. [DST87] J. Davenport, Y. Siret, E. Tournier, Calcul formel. Syste` mes, algorithmes de manipulations alge´ briques, Masson, Paris, 1987. [EM99] M. Elkadi, B. Mourrain, A new algorithm for the geometric decomposition of a variety, in: Proceedingsof ISSAC’99, ACM, New York, 1999. [Ful84] W. Fulton, Intersection Theory, 2nd Edition, Ergebnisse der Mathematik, No. 3, Springer, Berlin, 1984. [GG99] J. von zur Gathen, J. Gerhard, Modern Computer Algebra, Cambridge University Press, Cambridge, 1999. [GH91] M. Giusti, J. Heintz, Algorithmes - disons rapides - pour la de´ composition d’une varie´ te´ alge´ brique en composantes irre´ ductibleset e ´ quidimensionelles, in: T. Mora, C. Traverso (Eds.), Proceedings of MEGA’90, Progress in Mathematics, Vol. 94, Birkha¨ user, Basel, 1991, pp. 169–194. [GH93] M. Giusti, J. Heintz, La de´ termination despointsisole ´ s, de la dimension d’une varie´ te´ alge´ brique peut se faire en temps polynomial, in: D. Eisenbud, L. Robbiano (Eds.), Computational Algebraic Geometry and Commutative Algebra, Symposia Matematica, Vol. XXXIV, Cambridge University Press, Cambridge, 1993, pp. 216–256. [GH01] M. Giusti, J. Heintz, Kronecker’s smart, little black-boxes, in: A. Iserles, R. DeVore (Eds.), Proceedingsof Foundationsof Computational Mathematics,London Mathematical Society Lecture Notes Series, Vol. 284, pp. 69–104, Oxford 1999, Cambridge University Press, 2001. ARTICLE IN PRESS

G. Lecerf / Journal of Complexity 19 (2003) 564–596 595

[GHH+97] M. Giusti, K. Ha¨ gele, J. Heintz, J.E. Morais, J.L. Montan˜ a, L.M. Pardo, Lower boundsfor Diophantine approximation, in: Proceedingsof MEGA’96, J. Pure Appl. Algebra 117, 118 (1997) 277–317. [GHL+00] M. Giusti, K. Ha¨ gele, G. Lecerf, J. Marchand, B. Salvy, Computing the dimension of a projective variety: the projective Noether Maple package, J. Symbolic Comput. 30 (3) (2000) 291–307. [GHM+98] M. Giusti, J. Heintz, J.E. Morais, J. Morgenstern, L.M. Pardo, Straight-line programs in geometric elimination theory, J. Pure Appl. Algebra 124 (1998) 101–146. [GHMP95] M. Giusti, J. Heintz, J.E. Morais, L.M. Pardo, When polynomial equation systems can be solved fast?, in: G. Cohen, M. Giusti, T. Mora (Eds.), Applied Algebra, Algebraic Algorithmsand Error Correcting Codes,ProceedingsAAECC-11, Lecture Notesin Computer Science, Vol. 948, Springer, Berlin, 1995, pp. 205–231. [GHMP97] M. Giusti, J. Heintz, J.E. Morais, L.M. Pardo, Le roˆ le desstructuresde donne ´ esdansles proble` mesd’e´ limination, C. R. Acad. Sci. Paris325 (1997) 1223–1228. [GKZ94] I.M. Gel’fand, M.M. Kapranov, A.V. Zelevinski, Discriminants, Resultants and Multi- dimensional Determinants, Birkha¨ user, Boston, 1994. [GLS01] M. Giusti, G. Lecerf, B. Salvy, A Gro¨ bner free alternative for polynomial system solving, J. Complexity 17 (1) (2001) 154–211. [HMPS00] K. Ha¨ gele, J.E. Morais, L.M. Pardo, M. Sombra, On the intrinsic complexity of the arithmetic Nullstellensatz, J. Pure Appl. Algebra 146 (2) (2000) 103–183. [Hei83] J. Heintz, Definability and fast quantifier elimination in algebraically closed fields, Theor. Comput. Sci. 24 (3) (1983) 239–277. [HMW01] J. Heintz, G. Matera, A. Waissbein, On the time-space complexity of geometric elimination procedures, Appl. Algebra Eng. Comm. Comput. 11 (4) (2001) 239–296. [JKSS02] G. Jeronimo, T. Krick, J. Sabia, M. Sombra, The computational complexity of the Chow form, Manuscript, March 2002. [JPS01] G. Jeronimo, S. Puddu, J. Sabia, Computing Chow forms and some applications, J. Algorithms41 (1) (2001) 52–68. [JS00] G. Jeronimo, J. Sabia, Probabilistic equidimensional decomposition, C. R. Acad. Sci. Paris 331 (6) (2000) 485–490. [JS02] G. Jeronimo, J. Sabia, Effective equidimensional decomposition of affine varieties, J. Pure Appl. Algebra 169 (2–3) (2002) 229–248. [Koi97] P. Koiran, Randomized and deterministic algorithms for the dimension of algebraic varieties. in: Proceedings of the 38th Annual IEEE Computer Society Conference on Foundationsof Computer Science (FOCS), ACM, New York, 1997. [KP96] T. Krick, L.M. Pardo, A computational method for Diophantine approximation, in: L. Gonza´ lez-Vega, T. Recio (Eds.), Algorithms in Algebraic Geometry and Applications, Proceedings of MEGA’94, Progress in Mathematics, Vol. 143, Birkha¨ user, Basel, 1996, pp. 193–254. [Lec99] G. Lecerf, Kronecker,aMagma package for polynomial system solving, from 1999, http://kronecker.medicis.polytechnique.fr. [Lec00] G. Lecerf, Computing an equidimensional decomposition of an algebraic variety by means of geometric resolutions, in: Proceedings of ISSAC’2000, ACM, New York, 2000, pp. 209–216. [Lec01] G. Lecerf, Une alternative aux me´ thodesde re ´ e´ criture pour la re´ solution des syste` mes alge´ briques, Ph.D. Thesis, E´ cole polytechnique, Palaiseau, France, 2001. [Lec02] G. Lecerf, Quadratic Newton iteration for systems with multiplicity, Found. Comput. Math. 2 (3) (2002) 247–293. [LS01] G. Lecerf, E´ . Schost, Fast multivariate power series multiplication in characteristic zero, SADIO Electron. J. Informatics Oper. Res., to appear. Manuscript available at http://www.math.uvsq.fr/~lecerf. [Mag] Magma, http://magma.maths.usyd.edu.au. ARTICLE IN PRESS

596 G. Lecerf / Journal of Complexity 19 (2003) 564–596

[Mat99] G. Matera, Probabilistic algorithms for geometric elimination, Appl. Algebra Eng. Comm. Comput. 9 (6) (1999) 463–520. [Mat86] H. Matsumura, Commutative ring theory, Cambridge University Press, Cambridge, 1986. [Mor97] J.E. Morais, Resolucio´ n eficaz de sistemas de ecuaciones polinomiales, Ph.D. Thesis, Universidad de Cantabria, Santander, Spain, 1997. [Mum95] D. Mumford, Algebraic Geometry I—Complex Projective Varieties, Springer, Berlin, 1995. [Par95] L.M. Pardo, How lower and upper complexity boundsmeet in elimination theory, in: G. Cohen, M. Giusti, T. Mora (Eds.), Applied Algebra, Algebraic Algorithms and Error Correcting Codes, Proceedings of AAECC-5, Lecture Notes in Computer Science, Vol. 948, Springer, Berlin, 1995, pp. 33–69. [PS78] F.P. Preparata, D.V. Sarwate, An improved parallel processor bound in fast matrix inversion, Inform. Process. Lett. 7 (3) (1978) 148–150. [Roj00] M. Rojas, Computing complex dimension faster and deterministically, Manuscript of City University of Hong Kong, 2000. [Sam67] P. Samuel, Me´ thodesd’alge ` bre abstraite en ge´ ome´ trie alge´ brique, 2nd Edition, Springer, Berlin, 1967. [Sch00] E´ . Schost, Sur la re´ solution des syste` mespolynomiaux a` parame` tres, Ph.D. Thesis, E´ cole polytechnique, Palaiseau, France, 2000. [Sch01] E´ . Schost, Computing parametric geometric resolutions, Appl. Algebra Eng. Comm. Comput. 13 (5) (2003) 349–393. [Sch02] E´ . Schost, Degree bounds and lifting techniques for triangular sets, in: T. Mora (Ed.), Proceedingsof the 2002 International Symposiumon Symbolic and Algebraic Computation, ACM, New York, 2002, pp. 235–238. [SV00] A.J. Sommese, J. Verschelde, Numerical homotopies to compute generic points on positive dimensional algebraic sets, J. Complexity 16 (3) (2000) 572–602. [SVW01a] A.J. Sommese, J. Verschelde, C.W. Wampler, Numerical decomposition of the solution sets of polynomial systems into irreducible components, SIAM J. Numer. Anal. 38 (6) (2001) 2022–2046. [SVW01b] A.J. Sommese, J. Verschelde, C.W. Wampler, Numerical irreducible decomposition using projection from points on the components, in: E.L. Green, S. Hosten, R.C. Laubenbacher, V.A. Powers(Eds.),Symbolic Computation: Solving Equationsin Algebra, Geometry, and Engineering, Contemporary Mathematics, Vol. 286, AMS, New York, 2001. [SVW01c] A.J. Sommese, J. Verschelde, C.W. Wampler, Using monodromy to decompose solution sets of polynomial systems into irreducible components, in: C. Ciliberto, F. Hirzebruch, R. Miranda, M. Teicher (Eds.), Application of Algebraic Geometry to Coding Theory, Physics, and Computation, Proceedings of NATO Conference 2001, Kluwer Academic Publishers, Dordrecht, 2001 http://www.math.uic.edu/~jan/. [SVW02] A.J. Sommese, J. Verschelde, C.W. Wampler, Symmetric functions applied to decomposing solution sets of polynomial systems, SIAM J. Numer. Anal. 40 (6) (2002) 2026–2046. [Stu94] B. Sturmfels, On the Newton polytope of the resultant, J. Algebraic Combin. 3 (1994) 207–236. [Vor99] N. Vorobjov, Complexity of computing the local dimension of semialgebraic set, J. Symbol. Comput. 27 (6) (1999) 565–579.