\left(0.5 \cdot \sin re\right) \cdot \left(e^{0 - im} + e^{im}\right)\frac{\sin re \cdot 0.5}{e^{im}} + \left(\sin re \cdot 0.5\right) \cdot e^{im}double f(double re, double im) {
double r3028863 = 0.5;
double r3028864 = re;
double r3028865 = sin(r3028864);
double r3028866 = r3028863 * r3028865;
double r3028867 = 0.0;
double r3028868 = im;
double r3028869 = r3028867 - r3028868;
double r3028870 = exp(r3028869);
double r3028871 = exp(r3028868);
double r3028872 = r3028870 + r3028871;
double r3028873 = r3028866 * r3028872;
return r3028873;
}
double f(double re, double im) {
double r3028874 = re;
double r3028875 = sin(r3028874);
double r3028876 = 0.5;
double r3028877 = r3028875 * r3028876;
double r3028878 = im;
double r3028879 = exp(r3028878);
double r3028880 = r3028877 / r3028879;
double r3028881 = r3028877 * r3028879;
double r3028882 = r3028880 + r3028881;
return r3028882;
}



Bits error versus re



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