\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\frac{0.5 \cdot \cos re}{e^{im}} + \left(\left(0.5 \cdot \cos re\right) \cdot \sqrt{e^{im}}\right) \cdot \sqrt{e^{im}}double f(double re, double im) {
double r52793 = 0.5;
double r52794 = re;
double r52795 = cos(r52794);
double r52796 = r52793 * r52795;
double r52797 = im;
double r52798 = -r52797;
double r52799 = exp(r52798);
double r52800 = exp(r52797);
double r52801 = r52799 + r52800;
double r52802 = r52796 * r52801;
return r52802;
}
double f(double re, double im) {
double r52803 = 0.5;
double r52804 = re;
double r52805 = cos(r52804);
double r52806 = r52803 * r52805;
double r52807 = im;
double r52808 = exp(r52807);
double r52809 = r52806 / r52808;
double r52810 = sqrt(r52808);
double r52811 = r52806 * r52810;
double r52812 = r52811 * r52810;
double r52813 = r52809 + r52812;
return r52813;
}



Bits error versus re



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