\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 + \frac{1}{3} \cdot \left(x \cdot x\right)\right) \cdot x}{2} \cdot \sin y i\right))double f(double x, double y) {
double r1792943 = x;
double r1792944 = exp(r1792943);
double r1792945 = -r1792943;
double r1792946 = exp(r1792945);
double r1792947 = r1792944 + r1792946;
double r1792948 = 2.0;
double r1792949 = r1792947 / r1792948;
double r1792950 = y;
double r1792951 = cos(r1792950);
double r1792952 = r1792949 * r1792951;
double r1792953 = r1792944 - r1792946;
double r1792954 = r1792953 / r1792948;
double r1792955 = sin(r1792950);
double r1792956 = r1792954 * r1792955;
double r1792957 = /* ERROR: no complex support in C */;
double r1792958 = /* ERROR: no complex support in C */;
return r1792958;
}
double f(double x, double y) {
double r1792959 = x;
double r1792960 = exp(r1792959);
double r1792961 = -r1792959;
double r1792962 = exp(r1792961);
double r1792963 = r1792960 + r1792962;
double r1792964 = 2.0;
double r1792965 = r1792963 / r1792964;
double r1792966 = y;
double r1792967 = cos(r1792966);
double r1792968 = r1792965 * r1792967;
double r1792969 = 0.016666666666666666;
double r1792970 = 5.0;
double r1792971 = pow(r1792959, r1792970);
double r1792972 = r1792969 * r1792971;
double r1792973 = 0.3333333333333333;
double r1792974 = r1792959 * r1792959;
double r1792975 = r1792973 * r1792974;
double r1792976 = r1792964 + r1792975;
double r1792977 = r1792976 * r1792959;
double r1792978 = r1792972 + r1792977;
double r1792979 = r1792978 / r1792964;
double r1792980 = sin(r1792966);
double r1792981 = r1792979 * r1792980;
double r1792982 = /* ERROR: no complex support in C */;
double r1792983 = /* ERROR: no complex support in C */;
return r1792983;
}



Bits error versus x



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