


Bits error versus x.re



Bits error versus x.im



Bits error versus y.re



Bits error versus y.im
if (/ (log (exp (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))) < -7.988189976185666e-261 or 2.8699998917880417e-182 < (/ (log (exp (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.3121304693662483Initial program 34.3
Applied simplify12.8
rmApplied add-cube-cbrt13.1
if -7.988189976185666e-261 < (/ (log (exp (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))) < 2.8699998917880417e-182 or 0.3121304693662483 < (/ (log (exp (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 32.0
Applied simplify8.2
Taylor expanded around 0 7.3
rmApplied add-exp-log7.3
Applied pow-exp7.3
Applied add-exp-log7.3
Applied div-exp5.4
Time bar (total: 50.2s)Debug logProfile
herbie shell --seed '#(1070227846 1561819246 480764335 4016816270 2602869839 2117310382)' +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)))))