


Bits error versus x.re



Bits error versus x.im



Bits error versus y.re



Bits error versus y.im
Results
if (* (/ (* (cbrt (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))) (cbrt (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)))) (* (cbrt (hypot y.re y.im)) (cbrt (hypot y.re y.im)))) (/ (cbrt (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))) (cbrt (hypot y.re y.im)))) < -1.7770805725111145e+308 or 1.7752851147652889e+308 < (* (/ (* (cbrt (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))) (cbrt (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)))) (* (cbrt (hypot y.re y.im)) (cbrt (hypot y.re y.im)))) (/ (cbrt (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))) (cbrt (hypot y.re y.im)))) Initial program 62.5
rmApplied add-sqr-sqrt62.5
Applied *-un-lft-identity62.5
Applied times-frac62.5
Applied simplify62.5
Applied simplify62.0
Taylor expanded around 0 48.8
Applied simplify48.8
if -1.7770805725111145e+308 < (* (/ (* (cbrt (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))) (cbrt (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im)))) (* (cbrt (hypot y.re y.im)) (cbrt (hypot y.re y.im)))) (/ (cbrt (/ (- (* x.im y.re) (* x.re y.im)) (hypot y.re y.im))) (cbrt (hypot y.re y.im)))) < 1.7752851147652889e+308Initial program 13.6
rmApplied add-sqr-sqrt13.6
Applied *-un-lft-identity13.6
Applied times-frac13.6
Applied simplify13.6
Applied simplify1.5
rmApplied associate-*r/1.4
Applied simplify1.3
Time bar (total: 1.1m)Debug logProfile
herbie shell --seed 2018167 +o rules:numerics
(FPCore (x.re x.im y.re y.im)
:name "_divideComplex, imaginary part"
(/ (- (* x.im y.re) (* x.re y.im)) (+ (* y.re y.re) (* y.im y.im))))