\left(0.5 \cdot \cos re\right) \cdot \left(e^{-im} + e^{im}\right)\left(\frac{1}{2} \cdot \cos re\right) \cdot \frac{e^{im + im} + 1}{e^{im}}double f(double re, double im) {
double r46643 = 0.5;
double r46644 = re;
double r46645 = cos(r46644);
double r46646 = r46643 * r46645;
double r46647 = im;
double r46648 = -r46647;
double r46649 = exp(r46648);
double r46650 = exp(r46647);
double r46651 = r46649 + r46650;
double r46652 = r46646 * r46651;
return r46652;
}
double f(double re, double im) {
double r46653 = 1.0;
double r46654 = 2.0;
double r46655 = r46653 / r46654;
double r46656 = re;
double r46657 = cos(r46656);
double r46658 = r46655 * r46657;
double r46659 = im;
double r46660 = r46659 + r46659;
double r46661 = exp(r46660);
double r46662 = 1.0;
double r46663 = r46661 + r46662;
double r46664 = exp(r46659);
double r46665 = r46663 / r46664;
double r46666 = r46658 * r46665;
return r46666;
}



Bits error versus re



Bits error versus im
Results
Initial program 0.0
rmApplied distribute-lft-in0.0
Simplified0.0
Simplified0.0
rmApplied associate-*l/0.0
Applied associate-*l/0.0
Applied frac-add0.1
Final simplification0.1
herbie shell --seed 2019303
(FPCore (re im)
:name "math.cos on complex, real part"
:precision binary64
(* (* 0.5 (cos re)) (+ (exp (- im)) (exp im))))