\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\frac{e^{x} + e^{-x}}{2} \cdot \cos ydouble f(double x, double y) {
double r19215 = x;
double r19216 = exp(r19215);
double r19217 = -r19215;
double r19218 = exp(r19217);
double r19219 = r19216 + r19218;
double r19220 = 2.0;
double r19221 = r19219 / r19220;
double r19222 = y;
double r19223 = cos(r19222);
double r19224 = r19221 * r19223;
double r19225 = r19216 - r19218;
double r19226 = r19225 / r19220;
double r19227 = sin(r19222);
double r19228 = r19226 * r19227;
double r19229 = /* ERROR: no complex support in C */;
double r19230 = /* ERROR: no complex support in C */;
return r19230;
}
double f(double x, double y) {
double r19231 = x;
double r19232 = exp(r19231);
double r19233 = -r19231;
double r19234 = exp(r19233);
double r19235 = r19232 + r19234;
double r19236 = 2.0;
double r19237 = r19235 / r19236;
double r19238 = y;
double r19239 = cos(r19238);
double r19240 = r19237 * r19239;
return r19240;
}



Bits error versus x



Bits error versus y
Initial program 0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020027 +o rules:numerics
(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)))))