\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 r26360 = 0.5;
double r26361 = re;
double r26362 = cos(r26361);
double r26363 = r26360 * r26362;
double r26364 = im;
double r26365 = -r26364;
double r26366 = exp(r26365);
double r26367 = exp(r26364);
double r26368 = r26366 + r26367;
double r26369 = r26363 * r26368;
return r26369;
}
double f(double re, double im) {
double r26370 = 0.5;
double r26371 = re;
double r26372 = cos(r26371);
double r26373 = r26370 * r26372;
double r26374 = im;
double r26375 = -r26374;
double r26376 = exp(r26375);
double r26377 = exp(r26374);
double r26378 = r26376 + r26377;
double r26379 = r26373 * r26378;
return r26379;
}



Bits error versus re



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