\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\sqrt{1} \cdot \left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y\right)double f(double x, double y) {
double r30066 = x;
double r30067 = exp(r30066);
double r30068 = -r30066;
double r30069 = exp(r30068);
double r30070 = r30067 + r30069;
double r30071 = 2.0;
double r30072 = r30070 / r30071;
double r30073 = y;
double r30074 = cos(r30073);
double r30075 = r30072 * r30074;
double r30076 = r30067 - r30069;
double r30077 = r30076 / r30071;
double r30078 = sin(r30073);
double r30079 = r30077 * r30078;
double r30080 = /* ERROR: no complex support in C */;
double r30081 = /* ERROR: no complex support in C */;
return r30081;
}
double f(double x, double y) {
double r30082 = 1.0;
double r30083 = sqrt(r30082);
double r30084 = x;
double r30085 = exp(r30084);
double r30086 = -r30084;
double r30087 = exp(r30086);
double r30088 = r30085 + r30087;
double r30089 = 2.0;
double r30090 = r30088 / r30089;
double r30091 = y;
double r30092 = cos(r30091);
double r30093 = r30090 * r30092;
double r30094 = r30083 * r30093;
return r30094;
}



Bits error versus x



Bits error versus y
Initial program 0.0
Simplified0.0
rmApplied add-sqr-sqrt0.0
Applied associate-*l*0.0
rmApplied *-un-lft-identity0.0
Applied sqrt-prod0.0
Applied associate-*l*0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2019352
(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)))))