Abstract
Hensel’s lemma, combined with repeated applications of Weierstrass preparation theorem, allows for the factorization of polynomials with multivariate power series coefficients. We present a complexity analysis for this method and leverage those results to guide the load-balancing of a parallel implementation to concurrently update all factors. In particular, the factorization creates a pipeline where the terms of degree k of the first factor are computed simultaneously with the terms of degree \(k-1\) of the second factor, etc. An implementation challenge is the inherent irregularity of computational work between factors, as our complexity analysis reveals. Additional resource utilization and load-balancing is achieved through the parallelization of Weierstrass preparation. Experimental results show the efficacy of this mixed parallel scheme, achieving up to 9\(\times \) parallel speedup on a 12-core machine.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Alvandi, P., Ataei, M., Kazemi, M., Moreno Maza, M.: On the extended Hensel construction and its application to the computation of real limit points. J. Symb. Comput. 98, 120–162 (2020)
Asadi, M., et al.: Basic Polynomial Algebra Subprograms (BPAS) (version 1.791) (2021). http://www.bpaslib.org
Asadi, M., Brandt, A., Kazemi, M., Moreno Maza, M., Postma, E.: Multivariate power series in Maple. In: Proceedings of MC 2020 (2021, to appear)
Asadi, M., Brandt, A., Moir, R.H.C., Moreno Maza, M.: Algorithms and data structures for sparse polynomial arithmetic. Mathematics 7(5), 441 (2019)
Asadi, M., Brandt, A., Moir, R.H.C., Moreno Maza, M., Xie, Y.: On the parallelization of triangular decompositions. In: Proceedings of ISSAC 2020, pp. 22–29. ACM (2020)
Asadi, M., Brandt, A., Moir, R.H.C., Moreno Maza, M., Xie, Y.: Parallelization of triangular decompositions: techniques and implementation. J. Symb. Comput. (2021, to appear)
Berthomieu, J., Lecerf, G., Quintin, G.: Polynomial root finding over local rings and application to error correcting codes. Appl. Algebra Eng. Commun. Comput. 24(6), 413–443 (2013)
Brandt, A., Kazemi, M., Moreno-Maza, M.: Power series arithmetic with the BPAS library. In: Boulier, F., England, M., Sadykov, T.M., Vorozhtsov, E.V. (eds.) CASC 2020. LNCS, vol. 12291, pp. 108–128. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-60026-6_7
Burge, W.H., Watt, S.M.: Infinite structures in scratchpad II. In: Davenport, J.H. (ed.) EUROCAL 1987. LNCS, vol. 378, pp. 138–148. Springer, Heidelberg (1989). https://doi.org/10.1007/3-540-51517-8_103
Chudnovsky, D.V., Chudnovsky, G.V.: On expansion of algebraic functions in power and Puiseux series I. J. Complex. 2(4), 271–294 (1986)
Fischer, G.: Plane Algebraic Curves. AMS (2001)
von zur Gathen, J., Gerhard, J.: Modern Computer Algebra, 2nd edn. Cambridge University Press, New York (2003)
Granlund, T.: The GMP development team: GNU MP: The GNU Multiple Precision Arithmetic Library (version 6.1.2) (2020). http://gmplib.org
Haidar, A., Kurzak, J., Luszczek, P.: An improved parallel singular value algorithm and its implementation for multicore hardware. In: Proceedings of SC 2013. ACM (2013)
van der Hoeven, J.: Relax, but don’t be too lazy. J. Symb. Comput. 34(6), 479–542 (2002)
van der Hoeven, J.: Faster relaxed multiplication. In: Proceedings of ISSAC 2014, pp. 405–412. ACM (2014)
Iwami, M.: Analytic factorization of the multivariate polynomial. In: Proceedings of CASC 2003, pp. 213–225 (2003)
Kung, H.T., Traub, J.F.: All algebraic functions can be computed fast. J. ACM 25(2), 245–260 (1978)
Maplesoft, a division of Waterloo Maple Inc.: Maple (2020). www.maplesoft.com/
McCool, M., Reinders, J., Robison, A.: Structured Parallel Programming: Patterns for Efficient Computation. Elsevier, Amsterdam (2012)
Michailidis, P.D., Margaritis, K.G.: Parallel direct methods for solving the system of linear equations with pipelining on a multicore using OpenMP. J. Comput. Appl. Math. 236(3), 326–341 (2011)
Monagan, M., Vrbik, P.: Lazy and forgetful polynomial arithmetic and applications. In: Gerdt, V.P., Mayr, E.W., Vorozhtsov, E.V. (eds.) CASC 2009. LNCS, vol. 5743, pp. 226–239. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04103-7_20
Neiger, V., Rosenkilde, J., Schost, É.: Fast computation of the roots of polynomials over the ring of power series. In: Proceedings of ISSAC 2017, pp. 349–356. ACM (2017)
Sasaki, T., Kako, F.: Solving multivariate algebraic equation by Hensel construction. Japan J. Indust. Appl. Math. 16(2), 257–285 (1999)
Sasaki, T., Inaba, D.: Enhancing the extended Hensel construction by using Gröbner bases. In: Gerdt, V.P., Koepf, W., Seiler, W.M., Vorozhtsov, E.V. (eds.) CASC 2016. LNCS, vol. 9890, pp. 457–472. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-45641-6_29
Scott, M.L.: Programming Language Pragmatics, 3rd edn. Academic Press, New York (2009)
Shoup, V., et al.: NTL: A library for doing number theory (version 11.4.3) (2020). www.shoup.net/ntl/
The Sage Developers: SageMath, the Sage Mathematics Software System (version 9.1) (2020). https://www.sagemath.org
Acknowledgments
The authors would like to thank the reviewers for their helpful comments and NSERC of Canada (award CGSD3-535362-2019).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Brandt, A., Moreno Maza, M. (2021). On the Complexity and Parallel Implementation of Hensel’s Lemma and Weierstrass Preparation. In: Boulier, F., England, M., Sadykov, T.M., Vorozhtsov, E.V. (eds) Computer Algebra in Scientific Computing. CASC 2021. Lecture Notes in Computer Science(), vol 12865. Springer, Cham. https://doi.org/10.1007/978-3-030-85165-1_6
Download citation
DOI: https://doi.org/10.1007/978-3-030-85165-1_6
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-85164-4
Online ISBN: 978-3-030-85165-1
eBook Packages: Computer ScienceComputer Science (R0)