\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 r25222 = 0.5;
double r25223 = re;
double r25224 = sin(r25223);
double r25225 = r25222 * r25224;
double r25226 = 0.0;
double r25227 = im;
double r25228 = r25226 - r25227;
double r25229 = exp(r25228);
double r25230 = exp(r25227);
double r25231 = r25229 + r25230;
double r25232 = r25225 * r25231;
return r25232;
}
double f(double re, double im) {
double r25233 = 0.5;
double r25234 = re;
double r25235 = sin(r25234);
double r25236 = r25233 * r25235;
double r25237 = 0.0;
double r25238 = im;
double r25239 = r25237 - r25238;
double r25240 = exp(r25239);
double r25241 = exp(r25238);
double r25242 = r25240 + r25241;
double r25243 = r25236 * r25242;
return r25243;
}



Bits error versus re



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