\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\frac{{x}^{2} + \left(\frac{1}{12} \cdot {x}^{4} + 2\right)}{2} \cdot \cos ydouble f(double x, double y) {
double r29174 = x;
double r29175 = exp(r29174);
double r29176 = -r29174;
double r29177 = exp(r29176);
double r29178 = r29175 + r29177;
double r29179 = 2.0;
double r29180 = r29178 / r29179;
double r29181 = y;
double r29182 = cos(r29181);
double r29183 = r29180 * r29182;
double r29184 = r29175 - r29177;
double r29185 = r29184 / r29179;
double r29186 = sin(r29181);
double r29187 = r29185 * r29186;
double r29188 = /* ERROR: no complex support in C */;
double r29189 = /* ERROR: no complex support in C */;
return r29189;
}
double f(double x, double y) {
double r29190 = x;
double r29191 = 2.0;
double r29192 = pow(r29190, r29191);
double r29193 = 0.08333333333333333;
double r29194 = 4.0;
double r29195 = pow(r29190, r29194);
double r29196 = r29193 * r29195;
double r29197 = r29196 + r29191;
double r29198 = r29192 + r29197;
double r29199 = 2.0;
double r29200 = r29198 / r29199;
double r29201 = y;
double r29202 = cos(r29201);
double r29203 = r29200 * r29202;
return r29203;
}



Bits error versus x



Bits error versus y
Initial program 0.0
Simplified0.0
Taylor expanded around 0 0.7
Final simplification0.7
herbie shell --seed 2020057
(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)))))