\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 r61714 = 0.5;
double r61715 = re;
double r61716 = sin(r61715);
double r61717 = r61714 * r61716;
double r61718 = 0.0;
double r61719 = im;
double r61720 = r61718 - r61719;
double r61721 = exp(r61720);
double r61722 = exp(r61719);
double r61723 = r61721 + r61722;
double r61724 = r61717 * r61723;
return r61724;
}
double f(double re, double im) {
double r61725 = 0.5;
double r61726 = re;
double r61727 = sin(r61726);
double r61728 = r61725 * r61727;
double r61729 = 0.0;
double r61730 = im;
double r61731 = r61729 - r61730;
double r61732 = exp(r61731);
double r61733 = exp(r61730);
double r61734 = r61732 + r61733;
double r61735 = r61728 * r61734;
return r61735;
}



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))))