\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 r18584 = 0.5;
double r18585 = re;
double r18586 = sin(r18585);
double r18587 = r18584 * r18586;
double r18588 = 0.0;
double r18589 = im;
double r18590 = r18588 - r18589;
double r18591 = exp(r18590);
double r18592 = exp(r18589);
double r18593 = r18591 + r18592;
double r18594 = r18587 * r18593;
return r18594;
}
double f(double re, double im) {
double r18595 = 0.5;
double r18596 = re;
double r18597 = sin(r18596);
double r18598 = r18595 * r18597;
double r18599 = 0.0;
double r18600 = im;
double r18601 = r18599 - r18600;
double r18602 = exp(r18601);
double r18603 = exp(r18600);
double r18604 = r18602 + r18603;
double r18605 = r18598 * r18604;
return r18605;
}



Bits error versus re



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