From: Michael Orlitzky Date: Fri, 7 Dec 2018 15:27:14 +0000 (-0500) Subject: src/Roots/Simple.hs: fix monomorphism restriction warning. X-Git-Url: http://gitweb.michael.orlitzky.com/?p=numerical-analysis.git;a=commitdiff_plain;h=5c0366134e8e1c12772cb685ac14b70d22d6ffed;hp=f7991d57e5eeae31a869dbef40bc1bc46b31552f src/Roots/Simple.hs: fix monomorphism restriction warning. --- diff --git a/src/Roots/Simple.hs b/src/Roots/Simple.hs index 815a64c..2906d95 100644 --- a/src/Roots/Simple.hs +++ b/src/Roots/Simple.hs @@ -1,4 +1,5 @@ {-# LANGUAGE RebindableSyntax #-} +{-# LANGUAGE ScopedTypeVariables #-} -- | The Roots.Simple module contains root-finding algorithms. That -- is, procedures to (numerically) find solutions to the equation, @@ -172,7 +173,7 @@ fixed_point_iteration_count f epsilon x0 = -- -- This is used to determine the rate of convergence. -- -fixed_point_error_ratios :: (Normed a, +fixed_point_error_ratios :: forall a b. (Normed a, Additive.C a, RealField.C b, Algebraic.C b) @@ -185,7 +186,7 @@ fixed_point_error_ratios f x0 x_star p = zipWith (/) en_plus_one en_exp where xn = F.fixed_point_iterations f x0 - en = map (\x -> norm (x_star - x)) xn + en = map (\x -> norm (x_star - x)) xn :: [b] en_plus_one = tail en en_exp = map (^p) en