\left(0.5 \cdot \sin re\right) \cdot \left(e^{0 - im} + e^{im}\right)\left(0.5 \cdot \sin re\right) \cdot \left(e^{-im} + e^{im}\right)double f(double re, double im) {
double r150886 = 0.5;
double r150887 = re;
double r150888 = sin(r150887);
double r150889 = r150886 * r150888;
double r150890 = 0.0;
double r150891 = im;
double r150892 = r150890 - r150891;
double r150893 = exp(r150892);
double r150894 = exp(r150891);
double r150895 = r150893 + r150894;
double r150896 = r150889 * r150895;
return r150896;
}
double f(double re, double im) {
double r150897 = 0.5;
double r150898 = re;
double r150899 = sin(r150898);
double r150900 = r150897 * r150899;
double r150901 = im;
double r150902 = -r150901;
double r150903 = exp(r150902);
double r150904 = exp(r150901);
double r150905 = r150903 + r150904;
double r150906 = r150900 * r150905;
return r150906;
}



Bits error versus re



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