\left(0.5 \cdot \sin re\right) \cdot \left(e^{0.0 - im} + e^{im}\right)\left(0.5 \cdot \sin re\right) \cdot \left(e^{0.0 - im} + e^{im}\right)double f(double re, double im) {
double r17889 = 0.5;
double r17890 = re;
double r17891 = sin(r17890);
double r17892 = r17889 * r17891;
double r17893 = 0.0;
double r17894 = im;
double r17895 = r17893 - r17894;
double r17896 = exp(r17895);
double r17897 = exp(r17894);
double r17898 = r17896 + r17897;
double r17899 = r17892 * r17898;
return r17899;
}
double f(double re, double im) {
double r17900 = 0.5;
double r17901 = re;
double r17902 = sin(r17901);
double r17903 = r17900 * r17902;
double r17904 = 0.0;
double r17905 = im;
double r17906 = r17904 - r17905;
double r17907 = exp(r17906);
double r17908 = exp(r17905);
double r17909 = r17907 + r17908;
double r17910 = r17903 * r17909;
return r17910;
}



Bits error versus re



Bits error versus im
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2020056
(FPCore (re im)
:name "math.sin on complex, real part"
:precision binary64
(* (* 0.5 (sin re)) (+ (exp (- 0.0 im)) (exp im))))