練習問題 3.6.3

ニュートン法において,
y
が十分
sqrt x
に近づいたと判断するテストとして
abs (y × y − x) < eps
を採用した.別のテストとして,


abs (y × y − x) < eps × x
がある.
sqrt
関数がこちらのテストを使うように書き直せ.



sqrt :: Double -> Double
sqrt x = until done improve x
         where  done y = abs (y*y -x) < eps * x
                improve y = (y+x/y)/2

eps :: Double
eps = 0.000001