\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))double f(double x, double y) {
double r1313509 = x;
double r1313510 = exp(r1313509);
double r1313511 = -r1313509;
double r1313512 = exp(r1313511);
double r1313513 = r1313510 + r1313512;
double r1313514 = 2.0;
double r1313515 = r1313513 / r1313514;
double r1313516 = y;
double r1313517 = cos(r1313516);
double r1313518 = r1313515 * r1313517;
double r1313519 = r1313510 - r1313512;
double r1313520 = r1313519 / r1313514;
double r1313521 = sin(r1313516);
double r1313522 = r1313520 * r1313521;
double r1313523 = /* ERROR: no complex support in C */;
double r1313524 = /* ERROR: no complex support in C */;
return r1313524;
}
double f(double x, double y) {
double r1313525 = x;
double r1313526 = exp(r1313525);
double r1313527 = -r1313525;
double r1313528 = exp(r1313527);
double r1313529 = r1313526 + r1313528;
double r1313530 = 2.0;
double r1313531 = r1313529 / r1313530;
double r1313532 = y;
double r1313533 = cos(r1313532);
double r1313534 = r1313531 * r1313533;
double r1313535 = r1313526 - r1313528;
double r1313536 = r1313535 / r1313530;
double r1313537 = sin(r1313532);
double r1313538 = r1313536 * r1313537;
double r1313539 = /* ERROR: no complex support in C */;
double r1313540 = /* ERROR: no complex support in C */;
return r1313540;
}



Bits error versus x



Bits error versus y
Initial program 0.0
Final simplification0.0
herbie shell --seed 2019163 +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)))))