\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 r71662 = 0.5;
double r71663 = re;
double r71664 = sin(r71663);
double r71665 = r71662 * r71664;
double r71666 = 0.0;
double r71667 = im;
double r71668 = r71666 - r71667;
double r71669 = exp(r71668);
double r71670 = exp(r71667);
double r71671 = r71669 + r71670;
double r71672 = r71665 * r71671;
return r71672;
}
double f(double re, double im) {
double r71673 = 0.5;
double r71674 = re;
double r71675 = sin(r71674);
double r71676 = r71673 * r71675;
double r71677 = 0.0;
double r71678 = im;
double r71679 = r71677 - r71678;
double r71680 = exp(r71679);
double r71681 = exp(r71678);
double r71682 = r71680 + r71681;
double r71683 = r71676 * r71682;
return r71683;
}



Bits error versus re



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