\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{\mathsf{fma}\left(\frac{1}{3}, {x}^{3}, \mathsf{fma}\left(\frac{1}{60}, {x}^{5}, 2 \cdot x\right)\right)}{2} \cdot \sin y i\right))double f(double x, double y) {
double r62126 = x;
double r62127 = exp(r62126);
double r62128 = -r62126;
double r62129 = exp(r62128);
double r62130 = r62127 + r62129;
double r62131 = 2.0;
double r62132 = r62130 / r62131;
double r62133 = y;
double r62134 = cos(r62133);
double r62135 = r62132 * r62134;
double r62136 = r62127 - r62129;
double r62137 = r62136 / r62131;
double r62138 = sin(r62133);
double r62139 = r62137 * r62138;
double r62140 = /* ERROR: no complex support in C */;
double r62141 = /* ERROR: no complex support in C */;
return r62141;
}
double f(double x, double y) {
double r62142 = x;
double r62143 = exp(r62142);
double r62144 = -r62142;
double r62145 = exp(r62144);
double r62146 = r62143 + r62145;
double r62147 = 2.0;
double r62148 = r62146 / r62147;
double r62149 = y;
double r62150 = cos(r62149);
double r62151 = r62148 * r62150;
double r62152 = 0.3333333333333333;
double r62153 = 3.0;
double r62154 = pow(r62142, r62153);
double r62155 = 0.016666666666666666;
double r62156 = 5.0;
double r62157 = pow(r62142, r62156);
double r62158 = 2.0;
double r62159 = r62158 * r62142;
double r62160 = fma(r62155, r62157, r62159);
double r62161 = fma(r62152, r62154, r62160);
double r62162 = r62161 / r62147;
double r62163 = sin(r62149);
double r62164 = r62162 * r62163;
double r62165 = /* ERROR: no complex support in C */;
double r62166 = /* ERROR: no complex support in C */;
return r62166;
}



Bits error versus x



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