\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\frac{e^{x} + e^{-x}}{2} \cdot \cos ydouble f(double x, double y) {
double r50355 = x;
double r50356 = exp(r50355);
double r50357 = -r50355;
double r50358 = exp(r50357);
double r50359 = r50356 + r50358;
double r50360 = 2.0;
double r50361 = r50359 / r50360;
double r50362 = y;
double r50363 = cos(r50362);
double r50364 = r50361 * r50363;
double r50365 = r50356 - r50358;
double r50366 = r50365 / r50360;
double r50367 = sin(r50362);
double r50368 = r50366 * r50367;
double r50369 = /* ERROR: no complex support in C */;
double r50370 = /* ERROR: no complex support in C */;
return r50370;
}
double f(double x, double y) {
double r50371 = x;
double r50372 = exp(r50371);
double r50373 = -r50371;
double r50374 = exp(r50373);
double r50375 = r50372 + r50374;
double r50376 = 2.0;
double r50377 = r50375 / r50376;
double r50378 = y;
double r50379 = cos(r50378);
double r50380 = r50377 * r50379;
return r50380;
}



Bits error versus x



Bits error versus y
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020020 +o rules:numerics
(FPCore (x y)
:name "Euler formula real part (p55)"
:precision binary64
(re (complex (* (/ (+ (exp x) (exp (- x))) 2) (cos y)) (* (/ (- (exp x) (exp (- x))) 2) (sin y)))))