Fast Computation of the Roots of Polynomials Over the Ring of Power Series
Vincent Neiger, Johan Rosenkilde, Eric Schost

TL;DR
This paper presents an efficient algorithm for finding all roots of polynomials over power series rings, handling multiple roots and improving computational complexity compared to previous methods.
Contribution
It introduces a divide & conquer algorithm with optimal cost bounds, extending root-finding to multiple roots over power series rings.
Findings
Algorithm computes roots with cost proportional to input size
Handles multiple roots where Newton iteration fails
Improves complexity over previous quadratic algorithms
Abstract
We give an algorithm for computing all roots of polynomials over a univariate power series ring over an exact field . More precisely, given a precision , and a polynomial whose coefficients are power series in , the algorithm computes a representation of all power series such that . The algorithm works unconditionally, in particular also with multiple roots, where Newton iteration fails. Our main motivation comes from coding theory where instances of this problem arise and multiple roots must be handled. The cost bound for our algorithm matches the worst-case input and output size , up to logarithmic factors. This improves upon previous algorithms which were quadratic in at least one of and . Our algorithm is a refinement of a divide \& conquer algorithm by Alekhnovich (2005), where the cost of recursive steps…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Fast Computation of the Roots of Polynomials
Over the Ring of Power Series
Vincent Neiger
Technical University of DenmarkKgs. LyngbyDenmark
,
Johan Rosenkilde
Technical University of DenmarkKgs. LyngbyDenmark
and
Éric Schost
University of WaterlooWaterloo ONCanada
(2017)
Abstract.
We give an algorithm for computing all roots of polynomials over a univariate power series ring over an exact field . More precisely, given a precision , and a polynomial whose coefficients are power series in , the algorithm computes a representation of all power series such that . The algorithm works unconditionally, in particular also with multiple roots, where Newton iteration fails. Our main motivation comes from coding theory where instances of this problem arise and multiple roots must be handled.
The cost bound for our algorithm matches the worst-case input and output size , up to logarithmic factors. This improves upon previous algorithms which were quadratic in at least one of and . Our algorithm is a refinement of a divide & conquer algorithm by Alekhnovich (2005), where the cost of recursive steps is better controlled via the computation of a factor of which has a smaller degree while preserving the roots.
Polynomial root-finding algorithm; power series; list decoding.
††journalyear: 2017††copyright: acmlicensed††conference: ISSAC ’17; July 25-28, 2017; Kaiserslautern, Germany††price: 15.00††doi: 10.1145/3087604.3087642††isbn: 978-1-4503-5064-8/17/07
1. Introduction
In what follows, is an exact field, and denotes the set of polynomials in whose coefficients are power series in over .
Problem and main result
Given a polynomial in , we are interested in computing its power series roots to some precision, as defined below.
Definition 1.0.
Let and . A power series is called a root of to precision if ; the set of all such roots is denoted by .
Our main problem (Problem 1) asks, given and , to compute a finite representation of ; the fact that such a representation exists is explained below (Theorem 2.0). In all the paper, we count operations in at unit cost, and we use the soft-O notation to give asymptotic bounds with hidden polylogarithmic factors.
Problem 1.
Input:**
•
a precision ,
•
a polynomial known at precision .
Output:**
•
(finite) list of pairs such that
An algorithm solving this problem must involve finding roots of polynomials in . The existence, and complexity, of root-finding algorithms for univariate polynomials over depends on the nature of . In this paper, we assume that is such that we can find roots in of a degree polynomial in in time , for some function ; the underlying algorithm may be deterministic or randomized. For instance, if , we can take using either a Las Vegas algorithm (in which case the runtime can be more precisely stated as (von zur Gathen and Gerhard, 2013, Cor. 14.16)), or a deterministic one (with for instance a runtime , where we write , prime (Shoup, 1991)).
We now state our main result: we separate the cost of the root-finding part of the algorithm, which may be randomized, and the rest of the algorithm which is deterministic.
Theorem 1.0.
There is an algorithm which solves Problem 1 using deterministic operations in , together with an extra operations, where .
A cost in is essentially optimal for Problem 1. Indeed, if , for some power series such that is a unit for all , then the roots of to precision are all the power series of the form , for some . In this case, solving Problem 1 involves computing all , which amounts to elements in .
Previous work
When the discriminant of has -valuation zero, or equivalently, when all -roots of are simple (as in the example above), our problem admits an obvious solution: first, compute all -roots of in , say , for some , where . Then, apply Newton iteration to each of these roots to lift them to power series roots of precision ; to go from precision say to , Newton iteration replaces by
[TABLE]
where is the formal derivative of . The bottleneck of this approach is the evaluation of all and . Using an algorithm for fast multi-point evaluation in the ring of univariate polynomials over , these evaluations can both be done in operations in . Taking all steps into account, we obtain the roots modulo using operations in ; this is essentially optimal, as we pointed out above. In this case, the total time for root-finding is .
Thus, the non-trivial cases of Problem 1 arise when has multiple roots. In this case, leaving aside the cost of root-finding, which is handled in a non-uniform way in previous work, we are not aware of an algorithm with a cost similar to ours. The best cost bounds known to us are , obtained in (Alekhnovich, 2005) and with this cost estimate being showed in (Nielsen and Beelen, 2015), and , obtained in (Berthomieu et al., 2013).
When has multiple roots, a natural generalization of our problem consists in computing Puiseux series solutions of . It is then customary to consider a two-stage computation: first, compute sufficiently many terms of the power series / Puiseux series solutions in order to be able to separate the branches, then switch to another algorithm to compute many terms efficiently.
Most algorithms for the first stage compute the so-called singular parts of rational Puiseux expansions (Duval, 1989) of the solutions. They are inspired by what we will call the Newton-Puiseux algorithm, that is, Newton’s algorithmic proof that the field of Puiseux series is algebraically closed when is algebraically closed of characteristic zero (Newton, 1736; Walker, 1978). In the case of Puiseux series roots, one starts by reading off the leading exponent of a possible solution on the Newton polygon of the input equation . The algorithm then considers , where is the valuation at of . If are the -roots of , then these give the terms of the Puiseux series roots of . For each we then replace with , where is the valuation at of . This allows us to compute the terms of the solutions one by one. The best algorithms to date (Poteaux and Rybowicz, 2011, 2015) use an expected number of operations in , if and where is the valuation of the discriminant of . These algorithms are randomized of the Las Vegas type, since they rely on Las Vegas root-finding in .
In the second stage, given the singular parts of the solutions, it becomes for instance possible to apply Newton iteration, as in (Kung and Traub, 1978). If is actually in , one may alternatively derive from it a linear recurrence with polynomial coefficients satisfied by the coefficients of the solutions we are looking for; this allows us to compute them at precision using operations, that is, in time genuinely linear in (Chudnovsky and Chudnovsky, 1987, 1986) (keeping in mind that in both cases, we may need to know about terms of the solutions before being able to switch to the faster algorithm). We will discuss a similar observation in the context of our algorithm, in Section 4.
Using ideas akin to the Newton-Puiseux algorithm, Berthomieu, Lecerf, and Quintin gave in (Berthomieu et al., 2013) an algorithm that computes roots of polynomials in , for a wide class of local rings . In the particular case with , the expected runtime of their algorithm is operations in .
Let us finally mention algorithms for polynomial factorization over local fields. Using the Montes algorithm (Montes, 1999), it is proved in (Bauch et al., 2013) that one can compute a so-called OM-factorization of a degree polynomial in at precision using , where is the valuation of the discriminant of ; the relation to basic root sets, defined below, remains to be elucidated.
Sudan’s and Guruswami-Sudan’s algorithms for the list-decoding of Reed-Solomon codes (Sudan, 1997; Guruswami and Sudan, 1999) have inspired a large body of work, some of which is directly related to Problem 1. These algorithms operate in two stages: the first stage finds a polynomial in with some constraints; the second one finds its factors of the form , for in .
The Newton-Puiseux algorithm can easily be adapted to compute such factors; in this context, it becomes essentially what is known as the Roth-Ruckenstein algorithm (Roth and Ruckenstein, 2000); its cost is in , omitting the work for univariate root-finding.
In the context of Sudan’s and Guruswami-Sudan’s algorithms, we may actually be able to use Newton iteration directly, by exploiting the fact that we are looking for polynomial roots. Instead of computing power series solutions (that is, the Taylor expansions of these polynomial roots at the origin), one can as well start from another expansion point in ; if the discriminant of does not vanish at , Newton iteration applies. If is finite, one cannot exclude the possibility that all in are roots of ; if needed, one may then look for in an extension of of small degree. Augot and Pecquet showed in (Augot and Pecquet, 2000) that in the cases appearing in Sudan’s algorithm, there is always a suitable in .
However, for example for the Wu list decoding algorithm (Wu, 2008) or for the list-decoding of certain algebraic geometry codes (Nielsen and Beelen, 2015), one does seek truncated power series roots. In this case, one may use Alekhnovich’s algorithm (Alekhnovich, 2005, App.), which is a divide and conquer variant of the Roth-Ruckenstein algorithm. It solves Problem 1 using operations in plus calls to univariate root-finding; the refined analysis in (Nielsen and Beelen, 2015) gives the runtime .
Outline
We start by giving properties about the structure of the set of roots in Section 2. We will see in particular how can be described recursively as the finite union of set of roots at a lower precision for shifts of , that is, polynomials of the form . From this, we will be able to derive a divide-and-conquer algorithm which is essentially Alekhnovich’s.
The reason why the runtime of this algorithm is quadratic in is the growth of the (sum of the) degrees of these shifts. Having in mind to control this degree growth, we conclude Section 2 with the definition of so-called reduced root sets, for which we establish useful degree properties.
In Section 3, we detail a fast algorithm for the computation of affine factors, which are polynomials having the same roots as the shifts but which can be computed more efficiently thanks to the degree properties of our reduced root sets. Finally, in Section 4, we incorporate this into the divide and conquer approach, leading to our fast power series roots algorithm.
2. Structure of the set of roots
Recall the notation of Problem 1. In the following analysis, we consider knowing to arbitrary precision, i.e. . For convenience, we also define for any that . First, we introduce basic notation.
- •
denotes the valuation at , that is, is the greatest power of which divides , for any nonzero .
- •
For , we write for the univariate polynomial in obtained by replacing by [math] in .
- •
We denote by the ring of power series in over truncated at precision .
- •
To avoid confusion, stands for the degree of some polynomial in over , over , or over , whereas the degree of polynomials in is denoted using .
The next lemma follows from the above definitions, and shows that we can focus on the case .
Lemma 2.0.
Let be nonzero and let . If , then , where .
Now, we will focus on a compact way of representing root sets, and we will see that always admit such a representation even though it is usually an infinite set. Similar representations are also behind the correctness and the efficiency of the algorithms of Roth-Ruckenstein (Roth and Ruckenstein, 2000), of Alekhnovich (Alekhnovich, 2005, App.), and of Berthomieu-Lecerf-Quintin (Berthomieu et al., 2013, Sec. 2.2). To support the divide-and-conquer structure of our algorithm, we further describe how these representations compose.
Definition 2.0.
Let be nonzero and let . A basic root set of to precision is a finite set of pairs , each in , such that:
- •
for ,
- •
we have the identity
[TABLE]
For , we define the unique basic root set of to precision as being ; note that it satisfies both conditions above.
We remark that the first restriction on being a basic root set is key: for instance, has . But is not a basic root set because it does not satisfy the first property; rather a basic root set is given by expanding the first coefficient: .
At precision , one can easily build a basic root set of which has small cardinality:
Lemma 2.0.
Let be such that , and let be the roots of . Then, is a basic root set of to precision .
Proof.
Take in and write the Taylor expansion of as , for some . Since both terms in the sum have valuation at least , we obtain that is at least . Furthermore, we remark that
[TABLE]
where is the constant coefficient of . Thus, is the set of whose constant coefficient is in . ∎
Proposition 2.0.
Let be such that and let be in , with . Suppose that admits a basic root set to precision . Suppose furthermore that, for , admits a basic root set to precision , where . Then, a basic root set of to precision is given by
[TABLE]
Proof.
For , let . Then, for all , from the definition of basic root sets, we have
[TABLE]
This proves that the first property of Definition 2.0 holds.
For the second property, we prove both inclusions leading to the identity .
First, consider some ; since , is in , so we can write , for some in and in . Then, , and so . This implies that for some .
Now consider a power series for some . This means that , so that , and therefore is in . ∎
We now deduce, by induction on , that any admits a finite basic root set to precision for any . By Lemma 2.0 we can reduce to the case where and . The claim is readily seen to be true for (take ) and (Lemma 2.0). Suppose the claim holds for all , for some ; we can then apply this property to , obtaining a basic root set of to precision . We know that, with the notation of Proposition 2.0, holds for all , so in particular , and thus . Then, applying again the induction property to each of , the conclusion of Proposition 2.0 establishes our claim.
These results can be used to build basic root sets recursively, by either applying Lemma 2.0 iteratively or using Proposition 2.0 in a divide-and-conquer fashion with Lemma 2.0 applied at the leaves. As discussed in Section 1, this recursive approach is similar to the Newton-Puiseux algorithm. These iterative and divide and conquer solutions to Problem 1 are known in coding theory as the Roth-Ruckenstein algorithm (Roth and Ruckenstein, 2000) and the Alekhnovich algorithm (Alekhnovich, 2005, App.). Below, we describe the latter algorithm in detail (Algorithm 1), since our new algorithm runs along the same lines (Algorithm 4). We will not further discuss the correctness or complexity of Algorithm 1, but rather refer to (Alekhnovich, 2005, App.) or (Nielsen and Beelen, 2015, App. A).
The next step is to prove that there are special, small basic root sets, and that these also compose in a way similar to Proposition 2.0. In order to formulate this, we first introduce a generalization of root multiplicity to our setting.
Definition 2.0.
Let be such that is nonzero and for some with . For , we consider the polynomial of valuation zero
[TABLE]
Then, the root multiplicity of in is the root multiplicity of in .
Note that if is not a root of , the root multiplicity of is 0. Also, if , so that is in , and if , the root multiplicity of is simply the multiplicity of in .
Definition 2.0.
Let be such that and let be in . Suppose that is a basic root set of at precision . Then, we say that is a reduced root set, if the following holds:
- •
either ,
- •
or , and all the ’s are nonzero, and the following points are all satisfied, where for , we write , , and we write for the root multiplicity of in :
- (1)
for , 2. (2)
for , and 3. (3)
.
It follows from the restrictions (1) and (3) that . Mimicking the structure of the first half of the section, we now prove the existence of reduced root sets for and then give a composition property. The next lemma is inspired by (Alekhnovich, 2005, Lem. 1.1).
Lemma 2.0.
Let be such that . The basic root set of to precision defined in Lemma 2.0 is reduced.
Proof.
Let be the roots of , and, for , let , , and let be the root multiplicity of in .
The inequalities , for , and are clear. Consider now a fixed index ; it remains to prove that . There are and such that and . Then
[TABLE]
The right-hand side reveals the following:
- •
Any monomial in satisfies , and hence .
- •
contains the term , since this appears in and it cannot be cancelled by a term in since all monomials there have greater -degree than -degree.
These two points imply . ∎
The following theorem is exactly the statement of Proposition 2.0 except that “basic” has been replaced by “reduced”.
Theorem 2.0.
Let be such that and let be in , with . Suppose that admits a reduced root set to precision . For , suppose furthermore that admits a reduced root set to precision , where . Then a reduced root set of to precision is given by
[TABLE]
Proof.
By Proposition 2.0 it is clear that the specified set is a basic root set, and we should verify the additional restrictions of Definition 2.0. Introduce for each
[TABLE]
where and .
Consider first for some the case . Then and , and so the root multiplicity of in is which is positive by assumption. Also so which is at most by assumption. Finally, . We will collect the latter fact momentarily to prove the third item of the reduced root definition.
Consider next an where . In this case for all , and the root multiplicity of in equals the root multiplicity of in which is positive by assumption. The assumptions also ensure that , and .
Thus, the two first restrictions on being a reduced root set is satisfied for each element. All that remains is the third restriction: but using our previous observations, we have and this is at most by assumption. ∎
To solve Problem 1 we will compute a reduced root set using Lemma 2.0 and Theorem 2.0. Note that it follows that a reduced root set is essentially unique: apart from possible redundant elements among the , non-uniqueness would only be due to unnecessarily expanding a coefficient in a root , that is, replace that root by the roots . Of course this could only be an issue if is finite and if is very large. Our algorithm as well as previous ones are computing the “minimal” set of reduced roots. According to Theorem 2.0, the total number of field elements required to represent this minimal set cannot exceed .
3. Affine factors of the shifts
The appendix A of (Nielsen and Beelen, 2015) gives a careful complexity analysis of Algorithm 1, and proves that it runs in time , where . The main reason why the cost is quadratic in is that all the shifted polynomials can have large degree, namely up to . Thus, merely representing the ’s may use a number of field elements quadratic in .
Nonetheless, we are actually not interested in these shifts themselves, but only in their reduced root sets. The number of these roots is well controlled: the shifts have altogether a reduced root set of at most elements. Indeed, by definition, we know that is at most the multiplicity of the root , and the sum of these multiplicities is at most .
The difficulty we face now is that we want to efficiently compute reduced root sets of the shifts without fully computing these shifts. To achieve this, we compute for each shift a factor of it which has the same roots and whose degree is , without entirely computing itself. We design a fast algorithm for computing these factors, by using ideas from (Musser, 1975, Algo. Q), in which we also incorporate fast modular reduction techniques so as to carefully control the quantity of information we process concerning the shifts.
The next result formalizes the factorization we will rely on. It is a direct consequence of the Weierstrass preparation theorem for multivariate power series (Zariski and Samuel, 1960, VII.§1. Cor. 1 of Thm. 5).
Theorem 3.0.
Let be such that . Then, there exist unique such that , is monic and .
In the case at hand, one may as well derive existence and uniqueness of and (together with a slow algorithm to compute them) by writing their unknown coefficients as , with in and all ’s () of degree less than that of . Extracting coefficients of , we deduce that the relation defines the ’s and ’s uniquely.
In what follows, is called the affine factor of . Remark that if we start from in , we can still define its affine factor as a polynomial in , by reducing modulo the affine factor of an arbitrary lift of to (the construction above shows that the result is independent of the lift).
Our algorithm will compute the affine factors of the shifts at some prescribed precision in , having as input and the shifting elements . A factorization can be computed modulo any power of from the knowledge of by means of Hensel lifting (Musser, 1975, Algo. Q), doubling the precision at each iteration. However, the above-mentioned degree bounds indicate that neither the shifts nor the cofactors may be computed modulo in time quasi-linear in and : the key of our algorithm is to show how to compute the affine factors at precision directly from within the prescribed time bounds. (Hensel lifting factorization techniques were also used in (Berthomieu et al., 2013), but in a context without the degree constraints that prevent us from computing the shifts ). Hereafter, and denote the quotient and the remainder in the division of the polynomial by the monic polynomial .
The input of the algorithm is the polynomial known modulo , as output, we compute the affine factors of the shifts at respective precisions , together with the valuation ; if , we detect it and return . The initialization consists in computing the affine factors of the -constant polynomials . If these polynomials are known, this is straightforward: the affine factor of is itself divided by its leading coefficient, which is a nonzero constant from . It turns out that computing these polynomials is not an issue; remark that the sum of their degrees is at most . Explicitly, we first compute the remainders via fast modular reduction techniques; then, we can both retrieve the valuations (or, more precisely, ), and, when , the -constant terms of to carry out the initialization step (4 to 14 in Algorithm 3).
Before continuing to describe the algorithm, we detail one of its main building blocks (Algorithm 2): the fast computation of simultaneous shifted remainders via multiple modular reduction.
Proposition 3.0.
Algorithm 2* is correct and uses*
[TABLE]
operations in .
Proof.
Let . Since is monic, the remainder is well-defined, and with and . Then, we have
[TABLE]
which ensures , hence the correctness.
Concerning the cost bound, the polynomial is computed using at most multiplications in , where , and then is computed by fast shifting using operations in (von zur Gathen and Gerhard, 2013, Thm. 9.15). The conclusion follows, since fast remaindering can be used to compute all remainders simultaneously in operations in . Indeed, we start by computing the subproduct tree in operations (von zur Gathen and Gerhard, 2013, Lem. 10.4), which gives us in particular the product . Then, we compute the remainder , which can be done in operations in using fast division (von zur Gathen and Gerhard, 2013, Thm. 9.6). Finally, the sought are computed by going down the subproduct tree, which costs operations in (von zur Gathen and Gerhard, 2013, Cor. 10.17). ∎
Now, let us describe how we implement the Hensel lifting strategy to manage to compute the sought affine factors without fully computing the shifts. In addition to the affine factors, we will make use of partial information on the inverse of the cofactor: we compute this inverse modulo the affine factor. Let and assume that we have computed, at precision ,
- •
the affine factor of ,
- •
, where denotes the cofactor such that .
Note that is invertible as a polynomial of since by definition . Thus, our requirement is that the inverse of coincides with when working modulo .
Now, we want to find similar polynomials when we increase the precision to . The main point concerning efficiency is that we will be able to do this by only considering computations modulo the affine factors and their squares; remember that we control the sum of their degrees. In the algorithm, we increase for each the precision from to , which is taken as the minimum of and : in the latter case, this is the last iteration which affects , since it will be known at the wanted precision .
First, we use fast remaindering to get at precision in , simultaneously for all (see 21); this gives us at precision , and thus . Since is the affine factor of at precision , is divisible by .
We then look for such that is the affine factor of at precision ; to ensure that is still monic, we require that . Thus, we can determine by working modulo : having
[TABLE]
at precision , for some , implies that the identity
[TABLE]
holds modulo and at precision . Multiplying by on both sides yields
[TABLE]
Therefore, 23 and 25 correctly lift the affine factor of from precision to precision .
From now on, we work at precision , and, as in the pseudo-code, we denote by the affine factor obtained through the lifting step above (that is, ). Besides, let now denote the cofactor inverse at precision : , where is the cofactor such that . Our goal is to compute , without computing but only .
We remark that the remainder (as in 27) is such that ; is known at precision . Thus,
[TABLE]
and therefore can be obtained as
[TABLE]
This shows that 29 correctly computes at precision .
Proposition 3.0.
Algorithm 3* is correct and uses*
[TABLE]
operations in .
Proof.
The correctness follows from the above discussion. Concerning the cost bound, we will use the following degree properties. Since is monic, we have the degree bound for all and at any iteration of the loop; and since is always computed modulo , we also have .
The cost of the initialization (4 to 14) is dominated by the computation of shifted remainders at 5, which costs operations in according to Proposition 3.0. The same cost bound holds for each call to at 21 or 27, since we have and .
At both 23 and 29, the degrees of , , and are at most ; besides, we have and . Thus, the quotient and remainder computations use operations in according to (von zur Gathen and Gerhard, 2013, Thm. 9.6).
Finally, at 29 we are performing the inversion of the polynomial modulo ; it is invertible in since its -constant coefficient is a nonzero field element. As a consequence, this this inversion can be done in field operations using Newton iteration (von zur Gathen and Gerhard, 2013, Thm. 9.4), and altogether 29 costs operations in .
Summing these cost bounds over the iterations yields the announced total cost bound. ∎
4. Fast series roots algorithm
In this section, we describe our fast algorithm for solving Problem 1. As explained above, it follows the divide and conquer strategy of Algorithm 1, with the main modification being that we incorporate the fast computation of the affine factors of the shifts (Algorithm 3). This leads to a better efficiency by yielding more control on the degrees of the polynomials that are passed as arguments to the recursive calls. Besides, we also propagate in recursive calls the information of the multiplicities of the roots, which is then used as an input of Algorithm 3 to specify the list of degree upper bounds for the affine factors.
We start with a lemma which states that taking affine factors preserves reduced root sets.
Lemma 4.0.
Let be in , with , and let be its affine factor. Then, any reduced root set of at precision is a reduced root set of at precision .
Proof.
The claim follows from the factorization , with . Indeed, as a result, is a unit in for any in , hence for any ; similarly, for any , and have the same valuation, say , and and differ by a constant factor. In particular, if is a basic root set of , it is a basic root set of , and the multiplicities of in and are the same. This implies that if is in fact a reduced root set of , it remains so for . ∎
We continue with a procedure that operates on polynomials in , without applying any truncation with respect to : as such, this is not an algorithm over , as it defines objects that are power series in , but it is straightforward to prove that it outputs a reduced root set. Remark that this procedure uses affine factors at “full precision”, that is, in , so Algorithm 3 is not used yet.
Proposition 4.0.
Algorithm 4* is correct.*
Proof.
We prove this by induction on . By Lemma 2.0, the algorithm is correct for the induction base case . Take , and assume that the algorithm is correct for all . Then, we obtain a reduced root set from the first recursive call, so in particular the valuations are at least equal to . This shows that , so the second recursive call is made at a lower precision, and the procedure terminates.
By induction, in all cases, is a reduced root set of to precision : this is obvious when , and follows from Lemma 4.0 when . Theorem 2.0 implies that is a reduced root set of to precision . We verify that the integers are the associated multiplicities as we did in the proof of that theorem. ∎
Next, we describe a similar algorithm, where we maintain the input polynomial with degree less than in (when it is the case, we say that it is reduced modulo ). To differentiate this version from the previous one and facilitate proving the correctness, we add a superscript ∗ to the objects handled here when they differ from their counterpart in Algorithm 4. Remark that we do not claim that the output forms a reduced root set of , merely a basic root set; we also do not claim that the ’s in the output are the corresponding multiplicities.
Proposition 4.0.
Algorithm 5* is correct.*
Proof.
We claim that for and any and in such that , the outputs of and are the same. Before proving this claim, remark that it implies the correctness of Algorithm 5: we know that this output is a reduced, and thus basic, root set of to precision . Since and are equal modulo , one verifies easily that this output is thus a basic root set of to precision as well.
We prove the claim by induction on . If , the result is clear, as we compute the same thing on both sides.
For , since , the induction assumption shows that as computed in either or are the same.
The affine factors of the shifts of and differ, but they coincide at the precision we need. Indeed, the equality implies that for all , . In particular, if , these two polynomials have the same valuation , and , which implies that their affine factors are the same modulo . If , then vanishes modulo .
Remark that the assumption of Algorithm 3 is satisfied: for all , is the multiplicity of in ; the definition of a reduced root set then implies that , so that the same degree bounds holds for the affine factors of . As a result, for such that , Algorithm 3 returns , whereas if , it returns , where is the truncation modulo of the affine factor of . In the first case, the polynomials are the same in both algorithms; in the second case, this is also true, by induction assumption. Our claim follows. ∎
Proof of Theorem 1.0.
To conclude the proof of Theorem 1.0, it remains to estimate the cost of Algorithm 5. Let denote the cost of Algorithm 5 on input and of degree . If , then . Otherwise, the cost is given by the following recursion:
[TABLE]
where is the cost of and . The degrees of the polynomials , in Algorithm 5, and , in Algorithm 4, are the same, except for those cases where and is actually zero. By definition of a reduced root set, we have
[TABLE]
which thus implies , and . Note also that by the correctness of . Since is at least linear in , we then get . This gives the upper bound
[TABLE]
from which we deduce that . ∎
Finally, we point out an optimization, which is not necessary to establish our main result, but useful in practice: once the affine factor of a shift has degree , there is no need to continue the recursion (the affine factor being monic, we can just read off its root from its constant coefficient). This is the analogue of the situation described in the introduction, when we know enough terms of the solution to make it possible to apply Newton iteration without further branching.
Acknowledgements.
The research leading to these results has received funding from the People Programme (Marie Curie Actions) of the European Union’s Seventh Framework Programme (FP7/2007-2013) under REA grant agreement no. 609405 (COFUNDPostdocDTU).
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1(1)
- 2Alekhnovich (2005) M. Alekhnovich. 2005. Linear Diophantine equations over polynomials and soft decoding of Reed-Solomon codes. IEEE Transactions on Information Theory 51, 7 (July 2005), 2257–2265. DOI: http://dx.doi.org/10.1109/TIT.2005.850097 · doi ↗
- 3Augot and Pecquet (2000) D. Augot and L. Pecquet. 2000. A Hensel lifting to replace factorization in list-decoding of algebraic-geometric and Reed-Solomon codes. IEEE Transactions on Information Theory 46, 7 (2000), 2605–2614. http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=887868
- 4Bauch et al . (2013) J.-D. Bauch, E. Nart, and H. D. Stainsby. 2013. Complexity of OM factorizations of polynomials over local fields. LMS Journal of Computation and Mathematics 16 (2013), 139–171.
- 5Berthomieu et al . (2013) J. Berthomieu, G. Lecerf, and G. Quintin. 2013. Polynomial root finding over local rings and application to error correcting codes. Applicable Algebra in Engineering, Communication and Computing 24, 6 (July 2013), 413–443. DOI: http://dx.doi.org/10.1007/s 00200-013-0200-5 · doi ↗
- 6Chudnovsky and Chudnovsky (1986) D. V. Chudnovsky and G. V. Chudnovsky. 1986. On expansion of algebraic functions in power and Puiseux series, I. J. Complexity 2, 4 (1986), 271 – 294.
- 7Chudnovsky and Chudnovsky (1987) D. V. Chudnovsky and G. V. Chudnovsky. 1987. On expansion of algebraic functions in power and Puiseux series, II. J. Complexity 3, 1 (1987), 1 – 25.
- 8Duval (1989) D. Duval. 1989. Rational Puiseux expansions. Composit. Math. 70, 2 (1989), 119–154.
