\left(0.5 \cdot \sin re\right) \cdot \left(e^{0.0 - im} + e^{im}\right)\frac{\left(0.5 \cdot \sin re\right) \cdot e^{0.0}}{e^{im}} + \left(0.5 \cdot \sin re\right) \cdot e^{im}double f(double re, double im) {
double r29615 = 0.5;
double r29616 = re;
double r29617 = sin(r29616);
double r29618 = r29615 * r29617;
double r29619 = 0.0;
double r29620 = im;
double r29621 = r29619 - r29620;
double r29622 = exp(r29621);
double r29623 = exp(r29620);
double r29624 = r29622 + r29623;
double r29625 = r29618 * r29624;
return r29625;
}
double f(double re, double im) {
double r29626 = 0.5;
double r29627 = re;
double r29628 = sin(r29627);
double r29629 = r29626 * r29628;
double r29630 = 0.0;
double r29631 = exp(r29630);
double r29632 = r29629 * r29631;
double r29633 = im;
double r29634 = exp(r29633);
double r29635 = r29632 / r29634;
double r29636 = r29629 * r29634;
double r29637 = r29635 + r29636;
return r29637;
}



Bits error versus re



Bits error versus im
Results
Initial program 0.0
rmApplied distribute-lft-in0.0
rmApplied exp-diff0.0
Applied associate-*r/0.0
Final simplification0.0
herbie shell --seed 2020001
(FPCore (re im)
:name "math.sin on complex, real part"
:precision binary64
(* (* 0.5 (sin re)) (+ (exp (- 0.0 im)) (exp im))))