



Bits error versus re




Bits error versus im
| Original | 37.7 |
|---|---|
| Target | 32.9 |
| Herbie | 15.5 |
if (* 2.0 (+ im re)) < -2.5225713812668275e+157 or -1.05529701206174e-139 < (* 2.0 (+ im re)) < 7.394748597539074e-254Initial program 60.8
rmApplied sqrt-prod60.8
rmApplied flip-+60.9
Applied sqrt-div60.9
Applied associate-*r/60.9
Applied simplify53.8
Taylor expanded around -inf 30.7
Applied simplify30.7
if -2.5225713812668275e+157 < (* 2.0 (+ im re)) < -1.05529701206174e-139Initial program 27.9
rmApplied sqrt-prod28.1
rmApplied flip-+28.1
Applied sqrt-div28.2
Applied simplify1.3
if 7.394748597539074e-254 < (* 2.0 (+ im re)) < 1.2930506326585612e-189 or 1.2275406696693482e+142 < (* 2.0 (+ im re)) < 2.7511480905800474e+286Initial program 57.0
Taylor expanded around 0 26.1
if 1.2930506326585612e-189 < (* 2.0 (+ im re)) < 1.2275406696693482e+142Initial program 2.7
rmApplied add-sqr-sqrt2.7
Applied sqrt-prod2.8
if 2.7511480905800474e+286 < (* 2.0 (+ im re)) < 3.0460774741497173e+296Initial program 61.1
Taylor expanded around inf 31.8
if 3.0460774741497173e+296 < (* 2.0 (+ im re)) Initial program 61.0
rmApplied sqrt-prod61.0
Taylor expanded around 0 24.5
Time bar (total: 58.3s)Debug logProfile
herbie shell --seed '#(1071501266 3581234924 1086666455 2685055582 1243441566 1802958749)'
(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)))))