-- | The sequence x_{n} of values obtained by applying Newton's method
-- on the function @f@ and initial guess @x0@.
+--
+-- Examples:
+--
+-- Atkinson, p. 60.
+-- >>> let f x = x^6 - x - 1
+-- >>> let f' x = 6*x^5 - 1
+-- >>> tail $ take 4 $ newton_iterations f f' 2
+-- [1.6806282722513088,1.4307389882390624,1.2549709561094362]
+--
newton_iterations :: (Fractional a, Ord a)
=> (a -> a) -- ^ The function @f@ whose root we seek
-> (a -> a) -- ^ The derivative of @f@
-- | Use Newton's method to find a root of @f@ near the initial guess
-- @x0@. If your guess is bad, this will recurse forever!
+--
+-- Examples:
+--
+-- Atkinson, p. 60.
+--
+-- >>> let f x = x^6 - x - 1
+-- >>> let f' x = 6*x^5 - 1
+-- >>> let Just root = newtons_method f f' (1/1000000) 2
+-- >>> root
+-- 1.1347241385002211
+-- >>> abs (f root) < 1/100000
+-- True
+--
newtons_method :: (Fractional a, Ord a)
=> (a -> a) -- ^ The function @f@ whose root we seek
-> (a -> a) -- ^ The derivative of @f@