\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 r89003 = 0.5;
double r89004 = re;
double r89005 = cos(r89004);
double r89006 = r89003 * r89005;
double r89007 = im;
double r89008 = -r89007;
double r89009 = exp(r89008);
double r89010 = exp(r89007);
double r89011 = r89009 + r89010;
double r89012 = r89006 * r89011;
return r89012;
}
double f(double re, double im) {
double r89013 = 0.5;
double r89014 = re;
double r89015 = cos(r89014);
double r89016 = r89013 * r89015;
double r89017 = im;
double r89018 = -r89017;
double r89019 = exp(r89018);
double r89020 = exp(r89017);
double r89021 = r89019 + r89020;
double r89022 = r89016 * r89021;
return r89022;
}



Bits error versus re



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