\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 r864741 = x;
double r864742 = exp(r864741);
double r864743 = -r864741;
double r864744 = exp(r864743);
double r864745 = r864742 + r864744;
double r864746 = 2.0;
double r864747 = r864745 / r864746;
double r864748 = y;
double r864749 = cos(r864748);
double r864750 = r864747 * r864749;
double r864751 = r864742 - r864744;
double r864752 = r864751 / r864746;
double r864753 = sin(r864748);
double r864754 = r864752 * r864753;
double r864755 = /* ERROR: no complex support in C */;
double r864756 = /* ERROR: no complex support in C */;
return r864756;
}
double f(double x, double y) {
double r864757 = x;
double r864758 = exp(r864757);
double r864759 = -r864757;
double r864760 = exp(r864759);
double r864761 = r864758 + r864760;
double r864762 = 2.0;
double r864763 = r864761 / r864762;
double r864764 = y;
double r864765 = cos(r864764);
double r864766 = r864763 * r864765;
double r864767 = r864758 - r864760;
double r864768 = r864767 / r864762;
double r864769 = sin(r864764);
double r864770 = r864768 * r864769;
double r864771 = /* ERROR: no complex support in C */;
double r864772 = /* ERROR: no complex support in C */;
return r864772;
}



Bits error versus x



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