\left(0.5 \cdot \sin re\right) \cdot \left(e^{0.0 - im} + e^{im}\right)\frac{\left(0.5 \cdot \sin re\right) \cdot e^{0.0}}{e^{im}} + \left(0.5 \cdot \sin re\right) \cdot e^{im}double f(double re, double im) {
double r21817 = 0.5;
double r21818 = re;
double r21819 = sin(r21818);
double r21820 = r21817 * r21819;
double r21821 = 0.0;
double r21822 = im;
double r21823 = r21821 - r21822;
double r21824 = exp(r21823);
double r21825 = exp(r21822);
double r21826 = r21824 + r21825;
double r21827 = r21820 * r21826;
return r21827;
}
double f(double re, double im) {
double r21828 = 0.5;
double r21829 = re;
double r21830 = sin(r21829);
double r21831 = r21828 * r21830;
double r21832 = 0.0;
double r21833 = exp(r21832);
double r21834 = r21831 * r21833;
double r21835 = im;
double r21836 = exp(r21835);
double r21837 = r21834 / r21836;
double r21838 = r21831 * r21836;
double r21839 = r21837 + r21838;
return r21839;
}



Bits error versus re



Bits error versus im
Results
Initial program 0.0
rmApplied distribute-lft-in0.0
rmApplied exp-diff0.0
Applied associate-*r/0.0
Final simplification0.0
herbie shell --seed 2020046 +o rules:numerics
(FPCore (re im)
:name "math.sin on complex, real part"
:precision binary64
(* (* 0.5 (sin re)) (+ (exp (- 0.0 im)) (exp im))))