\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 r48344 = 0.5;
double r48345 = re;
double r48346 = cos(r48345);
double r48347 = r48344 * r48346;
double r48348 = im;
double r48349 = -r48348;
double r48350 = exp(r48349);
double r48351 = exp(r48348);
double r48352 = r48350 + r48351;
double r48353 = r48347 * r48352;
return r48353;
}
double f(double re, double im) {
double r48354 = 0.5;
double r48355 = re;
double r48356 = cos(r48355);
double r48357 = r48354 * r48356;
double r48358 = im;
double r48359 = -r48358;
double r48360 = exp(r48359);
double r48361 = exp(r48358);
double r48362 = r48360 + r48361;
double r48363 = r48357 * r48362;
return r48363;
}



Bits error versus re



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