_arb_poly_newton_step
#include <flint/arb_poly.h>int _arb_poly_newton_step(arb_t xnew, arb_srcptr poly, slong len, const arb_t x, const arb_t convergence_interval, const arf_t convergence_factor, slong prec)sourcePerforms one step of Newton's method for a ball x = [m \pm r] that contains exactly one root of f = {poly, len}, given a ball I \supseteq x (convergence_interval) and the factor C computed by _arb_poly_newton_convergence_factor. Computes m' = m - f(m)/f'(m) in ball arithmetic and adds C r^2 to its radius. If the new ball x' lies in I and has a smaller radius than x, sets xnew to x' and returns nonzero; otherwise sets xnew to x and returns zero.
If \xi \in x is the root, Taylor's theorem gives m' - \xi = \frac{f''(\eta)}{2 f'(m)} (m - \xi)^2 for some \eta \in I, hence |m' - \xi| \le C r^2 (Isolating and refining real roots).
The FLINT team, “_arb_poly_newton_step (arb_poly.h),” FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev, 2026. https://flintlib.org/doc/arb_poly/_arb_poly_newton_step.html (generated 2026-10-20).
@misc{flint-doc-arb-poly-arb-poly-newton-step,
author = {{The FLINT team}},
title = {{\_arb\_poly\_newton\_step (arb\_poly.h)}},
howpublished = {FLINT: Fast Library for Number Theory, documentation, version 3.7.0-dev},
year = {2026},
url = {https://flintlib.org/doc/arb_poly/_arb_poly_newton_step.html},
note = {Generated 2026-10-20}
}