\left(0.5 \cdot \sin re\right) \cdot \left(e^{0 - im} + e^{im}\right)\left(\sin re \cdot \left(e^{im} + e^{-im}\right)\right) \cdot 0.5double f(double re, double im) {
double r1004225 = 0.5;
double r1004226 = re;
double r1004227 = sin(r1004226);
double r1004228 = r1004225 * r1004227;
double r1004229 = 0.0;
double r1004230 = im;
double r1004231 = r1004229 - r1004230;
double r1004232 = exp(r1004231);
double r1004233 = exp(r1004230);
double r1004234 = r1004232 + r1004233;
double r1004235 = r1004228 * r1004234;
return r1004235;
}
double f(double re, double im) {
double r1004236 = re;
double r1004237 = sin(r1004236);
double r1004238 = im;
double r1004239 = exp(r1004238);
double r1004240 = -r1004238;
double r1004241 = exp(r1004240);
double r1004242 = r1004239 + r1004241;
double r1004243 = r1004237 * r1004242;
double r1004244 = 0.5;
double r1004245 = r1004243 * r1004244;
return r1004245;
}



Bits error versus re



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