\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\left(e^{im} + e^{-im}\right) \cdot \left(0.5 \cdot \cos re\right)double f(double re, double im) {
double r1752523 = 0.5;
double r1752524 = re;
double r1752525 = cos(r1752524);
double r1752526 = r1752523 * r1752525;
double r1752527 = im;
double r1752528 = -r1752527;
double r1752529 = exp(r1752528);
double r1752530 = exp(r1752527);
double r1752531 = r1752529 + r1752530;
double r1752532 = r1752526 * r1752531;
return r1752532;
}
double f(double re, double im) {
double r1752533 = im;
double r1752534 = exp(r1752533);
double r1752535 = -r1752533;
double r1752536 = exp(r1752535);
double r1752537 = r1752534 + r1752536;
double r1752538 = 0.5;
double r1752539 = re;
double r1752540 = cos(r1752539);
double r1752541 = r1752538 * r1752540;
double r1752542 = r1752537 * r1752541;
return r1752542;
}



Bits error versus re



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