{"title":"快速有效的顺序和并行求多项式零和矩阵多项式的算法","authors":"V. Pan","doi":"10.1109/SFCS.1985.25","DOIUrl":null,"url":null,"abstract":"We evaluate all the real and complex zeros λ1,...,λn of an n-th degree univariate polynomial with the relative precision 1/2nc for a given positive constant c. If for all g,h, log |λg/λh-1| ≥ 1/2O(n) unless λg = λh, then we need O(n3log2n) arithmetic operations or O(n2log n) steps, n log n processors. O(n2log n) operations or O(n log n) parallel steps, n processors suffice if either all the zeros are real or for all g,h either |λg| = |λh| or 2O(n) ≥ (|λg/λh| - 1)| ≥ 1/2O(n). If all the zeros are either multiple or form complex conjugate pairs or if their moduli pairwise differ by the factors at least 1+1/nO(1), then O(n log2n) operations or O(log2n) steps, n processors suffice. Replacing 1+1/nO(1) above by 1+1/nO(loghn) for a positive h only requires to increase the time-complexity bounds by the factor loghn. Some of the presented algorithms extend Graeffe's method, other algorithms use the power sum techniques and the companion matrix computation; the latter ones are related to Bernoulli's and Leverrier's methods and to the power method and are extended in this paper to the evaluation of a matrix polynomial u(X) of degree N, (X is an n×n matrix), using O(N log N+n2.496) arithmetic operations. Such evaluation can be performed using O(log N+log2n) parallel steps, Nn+n3.496 processors or alternatively O(log2(nN)) steps, N/log N+n3.496 processors over arbitrary field of constants. Over rational constants, for almost all matrices X the number of processors can be reduced to Nn+n2.933 or to N/log N+n2.933, respectively; the bounds can be further reduced to O(log N+log2n)steps, N+n2.933 processors if u(X) is to be computed with a fixed arbitrarily high precision rather than exactly. For integer and well-conditioned matrices, the exponent 2.933 above can be decreased to 2.496. The results substantially improve the previously known upper estimates for the complexity of sequential and parallel evaluation of polynomial zeros and of matrix polynomials.","PeriodicalId":296739,"journal":{"name":"26th Annual Symposium on Foundations of Computer Science (sfcs 1985)","volume":"110 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1985-10-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"12","resultStr":"{\"title\":\"Fast and efficient algorithms for sequential and parallel evaluation of polynomial zeros and of matrix polynomials\",\"authors\":\"V. Pan\",\"doi\":\"10.1109/SFCS.1985.25\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"We evaluate all the real and complex zeros λ1,...,λn of an n-th degree univariate polynomial with the relative precision 1/2nc for a given positive constant c. If for all g,h, log |λg/λh-1| ≥ 1/2O(n) unless λg = λh, then we need O(n3log2n) arithmetic operations or O(n2log n) steps, n log n processors. O(n2log n) operations or O(n log n) parallel steps, n processors suffice if either all the zeros are real or for all g,h either |λg| = |λh| or 2O(n) ≥ (|λg/λh| - 1)| ≥ 1/2O(n). If all the zeros are either multiple or form complex conjugate pairs or if their moduli pairwise differ by the factors at least 1+1/nO(1), then O(n log2n) operations or O(log2n) steps, n processors suffice. Replacing 1+1/nO(1) above by 1+1/nO(loghn) for a positive h only requires to increase the time-complexity bounds by the factor loghn. Some of the presented algorithms extend Graeffe's method, other algorithms use the power sum techniques and the companion matrix computation; the latter ones are related to Bernoulli's and Leverrier's methods and to the power method and are extended in this paper to the evaluation of a matrix polynomial u(X) of degree N, (X is an n×n matrix), using O(N log N+n2.496) arithmetic operations. Such evaluation can be performed using O(log N+log2n) parallel steps, Nn+n3.496 processors or alternatively O(log2(nN)) steps, N/log N+n3.496 processors over arbitrary field of constants. Over rational constants, for almost all matrices X the number of processors can be reduced to Nn+n2.933 or to N/log N+n2.933, respectively; the bounds can be further reduced to O(log N+log2n)steps, N+n2.933 processors if u(X) is to be computed with a fixed arbitrarily high precision rather than exactly. For integer and well-conditioned matrices, the exponent 2.933 above can be decreased to 2.496. The results substantially improve the previously known upper estimates for the complexity of sequential and parallel evaluation of polynomial zeros and of matrix polynomials.\",\"PeriodicalId\":296739,\"journal\":{\"name\":\"26th Annual Symposium on Foundations of Computer Science (sfcs 1985)\",\"volume\":\"110 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1985-10-21\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"12\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"26th Annual Symposium on Foundations of Computer Science (sfcs 1985)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/SFCS.1985.25\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"26th Annual Symposium on Foundations of Computer Science (sfcs 1985)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SFCS.1985.25","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Fast and efficient algorithms for sequential and parallel evaluation of polynomial zeros and of matrix polynomials
We evaluate all the real and complex zeros λ1,...,λn of an n-th degree univariate polynomial with the relative precision 1/2nc for a given positive constant c. If for all g,h, log |λg/λh-1| ≥ 1/2O(n) unless λg = λh, then we need O(n3log2n) arithmetic operations or O(n2log n) steps, n log n processors. O(n2log n) operations or O(n log n) parallel steps, n processors suffice if either all the zeros are real or for all g,h either |λg| = |λh| or 2O(n) ≥ (|λg/λh| - 1)| ≥ 1/2O(n). If all the zeros are either multiple or form complex conjugate pairs or if their moduli pairwise differ by the factors at least 1+1/nO(1), then O(n log2n) operations or O(log2n) steps, n processors suffice. Replacing 1+1/nO(1) above by 1+1/nO(loghn) for a positive h only requires to increase the time-complexity bounds by the factor loghn. Some of the presented algorithms extend Graeffe's method, other algorithms use the power sum techniques and the companion matrix computation; the latter ones are related to Bernoulli's and Leverrier's methods and to the power method and are extended in this paper to the evaluation of a matrix polynomial u(X) of degree N, (X is an n×n matrix), using O(N log N+n2.496) arithmetic operations. Such evaluation can be performed using O(log N+log2n) parallel steps, Nn+n3.496 processors or alternatively O(log2(nN)) steps, N/log N+n3.496 processors over arbitrary field of constants. Over rational constants, for almost all matrices X the number of processors can be reduced to Nn+n2.933 or to N/log N+n2.933, respectively; the bounds can be further reduced to O(log N+log2n)steps, N+n2.933 processors if u(X) is to be computed with a fixed arbitrarily high precision rather than exactly. For integer and well-conditioned matrices, the exponent 2.933 above can be decreased to 2.496. The results substantially improve the previously known upper estimates for the complexity of sequential and parallel evaluation of polynomial zeros and of matrix polynomials.