



Bits error versus re




Bits error versus im
| Original | 37.2 |
|---|---|
| Target | 32.4 |
| Herbie | 17.9 |
if (* 2.0 (+ im re)) < -4.667490715013281e+157Initial program 61.8
rmApplied flip-+61.8
Applied associate-*r/61.8
Applied sqrt-div61.8
Applied simplify55.4
Taylor expanded around -inf 38.9
Applied simplify38.9
if -4.667490715013281e+157 < (* 2.0 (+ im re)) < 5.767466389431394e-235Initial program 32.2
rmApplied flip-+32.3
Applied associate-*r/32.3
Applied sqrt-div32.5
Applied simplify19.3
rmApplied sqrt-prod19.4
Applied simplify8.1
if 5.767466389431394e-235 < (* 2.0 (+ im re)) < 8.674358924089144e-170 or 7.68319400860928e+288 < (* 2.0 (+ im re)) Initial program 59.2
Taylor expanded around 0 24.4
if 8.674358924089144e-170 < (* 2.0 (+ im re)) < 5.245893505644546e+158Initial program 1.9
rmApplied add-sqr-sqrt1.9
Applied sqrt-prod2.0
if 5.245893505644546e+158 < (* 2.0 (+ im re)) < 7.68319400860928e+288Initial program 61.3
Taylor expanded around inf 29.9
Time bar (total: 46.6s)Debug logProfile
herbie shell --seed '#(1064397287 3527694221 3797617954 1138343853 2854031332 1153838279)'
(FPCore (re im)
:name "math.sqrt on complex, real part"
:herbie-target
(if (< re 0) (* 0.5 (* (sqrt 2) (sqrt (/ (* im im) (- (sqrt (+ (* re re) (* im im))) re))))) (* 0.5 (sqrt (* 2.0 (+ (sqrt (+ (* re re) (* im im))) re)))))
(* 0.5 (sqrt (* 2.0 (+ (sqrt (+ (* re re) (* im im))) re)))))