\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\left(\cos y \cdot \sqrt{\frac{e^{x} + e^{-x}}{2}}\right) \cdot \sqrt{\frac{e^{x} + e^{-x}}{2}}double f(double x, double y) {
double r22689 = x;
double r22690 = exp(r22689);
double r22691 = -r22689;
double r22692 = exp(r22691);
double r22693 = r22690 + r22692;
double r22694 = 2.0;
double r22695 = r22693 / r22694;
double r22696 = y;
double r22697 = cos(r22696);
double r22698 = r22695 * r22697;
double r22699 = r22690 - r22692;
double r22700 = r22699 / r22694;
double r22701 = sin(r22696);
double r22702 = r22700 * r22701;
double r22703 = /* ERROR: no complex support in C */;
double r22704 = /* ERROR: no complex support in C */;
return r22704;
}
double f(double x, double y) {
double r22705 = y;
double r22706 = cos(r22705);
double r22707 = x;
double r22708 = exp(r22707);
double r22709 = -r22707;
double r22710 = exp(r22709);
double r22711 = r22708 + r22710;
double r22712 = 2.0;
double r22713 = r22711 / r22712;
double r22714 = sqrt(r22713);
double r22715 = r22706 * r22714;
double r22716 = r22715 * r22714;
return r22716;
}



Bits error versus x



Bits error versus y
Initial program 0.0
Simplified0.0
rmApplied add-sqr-sqrt0.0
Applied associate-*r*0.0
Final simplification0.0
herbie shell --seed 2020047
(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)))))