\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 r21188 = 0.5;
double r21189 = re;
double r21190 = sin(r21189);
double r21191 = r21188 * r21190;
double r21192 = 0.0;
double r21193 = im;
double r21194 = r21192 - r21193;
double r21195 = exp(r21194);
double r21196 = exp(r21193);
double r21197 = r21195 + r21196;
double r21198 = r21191 * r21197;
return r21198;
}
double f(double re, double im) {
double r21199 = 0.5;
double r21200 = re;
double r21201 = sin(r21200);
double r21202 = r21199 * r21201;
double r21203 = 0.0;
double r21204 = im;
double r21205 = r21203 - r21204;
double r21206 = exp(r21205);
double r21207 = exp(r21204);
double r21208 = r21206 + r21207;
double r21209 = r21202 * r21208;
return r21209;
}



Bits error versus re



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