\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 r362249 = 0.5;
double r362250 = re;
double r362251 = sin(r362250);
double r362252 = r362249 * r362251;
double r362253 = 0.0;
double r362254 = im;
double r362255 = r362253 - r362254;
double r362256 = exp(r362255);
double r362257 = exp(r362254);
double r362258 = r362256 + r362257;
double r362259 = r362252 * r362258;
return r362259;
}
double f(double re, double im) {
double r362260 = 0.5;
double r362261 = re;
double r362262 = sin(r362261);
double r362263 = r362260 * r362262;
double r362264 = im;
double r362265 = -r362264;
double r362266 = exp(r362265);
double r362267 = exp(r362264);
double r362268 = r362266 + r362267;
double r362269 = r362263 * r362268;
return r362269;
}



Bits error versus re



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