


Bits error versus x.re



Bits error versus x.im



Bits error versus y.re



Bits error versus y.im
if (/ (sin (fma (log (hypot x.im x.re)) y.im (* (atan2 x.im x.re) y.re))) (/ (+ (* (atan2 x.im x.re) y.im) (+ 1 (* 1/2 (* (pow (atan2 x.im x.re) 2) (pow y.im 2))))) (pow (hypot x.im x.re) y.re))) < -9.670630714894995e-299Initial program 34.6
Applied simplify5.6
rmApplied log1p-expm1-u5.7
if -9.670630714894995e-299 < (/ (sin (fma (log (hypot x.im x.re)) y.im (* (atan2 x.im x.re) y.re))) (/ (+ (* (atan2 x.im x.re) y.im) (+ 1 (* 1/2 (* (pow (atan2 x.im x.re) 2) (pow y.im 2))))) (pow (hypot x.im x.re) y.re))) < 0.0Initial program 31.3
Applied simplify7.5
Taylor expanded around 0 0.1
if 0.0 < (/ (sin (fma (log (hypot x.im x.re)) y.im (* (atan2 x.im x.re) y.re))) (/ (+ (* (atan2 x.im x.re) y.im) (+ 1 (* 1/2 (* (pow (atan2 x.im x.re) 2) (pow y.im 2))))) (pow (hypot x.im x.re) y.re))) Initial program 34.8
Applied simplify16.0
rmApplied pow-exp15.1
rmApplied add-cube-cbrt15.8
Time bar (total: 40.6s)Debug logProfile
herbie shell --seed '#(1070386091 2509006183 1430610344 1025408621 36622005 1425925650)' +o rules:numerics
(FPCore (x.re x.im y.re y.im)
:name "powComplex, imaginary part"
(* (exp (- (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.re) (* (atan2 x.im x.re) y.im))) (sin (+ (* (log (sqrt (+ (* x.re x.re) (* x.im x.im)))) y.im) (* (atan2 x.im x.re) y.re)))))