\Re(\left(\frac{e^{x} + e^{-x}}{2} \cdot \cos y + \frac{e^{x} - e^{-x}}{2} \cdot \sin y i\right))\frac{\cos y}{\frac{2}{e^{-1 \cdot x} + e^{x}}}double f(double x, double y) {
double r35011 = x;
double r35012 = exp(r35011);
double r35013 = -r35011;
double r35014 = exp(r35013);
double r35015 = r35012 + r35014;
double r35016 = 2.0;
double r35017 = r35015 / r35016;
double r35018 = y;
double r35019 = cos(r35018);
double r35020 = r35017 * r35019;
double r35021 = r35012 - r35014;
double r35022 = r35021 / r35016;
double r35023 = sin(r35018);
double r35024 = r35022 * r35023;
double r35025 = /* ERROR: no complex support in C */;
double r35026 = /* ERROR: no complex support in C */;
return r35026;
}
double f(double x, double y) {
double r35027 = y;
double r35028 = cos(r35027);
double r35029 = 2.0;
double r35030 = -1.0;
double r35031 = x;
double r35032 = r35030 * r35031;
double r35033 = exp(r35032);
double r35034 = exp(r35031);
double r35035 = r35033 + r35034;
double r35036 = r35029 / r35035;
double r35037 = r35028 / r35036;
return r35037;
}



Bits error versus x



Bits error versus y
Initial program 0.0
Simplified0.0
rmApplied add-sqr-sqrt1.5
Applied add-sqr-sqrt0.0
Applied times-frac0.0
Applied associate-*l*0.0
rmApplied pow10.0
Applied pow10.0
Applied pow-prod-down0.0
Applied pow10.0
Applied pow-prod-down0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020056 +o rules:numerics
(FPCore (x y)
:name "Euler formula real part (p55)"
:precision binary64
(re (complex (* (/ (+ (exp x) (exp (- x))) 2) (cos y)) (* (/ (- (exp x) (exp (- x))) 2) (sin y)))))