\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)double f(double re, double im) {
double r26261 = 0.5;
double r26262 = re;
double r26263 = cos(r26262);
double r26264 = r26261 * r26263;
double r26265 = im;
double r26266 = -r26265;
double r26267 = exp(r26266);
double r26268 = exp(r26265);
double r26269 = r26267 + r26268;
double r26270 = r26264 * r26269;
return r26270;
}
double f(double re, double im) {
double r26271 = 0.5;
double r26272 = re;
double r26273 = cos(r26272);
double r26274 = r26271 * r26273;
double r26275 = im;
double r26276 = -r26275;
double r26277 = exp(r26276);
double r26278 = exp(r26275);
double r26279 = r26277 + r26278;
double r26280 = r26274 * r26279;
return r26280;
}



Bits error versus re



Bits error versus im
Results
Initial program 0.0
Final simplification0.0
herbie shell --seed 2019235 +o rules:numerics
(FPCore (re im)
:name "math.cos on complex, real part"
:precision binary64
(* (* 0.5 (cos re)) (+ (exp (- im)) (exp im))))