\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 \left(x \cdot \left(\left(x \cdot x\right) \cdot \left(x \cdot x\right)\right)\right) + \left(2 \cdot x + \left(x \cdot x\right) \cdot \left(\frac{1}{3} \cdot x\right)\right)}{2} \cdot \sin y i\right))double f(double x, double y) {
double r2214344 = x;
double r2214345 = exp(r2214344);
double r2214346 = -r2214344;
double r2214347 = exp(r2214346);
double r2214348 = r2214345 + r2214347;
double r2214349 = 2.0;
double r2214350 = r2214348 / r2214349;
double r2214351 = y;
double r2214352 = cos(r2214351);
double r2214353 = r2214350 * r2214352;
double r2214354 = r2214345 - r2214347;
double r2214355 = r2214354 / r2214349;
double r2214356 = sin(r2214351);
double r2214357 = r2214355 * r2214356;
double r2214358 = /* ERROR: no complex support in C */;
double r2214359 = /* ERROR: no complex support in C */;
return r2214359;
}
double f(double x, double y) {
double r2214360 = x;
double r2214361 = exp(r2214360);
double r2214362 = -r2214360;
double r2214363 = exp(r2214362);
double r2214364 = r2214361 + r2214363;
double r2214365 = 2.0;
double r2214366 = r2214364 / r2214365;
double r2214367 = y;
double r2214368 = cos(r2214367);
double r2214369 = r2214366 * r2214368;
double r2214370 = 0.016666666666666666;
double r2214371 = r2214360 * r2214360;
double r2214372 = r2214371 * r2214371;
double r2214373 = r2214360 * r2214372;
double r2214374 = r2214370 * r2214373;
double r2214375 = r2214365 * r2214360;
double r2214376 = 0.3333333333333333;
double r2214377 = r2214376 * r2214360;
double r2214378 = r2214371 * r2214377;
double r2214379 = r2214375 + r2214378;
double r2214380 = r2214374 + r2214379;
double r2214381 = r2214380 / r2214365;
double r2214382 = sin(r2214367);
double r2214383 = r2214381 * r2214382;
double r2214384 = /* ERROR: no complex support in C */;
double r2214385 = /* ERROR: no complex support in C */;
return r2214385;
}



Bits error versus x



Bits error versus y
Initial program 43.4
Taylor expanded around 0 0.7
Simplified0.7
rmApplied *-un-lft-identity0.7
Applied associate-*r*0.7
Simplified0.7
Final simplification0.7
herbie shell --seed 2019135
(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)))))