\Im(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\Im(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{\frac{1}{60} \cdot {x}^{5} + \left(2 \cdot x + \frac{1}{3} \cdot \left(\left(x \cdot x\right) \cdot x\right)\right)}{2} \cdot \sin y i\right))double f(double x, double y) {
double r2162205 = x;
double r2162206 = exp(r2162205);
double r2162207 = -r2162205;
double r2162208 = exp(r2162207);
double r2162209 = r2162206 + r2162208;
double r2162210 = 2.0;
double r2162211 = r2162209 / r2162210;
double r2162212 = y;
double r2162213 = cos(r2162212);
double r2162214 = r2162211 * r2162213;
double r2162215 = r2162206 - r2162208;
double r2162216 = r2162215 / r2162210;
double r2162217 = sin(r2162212);
double r2162218 = r2162216 * r2162217;
double r2162219 = /* ERROR: no complex support in C */;
double r2162220 = /* ERROR: no complex support in C */;
return r2162220;
}
double f(double x, double y) {
double r2162221 = x;
double r2162222 = exp(r2162221);
double r2162223 = -r2162221;
double r2162224 = exp(r2162223);
double r2162225 = r2162222 + r2162224;
double r2162226 = 2.0;
double r2162227 = r2162225 / r2162226;
double r2162228 = y;
double r2162229 = cos(r2162228);
double r2162230 = r2162227 * r2162229;
double r2162231 = 0.016666666666666666;
double r2162232 = 5.0;
double r2162233 = pow(r2162221, r2162232);
double r2162234 = r2162231 * r2162233;
double r2162235 = r2162226 * r2162221;
double r2162236 = 0.3333333333333333;
double r2162237 = r2162221 * r2162221;
double r2162238 = r2162237 * r2162221;
double r2162239 = r2162236 * r2162238;
double r2162240 = r2162235 + r2162239;
double r2162241 = r2162234 + r2162240;
double r2162242 = r2162241 / r2162226;
double r2162243 = sin(r2162228);
double r2162244 = r2162242 * r2162243;
double r2162245 = /* ERROR: no complex support in C */;
double r2162246 = /* ERROR: no complex support in C */;
return r2162246;
}



Bits error versus x



Bits error versus y
Initial program 43.1
Taylor expanded around 0 0.8
Simplified0.8
Final simplification0.8
herbie shell --seed 2019133
(FPCore (x y)
:name "Euler formula imaginary part (p55)"
(im (complex (* (/ (+ (exp x) (exp (- x))) 2) (cos y)) (* (/ (- (exp x) (exp (- x))) 2) (sin y)))))