\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 r15890 = 0.5;
double r15891 = re;
double r15892 = sin(r15891);
double r15893 = r15890 * r15892;
double r15894 = 0.0;
double r15895 = im;
double r15896 = r15894 - r15895;
double r15897 = exp(r15896);
double r15898 = exp(r15895);
double r15899 = r15897 + r15898;
double r15900 = r15893 * r15899;
return r15900;
}
double f(double re, double im) {
double r15901 = 0.5;
double r15902 = re;
double r15903 = sin(r15902);
double r15904 = r15901 * r15903;
double r15905 = 0.0;
double r15906 = exp(r15905);
double r15907 = r15904 * r15906;
double r15908 = im;
double r15909 = exp(r15908);
double r15910 = r15907 / r15909;
double r15911 = r15904 * r15909;
double r15912 = r15910 + r15911;
return r15912;
}



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 2019325 +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))))