Abstract
This paper gives the first algorithm for finding a set of natural \(\epsilon \)-clusters of complex zeros of a regular triangular system of polynomials within a given polybox in \({{\mathbb {C}}}^n\), for any given \(\epsilon >0\). Our algorithm is based on a recent near-optimal algorithm of Becker et al. (Proceedings of the ACM on international symposium on symbolic and algebraic computation, 2016) for clustering the complex roots of a univariate polynomial where the coefficients are represented by number oracles. Our algorithm is based on recursive subdivision. It is local, numeric, certified and handles solutions with multiplicity. Our implementation is compared to with well-known homotopy solvers on various triangular systems. Our solver always gives correct answers, is often faster than the homotopy solvers that often give correct answers, and sometimes faster than the ones that give sometimes correct results.
Similar content being viewed by others
Notes
A multiset S is a pair \((\underline{S},\mu )\) where \(\underline{S}\) is an ordinary set called the underlying set and \(\mu :\underline{S}\rightarrow {\mathbb {N}}\) assigns a positive integer \(\mu (x)\) to each \(x\in \underline{S}\). Call \(\mu (x)\) the multiplicity of x in S, and \(\mu (S){\mathrel {\,{:}{=}\,}}\sum _{x\in \underline{S}}\mu (x)\) the total multiplicity of S. Also, let |S| denote the cardinality of \(\underline{S}\). If \(|S|=1\), then S is called a singleton. We can form the union \(S\cup S'\) of two multisets with underlying set \(\underline{S}\cup \underline{S'}\), and the multiplicities add up as expected.
In general, \({\varvec{v}}_i\ne v_i\) since \({\varvec{v}}\) and \(v_i\) are independent variables. So our bold font variables \({\varvec{v}}\) do not entail the existence of non-bold font counterparts such as \(v_i\).
The two failure modes may be traced to our soft comparison of real numbers x : y (see [17, 27]). It is reduced to the interval comparison \((x)_L:(y)_L\) for increasing L. If we can conclude \(x>y\) or \(x<y\), it is a success, else it is a failure. There are two failure modes: if we can conclude \(\textstyle {\frac{1}{2}}x<y< 2x\), this is a \((-1)\)-failure (it is a potential “zero problem”). Otherwise it is a \((-2)\)-failure (we repeat the interval test with larger L).
Other major homotopy solvers are NAG4M2 (for Macaulay2), PHCpack and HOM4PS-3. Bertini2 is still in development.
References
Aubry, P., Lazard, D., Maza, M.M.: On the theories of triangular sets. J. Symb. Comput. 28(1), 105–124 (1999)
Bates, D.J., Hauenstein, J.D., Sommese, A.J., Wampler, C.W.: Bertini: Software for numerical algebraic geometry. Available at bertini.nd.edu with permanent https://doi.org/10.7274/R0H41PB5
Batra, P.: Globally convergent, iterative path-following for algebraic equations. Math. Comput. Sci. 4(4), 507–537 (2010)
Becker, R., Sagraloff, M., Sharma, V., Xu, J., Yap, C.: Complexity analysis of root clustering for a complex polynomial. In: Proceedings of the ACM on International Symposium on Symbolic and Algebraic Computation. pp. 71–78. ISSAC ’16, ACM, New York, NY, USA (2016)
Becker, R., Sagraloff, M., Sharma, V., Yap, C.: A near-optimal subdivision algorithm for complex root isolation based on Pellet test and Newton iteration. J. Symb. Comput. 86, 51–96 (2018)
Beltrán, C., Leykin, A.: Certified numerical homotopy tracking. Exp. Math. 21(1), 69–83 (2012)
Boulier, F., Chen, C., Lemaire, F., Moreno Maza, M.: Real root isolation of regular chains. In: Feng, R., Lee, W.S., Sato, Y. (eds.) Computer Mathematics, pp. 33–48. Springer, Berlin (2014)
Cheng, J.S., Gao, X.S., Yap, C.K.: Complete numerical isolation of real roots in zero-dimensional triangular systems. J. Symb. Comput. 44(7), 768–785 (2009)
Collins, G.E., Johnson, J.R., Krandick, W.: Interval arithmetic in cylindrical algebraic decomposition. J. Symb. Comput. 34(2), 145–157 (2002)
Dahan, X., Maza, M.M., Schost, E., Wu, W., Xie, Y.: Lifting techniques for triangular decompositions. In: Proceedings of the 2005 International Symposium on Symbolic and Algebraic Computation, pp. 108–115. ISSAC ’05, ACM, New York, NY, USA (2005)
Darboux, G.: Sur les développements en série des fonctions d’une seule variable. Journal de mathématiques pures et appliquées (Liouville Journal) 3(II), 291–312 (1876)
Dayton, B.H., Zeng, Z.: Computing the multiplicity structure in solving polynomial systems. In: Proceedings of the 2005 International Symposium on Symbolic and Algebraic Computation, pp. 116–123. ACM (2005)
Dickenstein, A., Emiris, I. (eds.): Solving Polynomial Equations: Foundations, Algorithms, and Applications. Springer, Berlin (2005)
Eigenwillig, A., Kettner, L., Krandick, W., Mehlhorn, K., Schmitt, S., Wolpert, N.: A descartes algorithm for polynomials with bit-stream coefficients. In: Ganzha, V., Mayr, E., Vorozhtsov, E. (eds.) CASC, LNCS, vol. 3718, pp. 138–149. Springer, Berlin (2005)
Giusti, M., Lecerf, G., Salvy, B., Yakoubsohn, J.C.: On location and approximation of clusters of zeros: case of embedding dimension one. Found. Comput. Math. 7(1), 1–58 (2007)
Huber, B., Sturmfels, B.: A polyhedral method for solving sparse polynomial systems. Math. Comput. 64(212), 1541–1555 (1995)
Imbach, R., Pan, V.Y., Yap, C.: Implementation of a near-optimal complex root clustering algorithm. In: Davenport, J.H., Kauers, M., Labahn, G., Urban, J. (eds.) Mathematical Software—ICMS 2018, pp. 235–244. Springer, Cham (2018)
Johansson, F.: Arb: efficient arbitrary-precision midpoint-radius interval arithmetic. IEEE Trans. Comput. 66, 1281–1292 (2017)
Kobel, A., Rouillier, F., Sagraloff, M.: Computing real roots of real polynomials ... and now for real! In: Proceedings of the ACM on International Symposium on Symbolic and Algebraic Computation, pp. 303–310. ISSAC ’16, ACM, New York, NY, USA (2016)
Li, J., Cheng, J., Tsigaridas, E.: Local generic position for root isolation of zero-dimensional triangular polynomial systems. In: Koepf, W., Vorozhtsov, E. (eds.) CASC 2012—14th International Workshop on Computer Algebra in Scientific Computing. Lecture Notes in Computer Science, vol. 7442, pp. 186–197. Springer, Maribor (2012)
Mignotte, M.: On the distance between the roots of a polynomial. Appl. Algebra Eng. Commun. Comput. 6(6), 327–332 (1995)
Moore, R.E., Kearfott, R.B., Cloud, M.J.: Introduction to Interval Analysis. SIAM, Philadelphia (2009)
Niang Diatta, D., Diatta, S., Rouillier, F., Roy, M.F., Sagraloff, M.: Bounds for polynomials on algebraic numbers and application to curve topology. arXiv e-prints arXiv:1807.10622 (Jul 2018)
Strzebonski, A., Tsigaridas, E.: Univariate real root isolation in an extension field and applications. J. Symb. Comput. 92, 31–51 (2019)
Wampler, I.C.W., et al.: The Numerical Solution of Systems of Polynomials Arising in Engineering and Science. World Scientific, Singapore (2005)
Xu, J., Burr, M., Yap, C.: An approach for certifying homotopy continuation paths: Univariate case. In: Proceedings of the 2018 ACM International Symposium on Symbolic and Algebraic Computation, pp. 399–406. ISSAC ’18, ACM, New York, NY, USA (2018)
Yap, C., Sagraloff, M., Sharma, V.: Analytic root clustering: a complete algorithm using soft zero tests. In: The Nature of Computation. Logic, Algorithms, Applications. LNCS, vol. 7921, pp. 434–444. Springer, Berlin (2013)
Zhang, Z., Fang, T., Xia, B.: Real solution isolation with multiplicity of zero-dimensional triangular systems. Sci. China Inf. Sci. 54(1), 60–69 (2011)
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rémi’s work is supported by the European Union’s Horizon 2020 research and innovation programme No. 676541, NSF Grants # CCF-1563942, # CCF-1564132 and # CCF-1708884. Chee’s work is supported by NSF Grants # CCF-1423228 and # CCF-1564132.
Appendix: Error Analysis
Appendix: Error Analysis
This Appendix contains all the proofs for our error analysis. Section 3 is an excerpt.
Given \(f,{\widetilde{f}}\in {{\mathbb {C}}}[{\varvec{z}}]\) and \({\varvec{b}}, \widetilde{{\varvec{b}}}\in {{\mathbb {C}}}^n\), our basic goal is to bound the evaluation error
in terms of \(\delta _f {\mathrel {\,{:}{=}\,}}\Vert f-{\widetilde{f}}\Vert \) and \(\delta _{\varvec{b}}{\mathrel {\,{:}{=}\,}}\Vert {\varvec{b}}-\widetilde{{\varvec{b}}}\Vert \). This will be done by induction on n. Our analysis aims not just to produce some error bound, but to express this error in terms that are easily understood, and which reveals the underlying inductive structure. Towards this end, we introduce the following \(\beta \) -bound function: if d is a positive integer and \(b\in {{\mathbb {C}}}\),
A simple application of this \(\beta \)-bound is:
Lemma 8
Let \(b\in {{\mathbb {C}}}\) and \(f\in {{\mathbb {C}}}[z]\). If d is the degree of f, then
Note that \(\beta (d,b)\le \max \left\{ d+1, \frac{|b|^{d+1}-1}{|b|-1} \right\} \).
We first treat the case \(n=1\). It will serve as the base for the inductive proof. Its proof requires a complex version of the Mean Value Theorem. Since this result is not well-known, we provide a statement and proof.
Theorem 3
(Complex mean value theorem) If \(f:{{\mathbb {C}}}\rightarrow {{\mathbb {C}}}\) is holomorphic, then for any \(a, b\in {{\mathbb {C}}}\),
for some \(\xi \) in the line segment [a, b] and some \(\omega \in {{\mathbb {C}}}\) with \(|\omega |\le 1\).
Proof
This is a simple application of a similarly little known theorem of Darboux [11] which gives a finite Taylor expansion of f; see Bünger’s formulation and proof in [3, Appendix]. For any \(k\ge 1\), the theorem says
for some \(\xi \) in the line segment [a, b] and \(\omega \in {{\mathbb {C}}}\) with \(|\omega |\le 1\). Choosing \(k=1\), \(f(b)=f(a)+\omega (b-a)f'(\xi )\) or \(f(b)-f(a)=\omega (b-a)f'(\xi )\). \(\square \)
Corollary 9
(Complex mean value inequality) For all \(a,b\in {{\mathbb {C}}}\), there is some \(\xi \in [a,b]\) such that
Lemma 10
(Case \(n=1\)) Let \(f,{\widetilde{f}}\in {{\mathbb {C}}}[z]\), \(b,\widetilde{b}\in {{\mathbb {C}}}\), and \({\varvec{d}}({\widetilde{f}})\le {\varvec{d}}(f) \le d\). If \({\widetilde{f}}= f{\pm }\delta _f\) and \(\widetilde{b}=b{\pm } \delta _b\), then:
-
(i)
\(|f(b)-f(\widetilde{b})|\) \(\le \) \(\delta _b\cdot \Vert f'\Vert \cdot \beta (d,|b|+\delta _b)\) where \(f'\) is the differentiation of f.
-
(ii)
\(|f(\widetilde{b})-{\widetilde{f}}(\widetilde{b})|\) \(\le \) \(\delta _f \cdot \beta (d,|b|+\delta _b)\)
-
(iii)
\(|f(b)-{\widetilde{f}}(\widetilde{b})|\) \(\le \) \(\Big [ \delta _f + \delta _b \cdot \Vert f'\Vert \Big ]\cdot \beta (d,|b|+\delta _b).\)
Proof
-
(i)
By the complex mean value inequality (Corollary 9):
$$\begin{aligned} | f(b) -f(\widetilde{b}) |\le & {} |b -\widetilde{b}| \cdot |f'(b{\pm }\delta _b)| \\\le & {} \delta _b \cdot \sum _{i=1}^{d} \left| i f_i (|b|+\delta _b)^{i-1} \right| \\\le & {} \delta _b \cdot \Vert f'\Vert \sum _{i=0}^{d-1} \left| (|b|+\delta _b)^i\right| . \end{aligned}$$ -
(ii)
Also
$$\begin{aligned} | f(\widetilde{b}) -{\widetilde{f}}(\widetilde{b}) |= & {} \Big |\sum _{i=0}^d (f_i-{\widetilde{f}}_i)\widetilde{b}^i\Big | \\\le & {} \delta _f\cdot \sum _{i=0}^d \Big |\widetilde{b}^i\Big | \\\le & {} \delta _f\cdot \beta (d,|b|+\delta _b). \end{aligned}$$ -
(iii)
This follows from the triangular inequality
$$\begin{aligned} | f(b) - {\widetilde{f}}(\widetilde{b}) | \le | f(b) -f(\widetilde{b}) | + |f(\widetilde{b}) - {\widetilde{f}}(\widetilde{b})|. \end{aligned}$$and the bounds in parts (i) and (ii).
\(\square \)
The appearance of \(\Vert f'\Vert \) in the above bound may be replaced by \(d\Vert f\Vert \). Below, we develop similar bounds on partial derivatives in the multivariate case. For a general \(n>1\), we need to generalize the notations:
satisfying \(\widetilde{{\varvec{b}}}={\varvec{b}}{\pm } \varvec{\delta }{\varvec{b}}\) (i.e., \(\widetilde{{\varvec{b}}}_i={\varvec{b}}_i {\pm } \varvec{\delta }{\varvec{b}}_i\) for each i). Let \({\varvec{d}}= {\varvec{d}}(f)\) (i.e., \({\varvec{d}}_i = \mathop {deg}_{{\varvec{z}}_i}(f)\) for each i). The support of f is \(\mathop {Supp}(f)\subseteq {{\mathbb {N}}}^n\) where \(f = \sum _{{\varvec{\alpha }}\in \mathop {Supp}(f)} c_{\varvec{\alpha }}{\varvec{z}}^{\varvec{\alpha }}\) where \(c_{\varvec{\alpha }}\in {{\mathbb {C}}}\setminus \left\{ 0 \right\} \). Here, \({\varvec{z}}^{\varvec{\alpha }}{\mathrel {\,{:}{=}\,}}\prod _{i=1}^n {\varvec{z}}_i^{{\varvec{\alpha }}_i}\). We assume that \(\mathop {Supp}({\widetilde{f}})\subseteq \mathop {Supp}(f)\).
Our induction variable is \(k=1,\ldots ,n\). For \({\varvec{\alpha }}\in {{\mathbb {N}}}^n\), let \(\pi _k({\varvec{\alpha }}){\mathrel {\,{:}{=}\,}}(0,\ldots ,0,{\varvec{\alpha }}_{k+1},\ldots ,{\varvec{\alpha }}_n)\). E.g., if \(k=n\) then \(\pi _k({\varvec{\alpha }})=\varvec{0}\). Thus \({\varvec{\alpha }}-\pi _k({\varvec{\alpha }}) = ({\varvec{\alpha }}_1,\ldots ,{\varvec{\alpha }}_k,0,\ldots ,0)\). Next define \(\mathop {Supp}_k(f){\mathrel {\,{:}{=}\,}}\left\{ \pi _k({\varvec{\alpha }}): {\varvec{\alpha }}\in \mathop {Supp}(f) \right\} \). With this notation, we can write
where each \(f_{\varvec{\alpha }}\in {{\mathbb {C}}}[{\varvec{z}}_{(k)}]\). E.g., if \(k=n\) then \(\mathop {Supp}_k(f)=\left\{ \varvec{0} \right\} \) and so \(f_{\varvec{0}}=f\).
Running Example Consider
where \({\varvec{z}}=(x,y,z)\). Then \(\mathop {Supp}(f)=\left\{ 110, 321, 021, 203, 023 \right\} \). We can represent f using the support \(\mathop {Supp}_1(f)=\left\{ 010, 021, 003, 023 \right\} \) as follows: \( f = f_{010}\cdot y+f_{021}\cdot y^2z + f_{003}\cdot z^3 f_{023}\cdot y^2z^3 \) where \(f_{010}=x\), \(f_{021}=x^3-1\), \(f_{003}=x^2\), \(f_{023}=-1\). Alternatively, using the support \(\mathop {Supp}_2(f)=\left\{ 000, 001, 003 \right\} \), we can write \( f = f_{000}+f_{001}\cdot z + f_{003}\cdot z^3 \) where \(f_{000}=xy\), \(f_{001}=(x^3-1)y^2\), \(f_{003}=(x^2-y^2)\).
Using (8), the partial specialization \(f({\varvec{b}}_{(k)})\in {{\mathbb {C}}}[z_{k+1},\ldots ,z_n]\) may be written
It follows that
The k-th partial derivative is \(\partial _{k} f {\mathrel {\,{:}{=}\,}}\frac{\partial f}{\partial z_k} = \sum _{{\varvec{\alpha }}\in \mathop {Supp}_k(f)} (\partial _{k}f_{\varvec{\alpha }}) {\varvec{z}}^{\varvec{\alpha }}.\) Upon evaluation at \({\varvec{b}}_{(k)}\), its norm is given by
Using our running example (8), let \(k=2\). Then \(f=f_{000}+f_{001}\cdot z + f_{003}\cdot z^3\) with \(f_{001}=xy\), \(f_{001}=(x^3-1)y^2\), \(f_{003}=(x^2-y^2)\). Thus \(\partial _{2} f = x + (x^3-1)2y\cdot z -2y\cdot z^3\). If \({\varvec{b}}_{(2)}=(-1,3)\), then \(\Vert f({\varvec{b}}_{(2)})\Vert =\max \left\{ 3, 18, 8 \right\} =18\) and \(\Vert \partial _{2} f({\varvec{b}}_{(2)})\Vert =\max \left\{ 1, 12, 6 \right\} =12\).
We are ready for the generalization of Lemma 10.
Assume that we are given \(f,{\widetilde{f}}\in {{\mathbb {C}}}[{\varvec{z}}]={{\mathbb {C}}}[{\varvec{z}}_{(n)}]\) and \({\varvec{b}},\widetilde{{\varvec{b}}}\in {{\mathbb {C}}}\). Also the degree sequences satisfies \({\varvec{d}}({\widetilde{f}})\le {\varvec{d}}(f)\), that is the inequality holds componentwise. Then we may define these quantities for \(k=1,\ldots ,n\):
Note that \(\delta _k\) is a operator that must attach to some function f or vector \({\varvec{b}}\) to denote the “kth perturbation” of f or \({\varvec{b}}\). We may restate Lemma 10(iii) using the new notations:
Corollary 11
For a univariate f,
We now address the case of multivariate f:
Lemma 12
(=Lemma 5 in Text) For \(n\ge 1\) and each \(k=1,\ldots ,n\):
-
(i)
\(\Vert f({\varvec{b}}_{(k)})-f({\varvec{b}}_{(k-1)})(\widetilde{{\varvec{b}}}_k) \Vert \) \(\le \) \(\delta _k {\varvec{b}}\cdot \Vert \partial _{k}f({\varvec{b}}_{(k-1)})\Vert \cdot \widetilde{\varvec{\beta }}_k\).
-
(ii)
\(\Vert f({\varvec{b}}_{(k-1)})(\widetilde{{\varvec{b}}}_k)-{\widetilde{f}}(\widetilde{{\varvec{b}}}_{(k)})\Vert \) \(\le \) \(\delta _{k-1} f \cdot \widetilde{\varvec{\beta }}_k\).
-
(iii)
\(\delta _k f\) \(\le \) \(\Big [ \delta _k {\varvec{b}}\cdot \Vert \partial _{k}f({\varvec{b}}_{(k-1)})\Vert + \delta _{k-1} f \Big ]\cdot \widetilde{\varvec{\beta }}_k\).
Proof
We note that (iii) amounts to adding the inequalities of (i) and (ii): specifically, \(\delta _k f \le \Vert f({\varvec{b}}_{(k)})-f({\varvec{b}}_{(k-1)})(\widetilde{{\varvec{b}}}_k) \Vert + \Vert f({\varvec{b}}_{(k-1)})(\widetilde{{\varvec{b}}}_k)-{\widetilde{f}}(\widetilde{{\varvec{b}}}_{(k)})\Vert \). Thus we only have to verify (i) and (ii). This will be shown by induction on k.
Suppose \(k=1\). This will be an application of Lemma 10(i) and (ii). We use the fact that \(f = \sum _{{\varvec{\alpha }}\in \mathop {Supp}_1(f)} f_{\varvec{\alpha }}{\varvec{z}}^{\varvec{\alpha }}\), and \(f({\varvec{b}}_{(k-1)})=f({\varvec{b}}_{(0)})=f\). Then (i) becomes
Similarly, (ii) follows from
Suppose \(k>1\). We now prove (i). The left hand side (LHS) \(\Vert f({\varvec{b}}_{(k)})-f({\varvec{b}}_{(k-1)})(\widetilde{{\varvec{b}}}_k) \Vert \) is the maximum of
where \({\varvec{\alpha }}\) ranges over \(\mathop {Supp}_k(f)\). We can rewrite (A) in the form \(|f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})({\varvec{b}}_k) -f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})(\widetilde{{\varvec{b}}}_k)|\). Applying Lemma 10(i), we can upper bound (A) by “\(\delta _b\cdot \Vert f'\Vert \cdot \beta (d,|b|+\delta _b)\)” where “\(\delta _b\)” here is \(|{\varvec{b}}_k-\widetilde{{\varvec{b}}}_k|=\delta _k\), “\(\Vert f'\Vert \)” is \(\Vert \partial _{k}f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})\Vert \) and “\(\beta (d,|b|+\delta _b)\)” is \({\varvec{\beta }}_k\). This establishes (i). Finally (ii) is proved by a similar invocation of Lemma 10(ii). \(\square \)
We now have a recursive bound \(\Vert \delta _n f\Vert \). But we need to convert the bound to only depend on the data \(\Vert {\varvec{b}}\Vert , \Vert f\Vert , \delta _k{\varvec{b}}\). In particular, we remove any occurrences of \(\partial _{k}f_{\varvec{\alpha }}\) with the help of the next lemma:
Lemma 13
(= Lemma 6 in Text) For \(k=1,\ldots ,n\):
-
(i)
\(\Vert f({\varvec{b}}_{(k)})\Vert \le \Vert f\Vert \cdot \prod _{i=1}^k {\varvec{\beta }}_i\)
-
(ii)
For \({\varvec{\alpha }}\in \mathop {Supp}_k(f)\),
$$\begin{aligned} \Big \Vert \partial _{k}f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})\Big \Vert \le {\varvec{d}}_k\cdot \Vert f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})\Vert . \end{aligned}$$ -
(iii)
\(\Vert \partial _{k}f({\varvec{b}}_{(k-1)})\Vert \le {\varvec{d}}_k \cdot \Vert f\Vert \cdot \prod _{i=1}^{k-1} {\varvec{\beta }}_i\)
Proof
-
(i)
The LHS of the inequality is equal to the maximum of \(|f_{\varvec{\alpha }}({\varvec{b}}_{(k)})|\) where \({\varvec{\alpha }}\in \mathop {Supp}_k(f)\). First consider \(k=1\). In this case, \(f_{\varvec{\alpha }}\) is a univariate polynomial in \({\varvec{z}}_1\) of degree at most \({\varvec{d}}_1\), say \(f_{\varvec{\alpha }}({\varvec{z}}_1)=\sum _{i=0}^{{\varvec{d}}_1}c_i {\varvec{z}}_1^i\) where c is a coefficient of f. By Lemma 8,
$$\begin{aligned} |f_{\varvec{\alpha }}({\varvec{b}}_1)| \le \Vert f_{\varvec{\alpha }}\Vert {\varvec{\beta }}_1 \le \Vert f\Vert {\varvec{\beta }}_1, \end{aligned}$$proving the result for \(k=1\). For \(k>1\), each \(f_{\varvec{\alpha }}\) is a polynomial in \({\varvec{z}}_{(k)}\), and we can write \(f_{\varvec{\alpha }}({\varvec{b}}_{(k)})\) as \(f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})({\varvec{b}}_k)\). By induction, the polynomial \(f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})({\varvec{z}}_k)\) has norm at most \(\Vert f\Vert \cdot \prod _{i=1}^{k-1}{\varvec{\beta }}_i\). Moreover, its degree is at most \({\varvec{d}}_k\). So evaluating it at \({\varvec{b}}_k\) gives a value of size at most \(\Vert f\Vert \cdot \prod _{i=1}^{k}{\varvec{\beta }}_i\).
-
(ii)
Write \(f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)}) = \sum _{i=0}^{{\varvec{d}}_k} c_i {\varvec{z}}_k^i\) where \(c_i\in {{\mathbb {C}}}\) satisfies \(|c_i|\le \Vert f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})\Vert \). Thus \(\partial _{k}f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})\) is a polynomial with norm
$$\begin{aligned} \Big \Vert \partial _{k}f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})\Big \Vert \le {\varvec{d}}_k \Vert f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})\Vert . \end{aligned}$$ -
(iii)
Letting \({\varvec{\alpha }}\) range over \(\mathop {Supp}_k(f)\),
$$\begin{aligned} \begin{array}{llll} \Vert \partial _{k}f({\varvec{b}}_{(k-1)})\Vert &{}=&{} \max _{{\varvec{\alpha }}} \Vert \partial _{k}f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})\Vert &{}\\ &{}\le &{} \max _{{\varvec{\alpha }}} {\varvec{d}}_k \cdot \Vert f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})\Vert &{} \qquad (\text {from part (ii) second formula})\\ &{}\le &{} {\varvec{d}}_k \cdot \max _{{\varvec{\alpha }}} \Vert f_{\varvec{\alpha }}({\varvec{b}}_{(k-1)})\Vert \\ &{}\le &{} {\varvec{d}}_k \cdot \Vert f({\varvec{b}}_{(k-1)})\Vert \\ &{}\le &{} {\varvec{d}}_k \cdot \Vert f\Vert \cdot \prod _{i=1}^{k-1}{\varvec{\beta }}_i &{} \qquad (\text {from part (i)})\\ \end{array} \end{aligned}$$
\(\square \)
Putting it all together:
Theorem 4
(=Theorem 2 in Text) For \(k=1,\ldots ,n\),
Proof
When \(k=1\), our formula is
follows from the case \(k=1\) of Lemma 12(iii). For \(k>1\), we use induction:
\(\square \)
The next lemma answers the question: given \(\delta _L>0\), how can we ensure that
is upper bounded by \(\delta _L\)?
Lemma 14
(=Lemma 7 in Text)
Given \(\delta _L>0\), \(f,{\widetilde{f}}\in {{\mathbb {C}}}[{\varvec{z}}]\) and \({\varvec{b}},\widetilde{{\varvec{b}}}\in {\mathbb {C}}^{n-1}\) where \(n>1\).
Let \(d=\max _i (\mathop {deg}_{{{z}}_i}(f))\) and \(M=\Vert {\varvec{b}}\Vert +1\).
If
and
then
Proof
Note that \(\delta _f {\mathrel {\,{:}{=}\,}}\Vert f-{\widetilde{f}}\Vert \) in (*) and \(\delta _{\varvec{b}}{\mathrel {\,{:}{=}\,}}\Vert {\varvec{b}}-\widetilde{{\varvec{b}}}\Vert \) in (**). Since \(\delta _{\varvec{b}}\le 1\), we conclude that \(\Vert \widetilde{{\varvec{b}}}\Vert \le M\). Using the bounds \({\varvec{\beta }}_k\le \widetilde{\varvec{\beta }}_k\le (d+1)M^d\), the bound of Theorem 4 for the case \(k=n-1\) becomes
The inequalities (*) on \(\delta _f\), and (**) on \(\delta _{\varvec{b}}\), are designed to ensure that \(\delta _{n-1} f \le \delta _L\). \(\square \)
Rights and permissions
About this article
Cite this article
Imbach, R., Pouget, M. & Yap, C. Clustering Complex Zeros of Triangular Systems of Polynomials. Math.Comput.Sci. 15, 271–292 (2021). https://doi.org/10.1007/s11786-020-00482-0
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11786-020-00482-0
Keywords
- Complex root finding
- Triangular polynomial system
- Near-optimal root isolation
- Certified algorithm
- Complex root isolation
- Oracle multivariable polynomial
- Subdivision algorithm
- Pellet’s theorem