\left(0.5 \cdot \sin re\right) \cdot \left(e^{0 - im} + e^{im}\right)0.5 \cdot \left(\left(\frac{1}{e^{im}} + e^{im}\right) \cdot \sin re\right)double f(double re, double im) {
double r853240 = 0.5;
double r853241 = re;
double r853242 = sin(r853241);
double r853243 = r853240 * r853242;
double r853244 = 0.0;
double r853245 = im;
double r853246 = r853244 - r853245;
double r853247 = exp(r853246);
double r853248 = exp(r853245);
double r853249 = r853247 + r853248;
double r853250 = r853243 * r853249;
return r853250;
}
double f(double re, double im) {
double r853251 = 0.5;
double r853252 = 1.0;
double r853253 = im;
double r853254 = exp(r853253);
double r853255 = r853252 / r853254;
double r853256 = r853255 + r853254;
double r853257 = re;
double r853258 = sin(r853257);
double r853259 = r853256 * r853258;
double r853260 = r853251 * r853259;
return r853260;
}



Bits error versus re



Bits error versus im
Results
Initial program 0.0
Simplified0.0
rmApplied div-inv0.0
Applied distribute-lft-out0.0
Final simplification0.0
herbie shell --seed 2019143
(FPCore (re im)
:name "math.sin on complex, real part"
(* (* 0.5 (sin re)) (+ (exp (- 0 im)) (exp im))))