The zeros (or roots) of a function \(f\) are all values of \(r\) in the domain of \(f\) for which \(f(r) = 0.\) Newton’s method is an algorithm for approximating the roots of a differentiable function to arbitrary precision. The big idea is that if \(c\) is close to a root of \(f,\) then the \(x\)-intercept of the line tangent to the graph of \(f\) at \(c\) will typically be closer to the root than \(c.\)
To be precise, suppose \(f\) is a differentiable function with root \(r.\)
Let \(c_0\) be an “initial approximation” for the root \(r\).
The \(x\)-intercept of the line tangent to the graph of \(f\) at \(c_0\)
is the number \( c_0\!-\!\tfrac{f(c_0)}{f'(c_0)}\,.\)
Set \(c_1\) equal to that number, calling it the “next approximation”.
Then iteratively repeat this process with \(c_1\) in place of \(c_0,\)
and then \(c_2\) in place of \(c_1,\) then \(c_3\) in place of \(c_2,\)
and so on and so on:
for each approximation \(c_n,\) continue iterating by computing
\[ c_{n+1} = c_n - \frac{f(c_n)}{f'(c_n)}\] as your “next approximation”.
Typically the values of these approximations will
converge towards the exact value of \(r.\)
Newton’s method only typically converges, however. There are examples of differentiable functions \(f\) with root \(r\) for which certain choices of initial guess will “blow up” to either \(\infty\) or \(-\infty,\) diverging instead of converging.