\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 r23481 = 0.5;
double r23482 = re;
double r23483 = sin(r23482);
double r23484 = r23481 * r23483;
double r23485 = 0.0;
double r23486 = im;
double r23487 = r23485 - r23486;
double r23488 = exp(r23487);
double r23489 = exp(r23486);
double r23490 = r23488 + r23489;
double r23491 = r23484 * r23490;
return r23491;
}
double f(double re, double im) {
double r23492 = 0.5;
double r23493 = re;
double r23494 = sin(r23493);
double r23495 = r23492 * r23494;
double r23496 = 0.0;
double r23497 = exp(r23496);
double r23498 = r23495 * r23497;
double r23499 = im;
double r23500 = exp(r23499);
double r23501 = r23498 / r23500;
double r23502 = r23495 * r23500;
double r23503 = r23501 + r23502;
return r23503;
}



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 +o rules:numerics
(FPCore (re im)
:name "math.sin on complex, real part"
:precision binary64
(* (* 0.5 (sin re)) (+ (exp (- 0.0 im)) (exp im))))