\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\left(0.5 \cdot \cos re\right) \cdot e^{im} + \frac{\cos re}{e^{im}} \cdot 0.5double f(double re, double im) {
double r2037661 = 0.5;
double r2037662 = re;
double r2037663 = cos(r2037662);
double r2037664 = r2037661 * r2037663;
double r2037665 = im;
double r2037666 = -r2037665;
double r2037667 = exp(r2037666);
double r2037668 = exp(r2037665);
double r2037669 = r2037667 + r2037668;
double r2037670 = r2037664 * r2037669;
return r2037670;
}
double f(double re, double im) {
double r2037671 = 0.5;
double r2037672 = re;
double r2037673 = cos(r2037672);
double r2037674 = r2037671 * r2037673;
double r2037675 = im;
double r2037676 = exp(r2037675);
double r2037677 = r2037674 * r2037676;
double r2037678 = r2037673 / r2037676;
double r2037679 = r2037678 * r2037671;
double r2037680 = r2037677 + r2037679;
return r2037680;
}



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 2019158 +o rules:numerics
(FPCore (re im)
:name "math.cos on complex, real part"
(* (* 0.5 (cos re)) (+ (exp (- im)) (exp im))))