\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 r27782 = 0.5;
double r27783 = re;
double r27784 = cos(r27783);
double r27785 = r27782 * r27784;
double r27786 = im;
double r27787 = -r27786;
double r27788 = exp(r27787);
double r27789 = exp(r27786);
double r27790 = r27788 + r27789;
double r27791 = r27785 * r27790;
return r27791;
}
double f(double re, double im) {
double r27792 = 0.5;
double r27793 = re;
double r27794 = cos(r27793);
double r27795 = r27792 * r27794;
double r27796 = im;
double r27797 = -r27796;
double r27798 = exp(r27797);
double r27799 = exp(r27796);
double r27800 = r27798 + r27799;
double r27801 = r27795 * r27800;
return r27801;
}



Bits error versus re



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