double f(double x, double y) {
double r957358 = x;
double r957359 = exp(r957358);
double r957360 = -r957358;
double r957361 = exp(r957360);
double r957362 = r957359 + r957361;
double r957363 = 2.0;
double r957364 = r957362 / r957363;
double r957365 = y;
double r957366 = cos(r957365);
double r957367 = r957364 * r957366;
double r957368 = r957359 - r957361;
double r957369 = r957368 / r957363;
double r957370 = sin(r957365);
double r957371 = r957369 * r957370;
double r957372 = /* ERROR: no complex support in C */;
double r957373 = /* ERROR: no complex support in C */;
return r957373;
}
double f(double x, double y) {
double r957374 = x;
double r957375 = exp(r957374);
double r957376 = -r957374;
double r957377 = exp(r957376);
double r957378 = r957375 + r957377;
double r957379 = 2.0;
double r957380 = r957378 / r957379;
double r957381 = y;
double r957382 = cos(r957381);
double r957383 = r957380 * r957382;
double r957384 = r957375 - r957377;
double r957385 = r957384 / r957379;
double r957386 = sin(r957381);
double r957387 = r957385 * r957386;
double r957388 = /* ERROR: no complex support in C */;
double r957389 = /* ERROR: no complex support in C */;
return r957389;
}
\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))


Bits error versus x



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