\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{x \cdot \left(\frac{1}{3} \cdot \left(x \cdot x\right)\right) + \left({x}^{5} \cdot \frac{1}{60} + 2 \cdot x\right)}{2} \cdot \sin y i\right))double f(double x, double y) {
double r2115089 = x;
double r2115090 = exp(r2115089);
double r2115091 = -r2115089;
double r2115092 = exp(r2115091);
double r2115093 = r2115090 + r2115092;
double r2115094 = 2.0;
double r2115095 = r2115093 / r2115094;
double r2115096 = y;
double r2115097 = cos(r2115096);
double r2115098 = r2115095 * r2115097;
double r2115099 = r2115090 - r2115092;
double r2115100 = r2115099 / r2115094;
double r2115101 = sin(r2115096);
double r2115102 = r2115100 * r2115101;
double r2115103 = /* ERROR: no complex support in C */;
double r2115104 = /* ERROR: no complex support in C */;
return r2115104;
}
double f(double x, double y) {
double r2115105 = x;
double r2115106 = exp(r2115105);
double r2115107 = -r2115105;
double r2115108 = exp(r2115107);
double r2115109 = r2115106 + r2115108;
double r2115110 = 2.0;
double r2115111 = r2115109 / r2115110;
double r2115112 = y;
double r2115113 = cos(r2115112);
double r2115114 = r2115111 * r2115113;
double r2115115 = 0.3333333333333333;
double r2115116 = r2115105 * r2115105;
double r2115117 = r2115115 * r2115116;
double r2115118 = r2115105 * r2115117;
double r2115119 = 5.0;
double r2115120 = pow(r2115105, r2115119);
double r2115121 = 0.016666666666666666;
double r2115122 = r2115120 * r2115121;
double r2115123 = r2115110 * r2115105;
double r2115124 = r2115122 + r2115123;
double r2115125 = r2115118 + r2115124;
double r2115126 = r2115125 / r2115110;
double r2115127 = sin(r2115112);
double r2115128 = r2115126 * r2115127;
double r2115129 = /* ERROR: no complex support in C */;
double r2115130 = /* ERROR: no complex support in C */;
return r2115130;
}



Bits error versus x



Bits error versus y
Initial program 43.1
Taylor expanded around 0 0.8
Simplified0.8
rmApplied distribute-rgt-in0.8
Applied associate-+r+0.8
Final simplification0.8
herbie shell --seed 2019164
(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)))))