\left(0.5 \cdot \sin re\right) \cdot \left(e^{0.0 - im} + e^{im}\right)0.5 \cdot \left(\left(e^{-1 \cdot im} + e^{im}\right) \cdot \sin re\right)double f(double re, double im) {
double r17491 = 0.5;
double r17492 = re;
double r17493 = sin(r17492);
double r17494 = r17491 * r17493;
double r17495 = 0.0;
double r17496 = im;
double r17497 = r17495 - r17496;
double r17498 = exp(r17497);
double r17499 = exp(r17496);
double r17500 = r17498 + r17499;
double r17501 = r17494 * r17500;
return r17501;
}
double f(double re, double im) {
double r17502 = 0.5;
double r17503 = -1.0;
double r17504 = im;
double r17505 = r17503 * r17504;
double r17506 = exp(r17505);
double r17507 = exp(r17504);
double r17508 = r17506 + r17507;
double r17509 = re;
double r17510 = sin(r17509);
double r17511 = r17508 * r17510;
double r17512 = r17502 * r17511;
return r17512;
}



Bits error versus re



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