\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\frac{0.5 \cdot \cos re}{e^{im}} + \left(0.5 \cdot \cos re\right) \cdot e^{im}double f(double re, double im) {
double r32123 = 0.5;
double r32124 = re;
double r32125 = cos(r32124);
double r32126 = r32123 * r32125;
double r32127 = im;
double r32128 = -r32127;
double r32129 = exp(r32128);
double r32130 = exp(r32127);
double r32131 = r32129 + r32130;
double r32132 = r32126 * r32131;
return r32132;
}
double f(double re, double im) {
double r32133 = 0.5;
double r32134 = re;
double r32135 = cos(r32134);
double r32136 = r32133 * r32135;
double r32137 = im;
double r32138 = exp(r32137);
double r32139 = r32136 / r32138;
double r32140 = r32136 * r32138;
double r32141 = r32139 + r32140;
return r32141;
}



Bits error versus re



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