POLYNOM version 0.11 by Pieter Suurmond, january 2, 2020. A simple C++ API for complex polynomial factoring and expansion. Latest version available from: https://ecomaan.nl/cpp/polynom To easily download all files, take polynom-0.11.tar.gz. All you need to know to use this 'polynom library' resides in headerfile polynom.hpp. Enjoy! The code works well up to polynomials of the 40th degree (see test-report). It can be applied in digital signal processing to 'reverse engineer' filter coeffi- cients back to poles and zero's, or, the opposite: calculate filter coefficients given some poles and zero's: INPUT: FUNCTION: OUTPUT: coefficients in ascending ---> factor() ---> roots degree coefficients in descending ---> factor_d() ---> roots degree coefficients roots ---> expand() ---> in ascending degree coefficients roots ---> expand_d() ---> in descending degree The following sources were used during implementation: * Numerical Recipes in Pascal, C and C++. * Numerical Analysis: The Mathematics of Scientific Computing. D.R. Kincaid & E.W. Cheney. Brooks/Cole Publ., 1990. Section 3.5 Example of Laguerre's Method (http://www.netlib.org/kincaid-cheney/laguerre.f). * http://kogs-www.informatik.uni-hamburg.de/~koethe/vigra/ (see include/vigra/polynomial.hxx). * 'Elements of Computer Music' by F. Richard Moore. Prentice Hall, Inc., 1990. Page 131. Ideas for future versions of POLYNOM: * Look for conjugate pairs during rootfinding when coefficients are purely real. * Keep the double-API but make it work internally with long doubles (80 or 128 bits). Thanks to Maarten de Boer, Sam Roig, Eduard Aylon, Niels Bogaards, Niels Gorisse, Marc Groenewegen, Stijn van Beek and Jorn Lemon.