In
mathematics, the splitting circle method is a
numerical algorithm
Numerical analysis is the study of algorithms that use numerical approximation (as opposed to symbolic manipulations) for the problems of mathematical analysis (as distinguished from discrete mathematics). It is the study of numerical methods th ...
for the numerical factorization of a
polynomial
In mathematics, a polynomial is an expression consisting of indeterminates (also called variables) and coefficients, that involves only the operations of addition, subtraction, multiplication, and positive-integer powers of variables. An ex ...
and, ultimately, for finding its
complex
Complex commonly refers to:
* Complexity, the behaviour of a system whose components interact in multiple ways so possible interactions are difficult to describe
** Complex system, a system composed of many components which may interact with each ...
roots
A root is the part of a plant, generally underground, that anchors the plant body, and absorbs and stores water and nutrients.
Root or roots may also refer to:
Art, entertainment, and media
* ''The Root'' (magazine), an online magazine focusing ...
. It was introduced by
Arnold Schönhage in his 1982 paper ''The fundamental theorem of algebra in terms of computational complexity'' (Technical report, Mathematisches Institut der Universität Tübingen). A revised algorithm was presented by
Victor Pan in 1998. An implementation was provided by
Xavier Gourdon in 1996 for the
Magma
Magma () is the molten or semi-molten natural material from which all igneous rocks are formed. Magma is found beneath the surface of the Earth, and evidence of magmatism has also been discovered on other terrestrial planets and some natura ...
and
PARI/GP
PARI/GP is a computer algebra system with the main aim of facilitating number theory computations. Versions 2.1.0 and higher are distributed under the GNU General Public License. It runs on most common operating systems.
System overview
The P ...
computer algebra systems.
General description
The fundamental idea of the splitting circle method is to use methods of
complex analysis
Complex analysis, traditionally known as the theory of functions of a complex variable, is the branch of mathematical analysis that investigates functions of complex numbers. It is helpful in many branches of mathematics, including algebra ...
, more precisely the
residue theorem
In complex analysis, the residue theorem, sometimes called Cauchy's residue theorem, is a powerful tool to evaluate line integrals of analytic functions over closed curves; it can often be used to compute real integrals and infinite series as wel ...
, to construct factors of polynomials. With those methods it is possible to construct a factor of a given polynomial
for any region of the complex plane with a piecewise smooth boundary. Most of those factors will be trivial, that is constant polynomials. Only regions that contain roots of ''p(x)'' result in nontrivial factors that have exactly those roots of ''p(x)'' as their own roots, preserving multiplicity.
In the numerical realization of this method one uses disks ''D''(''c'',''r'') (center ''c'', radius ''r'') in the complex plane as regions. The boundary circle of a disk splits the set of roots of ''p''(''x'') in two parts, hence the name of the method. To a given disk one computes approximate factors following the analytical theory and refines them using
Newton's method
In numerical analysis, Newton's method, also known as the Newton–Raphson method, named after Isaac Newton and Joseph Raphson, is a root-finding algorithm which produces successively better approximations to the roots (or zeroes) of a real ...
. To avoid numerical instability one has to demand that all roots are well separated from the boundary circle of the disk. So to obtain a good splitting circle it should be embedded in a root free annulus ''A''(''c'',''r'',''R'') (center ''c'', inner radius ''r'', outer radius ''R'') with a large relative width ''R/r''.
Repeating this process for the factors found, one finally arrives at an approximative factorization of the polynomial at a required precision. The factors are either linear polynomials representing well isolated zeros or higher order polynomials representing clusters of zeros.
Details of the analytical construction
Newton's identities
In mathematics, Newton's identities, also known as the Girard–Newton formulae, give relations between two types of symmetric polynomials, namely between power sums and elementary symmetric polynomials. Evaluated at the roots of a monic polynom ...
are a bijective relation between the
elementary symmetric polynomial
In mathematics, specifically in commutative algebra, the elementary symmetric polynomials are one type of basic building block for symmetric polynomials, in the sense that any symmetric polynomial can be expressed as a polynomial in elementary s ...
s of a tuple of complex numbers and its sums of powers. Therefore, it is possible to compute the coefficients of a polynomial
:
(or of a factor of it) from the sums of powers of its zeros
:
,
by solving the triangular system that is obtained by comparing the powers of ''u'' in the following identity of
formal power series
In mathematics, a formal series is an infinite sum that is considered independently from any notion of convergence, and can be manipulated with the usual algebraic operations on series (addition, subtraction, multiplication, division, partial s ...
:
:
If
is a domain with piecewise smooth boundary ''C'' and if the zeros of ''p''(''x'') are pairwise distinct and not on the boundary ''C'', then from the
residue theorem
In complex analysis, the residue theorem, sometimes called Cauchy's residue theorem, is a powerful tool to evaluate line integrals of analytic functions over closed curves; it can often be used to compute real integrals and infinite series as wel ...
of residual calculus one gets
:
The identity of the left to the right side of this equation also holds for zeros with multiplicities. By using the Newton identities one is able to compute from those sums of powers the factor
:
of ''p''(''x'') corresponding to the zeros of ''p''(''x'') inside ''G''. By polynomial division one also obtains the second factor ''g''(''x'') in ''p''(''x'') = ''f''(''x'')''g''(''x'').
The commonly used regions are circles in the complex plane. Each circle gives raise to a split of the polynomial ''p''(''x'') in factors ''f''(''x'') and ''g''(''x''). Repeating this procedure on the factors using different circles yields finer and finer factorizations. This recursion stops after a finite number of proper splits with all factors being nontrivial powers of linear polynomials.
The challenge now consists in the conversion of this analytical procedure into a numerical algorithm with good running time. The integration is approximated by a finite sum of a numerical integration method, making use of the
fast Fourier transform
A fast Fourier transform (FFT) is an algorithm that computes the discrete Fourier transform (DFT) of a sequence, or its inverse (IDFT). Fourier analysis converts a signal from its original domain (often time or space) to a representation in t ...
for the evaluation of the polynomials ''p''(''x'') and ''p''
'(''x''). The polynomial ''f''(''x'') that results will only be an approximate factor. To ensure that its zeros are close to the zeros of ''p'' inside ''G'' and only to those, one must demand that all zeros of ''p'' are far away from the boundary ''C'' of the region ''G''.
Basic numerical observation
(Schönhage 1982) Let